自定义方案的打开活动不适用于除Firefox以外的所有浏览器

时间:2016-05-02 11:50:13

标签: android deep-linking url-scheme

我有一个应用程序,其中我想通过自定义方案打开其中一个Activities。这是我在Manifest中的活动:

<activity
    android:name=".activity.ResetPasswordActivity">
    <intent-filter
        android:autoVerify="true">
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <category android:name="android.intent.category.BROWSABLE"/>
        <data android:scheme="monicaaa" android:host="reg"
            android:pathPrefix="/password/reset/confirm"/>
    </intent-filter>
</activity>

在iOs中,我只需点击Gmail中的链接即可打开应用中的特定屏幕:monicaaa://reg/password/reset/confirm/,但在Android中,我只能通过Firefox移动浏览器打开ResetPasswordActivity。它在Chrome中不起作用,在默认浏览器中无效。只是火狐。

我已经读过Google不再允许打开自定义方案,而是我必须这样写我的链接:

intent://reg/password/reset/confirm/#Intent;schema=monicaaa;package=com.monicalabbao.monicaaa;end

但它根本不适用于任何浏览器。

请告诉我我错过了什么,或者是否有现有的答案等等。谢谢!

2 个答案:

答案 0 :(得分:1)

您的链接中有一个非常小的印刷错误:您使用的是schema而不是scheme。

intent://reg/password/reset/confirm/#Intent;schema=monicaaa;package=com.monicalabbao.monicaaa;end

应该是

intent://reg/password/reset/confirm/#Intent;scheme=monicaaa;package=com.monicalabbao.monicaaa;end

答案 1 :(得分:1)

结果我必须使用http / https,就像这样:

https://reg/password/reset/confirm/

这使链接在Android Gmail中变得可点击,并且可以导致我的应用。