Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
389 views
in Technique[技术] by (71.8m points)

如何用js打开本地app?正确打开后不跳转到下载页面,未正确打开或本地未安装,跳去下载页?

最近在开发使用js打开本地app,但是在这个过程中遇到很多问题。

问题:在打开了app之后如何避免页面不再跳转到下载页面

  • 目前我用的方法是使用a标签,加href=“约定好的协议”的方式打开本地app,测试后安卓和ios都能正确打开app,代码如下:

    var S = document.createElement("a");
    S.setAttribute("href","");
    S.style.display = "none";
    document.body.appendChild(S);
    var T = document.createEvent("HTMLEvents");
    T.initEvent("click", !1, !1);
    S.dispatchEvent(T);
  • 上一步完成之后,添加计时器,在1600ms之后,如果未能正确打开app就去下载页面

  • 是否正确打开,我的依据是,添加计时器的同时添加window.onblur事件,如果该事件触发了,则清除计数器,阻止页面跳转到下载页(就是这一步未能实现)

  • 关于打开app后未能阻止页面跳转到下载页,这一步我该怎么做???参考了这篇文章 浏览器唤起app,但是文虽是好文,最终也是没有解决我的问题,求各路大神指教。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
  • 这个问题在ios safari 9.0表现很正常,和预期一致

  • ios chrome54表现也和预期一致

  • android手机下都会出现下载界面或者跳去下载页面


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...