6

メールで送信されたリンクを開く Android アプリがあります。ただし、特定のWebサイトへのリンクのみを開きたいです。youTube リンクを開くと、ブラウザーで開くか、youTube アプリで開くかを尋ねるダイアログがユーザーに提供されることを知っているので、これが目的です。Android マニフェスト ファイルには、次のインテント フィルターがあります。

    <activity android:name=".MyApp"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.BROWSABLE"/>
            <data android:scheme="http"
                  android:host="mySite.com" />

        </intent-filter>
    </activity>

次に、意図を処理するために、onCreate に次の行があります。

if (getIntent().getCategories().contains("android.intent.category.BROWSABLE")){...}

問題は、http://mySite.com#12345などのリンクがこの方法で開かないことです。私は何を間違っていますか?

4

1 に答える 1

6

答えは、@advantej が提案したように、デフォルト カテゴリを 2 番目のインテント フィルターに追加することでした。

于 2011-06-03T15:52:05.883 に答える