实际上,我正在尝试从我的网址深度链接到应用程序。我使用了来自https://github.com/hampusohlsson/browser-deeplink的代码一切正常,直到检查是否安装了应用程序。现在,问题是我正在执行上述代码的 deeplink.open() 方法,然后根据 return true/false 我试图将用户重定向到我的 deeplink 应用程序 url。注意:我没有在点击事件上执行 .open() 方法。由于我的页面不会通过屏幕上的物理触摸触发任何点击事件,因此重定向 window.location = "native/url" 的代码不起作用。如果我在任何按钮上执行代码 window.location = "native/url" 单击它就可以工作。事件我尝试使用触发方法生成单击事件,但重定向到本机的 window.location 仍然不起作用。任何人都可以告诉我我们是否需要在屏幕上进行物理触摸,或者我们可以使用 jquery 触发方法来做同样的事情吗?
function redirectUrl(OS, webUrl, appUrl){
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)){
deeplink.setup({
iOS: {
appId: "ISOAPP",
appName: "facebook",
},
android: {
appId: "com.myandroid.app.dev"
},
url: {
mobileUrl: appUrl,
webUrl: webUrl
}
});
var result = deeplink.open(appUrl)
if(result == true){
//app is installed
$("#redirectButton").on("click", function() {
window.location = "mynative://home";
});
$("#redirectButton").trigger("click");
}else {
window.location = webUrl;
}
}else{
//for desktop web
window.location = webUrl;
}
}