2016-06-16 6 views
3

これは単純なように見えるかもしれませんが、まだそれを行う方法を理解できません。ドメインと一致するインテントフィルタ(パスなし)

ユーザーがドメインURLをクリックしたときに私のアプリケーションを開く必要があります。 URLをパスのないドメイン(android:host)に一致させる必要があります。 example.comまたは私はそれが(スラッシュで)example.com/上で動作するように取得するが、私はスラッシュなしでURLをキャプチャすることはできません

をexample.com/:example.com

私はpathPatternを使用してみました/ *、それも動作しません。以下は

私のAndroidのマニフェストです:

<intent-filter> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 

    <data android:scheme="http" /> 
    <data android:scheme="https" /> 

    <data android:host="example.com" /> 
    <data android:host="www.example.com" /> 

    <data android:pathPattern="/*" /> 
    <data android:path="/" /> 
</intent-filter> 

単に "/" 私はとか、スラッシュを終了せずにURLと一致したい、と言います。 http://example.com http://example.com/

答えて

-1

複数のデータタグは必要ありません。この場合は1つだけ必要です。各データタグは、スキーム、ホスト、パス、パスパターンなどを持つことができます。スキームがない場合、残りは無視されます。ホスト(スキーム)がない場合、パス属性は無視されます。あなたが欲しいものを行うための正しい方法は

<data android:scheme="http" android:host="example.com" />

であり、これはあなたが必要とする必要があるすべてです。 Docs

+0

これは機能しません。パス引数がない場合、 'http:// example.com /'ではなく 'http:// example.com /'のみが一致します( 'adb shell start'でテスト) –

関連する問題