1

特定のURLをクリックすると開くアプリを作成しました。明らかに私はこのようなものを持っています:

        <intent-filter>
        <data android:scheme="http" android:host="example.com"/>
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.BROWSABLE"/>
        <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

誰かがhttp://example.com/whatever/stuffのリンクをクリックするたびに、それはすべて素晴らしいことです...それは私のアプリを開きます。ただし、私のアプリ内で、いくつかの作業を行った後、suerをデフォルトのブラウザー(または、リンクをクリックしたときに使用していたブラウザー/ Webビュー)に戻したいと思います。私の問題は、ループを作成してしまうことです。

  1. ユーザーがリンクhttp://example.com/xxxをクリックすると、アプリが開きます。
  2. 私のアプリは処理を実行し、ユーザーを別のURLに送信したいと考えています。http://example.com/yyy
  3. 私のアプリが送信する意図は、最終的にはそれ自体(私のアプリ)に戻るだけです。

    Intent httpIntent = new Intent(Intent.ACTION_VIEW);
    String theNewURL = http://example.com/yyy;
    httpIntent.setData(Uri.parse(theNewURL));
    startActivity(httpIntent);
    

httpIntentアプリを再度呼び出す代わりに、デフォルトのブラウザー(またはユーザーが最初から来た場所)を使用するにはどうすればよいですか?

編集: http://example.comと同じ場所に行く自分のドメインの1つ(一種のエイリアスとして)のCNAMEレコードを作成することで、その場しのぎの方法で問題を解決することができました。 。ユーザーに別のURLが表示されるようになったため、問題が発生しますが、インテントを呼び出さないという点で機能します。(インテントについて話すとき、私は正しい言語を使用していますか?)

4

1 に答える 1

0
Intent HttpIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://example.com/yyy"));

startActivity(HttpIntent); 
于 2011-10-14T19:36:51.537 に答える