Javascript 如何在不阻塞的情况下从浏览器重定向到移动应用程序?

Javascript 如何在不阻塞的情况下从浏览器重定向到移动应用程序?,javascript,cordova,vue.js,quasar-framework,Javascript,Cordova,Vue.js,Quasar Framework,任务:有一个移动应用程序,其中执行了到浏览器的重定向。在浏览器中,用户按下另一个按钮并进入另一个浏览器页面。他一进入浏览器的第二页,几秒钟后,我需要自动将用户返回到移动应用程序。我的解决方案:因为应用程序是使用Cordova构建的,所以我使用了。根据文档创建、配置了AndroidManifest等android方案='MyColApp'。一切正常。问题:当我建立链接时 当用户点击它时,应用程序就会毫无问题地打开。但是我需要一个没有用户参与的自动重定向。我这样试过: mounted: func

任务:有一个移动应用程序,其中执行了到浏览器的重定向。在浏览器中,用户按下另一个按钮并进入另一个浏览器页面。他一进入浏览器的第二页,几秒钟后,我需要自动将用户返回到移动应用程序。我的解决方案:因为应用程序是使用Cordova构建的,所以我使用了。根据文档创建、配置了AndroidManifest等android方案='MyColApp'。一切正常。问题:当我建立链接时

当用户点击它时,应用程序就会毫无问题地打开。但是我需要一个没有用户参与的自动重定向。我这样试过:

 mounted: function () {
    window.open('mycoolapp://', '_system')}

在此处的弹出窗口中打开,并要求用户确认打开。否则会阻塞。很明显,浏览器将此视为垃圾邮件。你能建议其他的选择吗?或者可能我做错了什么?

首先,不要在新窗口中打开,这至少会消除要求打开窗口的需要。你可以简单地

window.location.href = "mycoolapp://"

我不确定你是否还面临其他对话框,我想你可能也会看到“应用程序中的打开链接”之类的对话框,但我不会帮你。我认为这是强制性的?

您可以保留标记,并使用JS脚本模拟单击操作

<a id="my-cool-app" href="mycoolapp://"> Open my app </a>

mounted() {
  document.getElementById('my-cool-app').click();
}

安装的(){
document.getElementById('my-cool-app')。单击();
}
谢谢你的回答)我尝试了
window.location.href=“mycolapp://”
window.location.replace=('mycolapp://')
。这些变体不起作用。仅打开一个新的浏览器窗口,其url为:mycoolapp://。我只是想避免像“在应用程序中打开链接”这样的对话框。简单地自动将用户重定向到移动应用程序。