在HTML打开已安装的App,未安装跳转到对应的下载链接

借鉴  HTML中判断手机是否安装某APP,跳转或下载该应用

function lookApp () {
  var ua = navigator.userAgent
  var isAndroid = /(Android);?[\s/]+([\d.]+)?/.test(ua)
  var isIpad = /(iPad).*OS\s([\d_]+)/.test(ua)
  var isIpod = /(iPod)(.*OS\s([\d_]+))?/.test(ua)
  var isIphone = !isIpad && /(iPhone\sOS)\s([\d_]+)/.test(ua)
  var isWechat = /micromessenger/i.test(ua)
  var isAlipay = /alipayclient/i.test(ua)
  if (isIphone) {
    // IPhone  
  // 默认跳转App协议 abc:// 后面的是跟App约定好携带的参数,这个根据实际情况添加或者删除 window.location.href = "abc://abc.com?id=" + id setTimeout(function(){
    // 未安装App即跳转IPhone商店 window.location
= 'https://itunes.apple.com/cn/app/aaaaaaaa' //如果超时就跳转到app下载页 },500); } else if (isAndroid) { // Android
// 默认跳转App协议
window.location.href = "abc://abc.com?id=" + id
setTimeout(function(){
// 未安装App即跳转Android商店
    window.location
= 'http://a.app.qq.com/o/simple.jsp?aaaaaa' //如果超时就跳转到app下载页
},500)
  }
}

首先利用navigator.userAgent 判断出手机设备类型

根据上面分别和IOS、Android约定好的   apps custom url schemes (abc://)  尝试打开App(微信浏览器里面无法直接打开App,在手机浏览器可以正常使用

并延长0.5秒自动跳转到对应的商店下载链接

 

posted @ 2018-08-22 17:49  Tsingtree  阅读(921)  评论(0编辑  收藏  举报