Преимущества Android на вкус


У меня есть несколько схем deeplink для разных вкусов приложений. У меня есть бэкэнд, который отправляет другую схему для каждого приложения. Если все они установлены на одном устройстве, все они смогут анализировать отправленную deeplink. Поэтому, когда все три установлены и вызывается deeplink для app2. Все приложения могут поймать его, но только app2 может правильно обработать его в приложении и должен быть единственным, кто может поймать его.

Вкусы, определенные в моем .gradle file

productFlavors {
    app1{
        applicationId "com.apps.app1"
    }
    app2{
        applicationId "com.apps.app2"
    }
    app3{
        applicationId "com.apps.app3"
    }
}

Намерение фильтр, который я использую, чтобы поймать deeplinks в моем манифесте.

<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>

Есть ли способ сделать deeplink улавливаемым только одним ароматом?

1 5

1 ответ:

Вы должны предоставить каждому продукту свой собственный файл манифеста, в котором вы можете указать отдельный шаблон URI для глубоких ссылок.

Вы можете обратиться к настроить варианты сборки и объедините несколько файлов Манифеста для получения подробной информации о том, как этого достичь, и больше информации о создании приложения для вкуса продукта.