3

我正在尝试使用 Marshmallow 版本中引入的深度链接站点和应用程序的最后一个默认处理功能。我已经完成了三个步骤,如此处所述(https://developer.android.com/training/app-links/index.html

  1. 我在我的 apk 中创建了意图处理程序

            <data android:scheme="http"
                android:path="/cat.html"
                android:host="kino.tryremember.ru"/>
        </intent-filter>
    </activity>
    <activity
        android:name=".DogActivity"
        android:exported="true"
        android:launchMode="singleTop">
        <intent-filter
            android:label="@string/app_name"
            android:autoVerify="true"
            tools:ignore="UnusedAttribute">
            <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"
                android:path="/dog.html"
                android:host="kino.tryremember.ru"/>
        </intent-filter>
    </activity>
    
  2. 我在我的测试网站上添加了 assetslink json 文件(https://kino.tryremember.ru/.well-known/assetlinks.json

当我注意到我的应用程序处理网站链接时,例如,当我在 chrome 中单击谷歌搜索中的搜索结果链接时,它会给我选择器对话框,但正如文档(上面的链接)中所述,实际上会自动检测默认处理程序我的应用程序将是默认处理程序,因为我已经完成了所有条件。

但是在安装过程中,我可以在 logcat 中看到类似的东西

08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:Verification result: checking for a statement with source a <
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:   a: "https://kino.tryremember.ru"
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier: >
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier: , relation delegate_permission/common.handle_all_urls, and target b <
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:   a: "com.busylee.appindexingexample"
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:   b <
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:     a: "A7:93:BA:D8:DD:ED:F4:40:08:7B:C7:43:49:60:C3:4F:31:34:54:2F:58:AC:BE:D9:16:CB:C5:B9:2B:A3:B9:CA"
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:   >
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier: >
08-10 17:39:24.821  4755 19896 I SingleHostAsyncVerifier:  --> false.
08-10 17:39:24.821  4755 19896 D SingleHostAsyncVerifier: Remaining verification failures before we've exhausted all certs: 0
08-10 17:39:24.821  4755 19896 D StatementServiceResFut: setResult on host: a <
08-10 17:39:24.821  4755 19896 D StatementServiceResFut:   a: "https://kino.tryremember.ru"
08-10 17:39:24.821  4755 19896 D StatementServiceResFut: >
08-10 17:39:24.821  4755 19896 D StatementServiceResFut: : false
08-10 17:39:24.821  4755 19895 I IntentFilterIntentSvc: Verification 3 complete. Success:false. Failed hosts:kino.tryremember.ru.

我不明白出了什么问题。有没有人知道我错过了什么或做错了什么?

4

1 回答 1

1

我发现我的失败。Content-Type application-json为文件添加标题是严格的.well-known/assetlinks.json,否则您将面临与我相同的错误。

于 2016-08-10T16:38:49.990 回答