尝试重定向自定义协议方案(appname:// location)时,如果未注册,则避免错误

时间:2013-10-23 23:47:12

标签: ios mobile-safari url-scheme

我正在使用“Bounce”网页,该网页通过短信链接打开我的应用。 “Bounce”网页就是这样做的:

<script type="text/javascript">
   window.location.href = "appname://location";
</script>

如果appname://协议方案已注册,则效果很好。但如果不是,则会向用户显示错误消息:

  

无法打开页面   Safari无法打开页面,因为地址无效

有关如何尝试执行此重定向的任何想法,但如果它不起作用则不会显示错误?

2 个答案:

答案 0 :(得分:4)

只有一种hacky javascript方法才能让它“正常”,无效的弹出窗口仍然会出现但如果未安装该应用程序,很快就会消失,并将它们带到另一个网址

document.location = "appname://location";
setTimeout(function(){
    document.location = "http://google.com";
}, 50);

答案 1 :(得分:1)

这样做的新方式显然是Universal Links