1

我使用深度链接在启动时将参数传递给我的应用程序,如果尚未安装应用程序,则结合安装引用链接。链接是这个:

<a href='intent://www.myweb.com/guide?siteId=5682&theme=44&lang=fr#Intent;scheme=http;package=com.my.example;S.market_referrer=siteId%3D5682%26theme%3D44%26lang%3Dfr;end'>Click here</a>

在所有情况下一切正常,无论如何,当我单击链接时,我可以在 Android Monitor 中看到此消息:

W/cr_Chrome: Bad URI 'intent://www.myweb.com/audioguide?siteId=5682&theme=44&lang=fr#Intent;scheme=http;package=com.my.example;S.market_referrer=siteId%3D5682%26theme%3D44%26lang%3Dfr;end'

这里有什么问题?

深度链接似乎是一件非常秘密的事情,因为谷歌只谈论他们的活动......

编辑 意图过滤器

<application
    <service android:name=".MyFirebaseMessagingService">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

    <service android:name=".MyFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>
</application>
4

1 回答 1

0

免责声明:我的知识是从浏览器(意图、应用链接、通用链接)进行深度链接,远远少于应用配置。

这里的问题很可能是您缺少<action>and<category>字段。另外我认为即使http你也需要一个<data>部分,我可能是错的。

<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" android:host="www.myweb.com" android:path="/guide"/>
</intent-filter>

为了将来参考我遇到的案例

W/cr_Chrome: Bad URI 

autoVerify设置有关:<intent-filter android:autoVerify="true">这会导致意图被验证为“应用链接”。更多信息在这里:https ://developer.android.com/training/app-links/verify-site-associations.html#request-verify

于 2017-09-27T18:56:13.617 回答