android中的Branch.io deeplink即使在任何情况下也会打开游戏商店

android中的Branch.io deeplink即使在任何情况下也会打开游戏商店,android,branch.io,Android,Branch.io,不管怎样,当我单击使用branch.io创建的链接时,用户会被带到Google Play:-(( 这是清单中的相关活动: <activity android:name=".activities.DetailActivity" android:configChanges="keyboard|screenSize|orientation" android:screenOrientation="portrait"> <i

不管怎样,当我单击使用branch.io创建的链接时,用户会被带到Google Play:-((

这是清单中的相关活动:

<activity
        android:name=".activities.DetailActivity"
        android:configChanges="keyboard|screenSize|orientation"
        android:screenOrientation="portrait">
        <intent-filter>
            <data
                android:host="open"
                android:scheme="foo" />
            <action android:name="android.intent.action.VIEW" />

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

来自:

Chrome似乎一直带我去Google Play。为什么?

Chrome对直接打开应用程序非常挑剔 利用intent系统尝试打开应用程序,但出现故障 太容易访问Play Store。这里有三件事需要验证:

  • 确保测试生成的包名与分支设置中注册的包匹配,并与Google中的包匹配 玩

  • 确保测试生成的URI方案与分支设置匹配

  • 验证是否已在清单中添加正确的主机“打开”-请参阅

  • 我看到您使用了这个示例。请检查您的应用程序的包名是否为
    com.foo.inappbilling
    ,否则
    Branch.io
    链接将不会打开您的应用程序,并且将始终打开Google Play商店

    我能够重现您的问题,并通过设置正确的软件包名称解决了问题。如果使用Gradle,您可以直接从
    app/build.Gradle

    apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 23
        buildToolsVersion "23.0.1"
    
        defaultConfig {
            applicationId "com.foo.inappbilling"
            minSdkVersion 15
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
        }
        ...
    
    您是否已在方案定义上方的仪表板内部链接设置中选中(始终尝试打开应用程序)?
    还要确保您在清单中设置的方案没有“://”请参阅@inverce answer以了解更多说明。

    在仪表板设置/链接设置中/


    选择自定义URL并输入应用程序的包名

    要添加的一件事,“选择基于此URI方案的支持现有路由”如果是这样的话,foo://将打开+为$deeplink_路径指定的任何内容。因此,$deeplink路径将需要bar!@Mattia Maestrini:我们必须将
    host
    设置为
    open
    ,或者我们可以使用任何关键字吗?这根本不起作用,而且非常正确,因为包名不是URL。没有包名,就不可能操作在我的应用程序中,这个应用程序在url中运行得非常好