对于具有旧版本 Chrome 的设备,深层链接无法从 Chrome 自定义选项卡正常工作

2024-04-06

我从我的应用程序启动 Chrome 自定义选项卡。 Chrome 自定义选项卡中的页面显示一个按钮。单击该按钮会触发深层链接,如下所示myapp://show/screen?id=123。我对应的意图过滤器是这样的:

            <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="myapp"/>
                <data android:host="show"
                    android:path="/screen"/>
            </intent-filter>

Problem:当用户点击该按钮时,仅当 chrome 版本为最新或最新 74 时,它才会启动我的应用程序。.然而它不会在旧版本的 chrome 浏览器上触发我的应用程序,例如65 号。.


事实证明这是一个众所周知的问题。我正在得到一个Navigation is Blocked当我在浏览器中连接模拟器开发工具时出现控制台消息。如果应用程序是由 javascript 触发的,则 Google Chrome 不会允许深层链接打开该应用程序。它必须是用户发起的操作。就我而言,用户单击按钮后,在触发深度链接之前,在 ajax 调用后面会执行一系列操作。

作为解决方法,一旦单击按钮并且 Web 完成所有 ajax 调用,它就会重定向到new中间屏幕。该屏幕是用一个按钮创建的,供用户单击(继续)。单击此按钮后,深度链接成功重定向到应用程序。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对于具有旧版本 Chrome 的设备,深层链接无法从 Chrome 自定义选项卡正常工作 的相关文章

随机推荐