私は、さまざまなアプリの味のために複数の逆拡散スキームを持っています。私はアプリごとに異なるスキームを送信するバックエンドを持っています。それらのすべてが同じデバイスにインストールされている場合、それらのすべてが送信されたデトランスリンクを解析できます。つまり、3つすべてがインストールされ、app2のデープリンクが呼び出されたときです。すべてのアプリはそれをキャッチすることができますが、app2だけがアプリで適切に処理することができ、唯一のアプリしかキャッチできません。私.gradleファイルフレーバーごとのAndroidのデープリンク
productFlavors {
app1{
applicationId "com.apps.app1"
}
app2{
applicationId "com.apps.app2"
}
app3{
applicationId "com.apps.app3"
}
}
私は私のマニフェストでディープリンクをキャッチするために使用するインテントフィルタに定義されて
フレーバー。
<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:pathPrefix="/"
android:scheme="app1" />
<data
android:pathPrefix="/"
android:scheme="app2" />
<data
android:pathPrefix="/"
android:scheme="app3" />
</intent-filter>
ディープリンクを1つのフレーバでキャッチ可能にする方法はありますか?
また、android:scheme = "@ string/scheme" 'の文字列リソースを指定し、各フレーバーでそれを上書きすることもできますし、同様に' $ {scheme} 'のようなマニフェストマージンプレースホルダを使ってgradleで設定できます。 –