zoukankan      html  css  js  c++  java
  • JS open App(未安装就跳转下载页面)

    直接上代码
    var APPCommon = {
    downAppURl : "http://**/",//下载APP地址
    downWeixin: "http://**",//微信下载APP地址
    iphoneSchema: 'openApp.jdMobile://',//IOS打开APP 跳转地址(这个跳转地址需要IOS开发人员提供)
    iphoneDownUrl: 'https://**',//IOS 下载地址
    androidSchema: 'openApp.jdMobile://',//安卓打开APP 跳转地址 (这个跳转地址需要安卓开发人员提供
    androidDownUrl: 'http://**/',//安卓下载地址
     openApp: function(){
    var this_ = this;
    if(this_.isWeixin()){ //微信
    window.location = this_.downWeixin;
    }
    }else{//非微信浏览器
    if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {
    var loadDateTime = new Date();
    window.setTimeout(function() {
    var timeOutDateTime = new Date();
    if (loadDateTime && timeOutDateTime - loadDateTime < (1500 + 200)) {
    window.location = this_.iphoneDownUrl;//ios下载地址
    } else {
    window.close();
    }
    },1600); //此处时间有待确定
    window.location = this_.iphoneSchema;
    }else if (navigator.userAgent.match(/android/i)) {
    var loadDateTime = new Date();
    var ifrSrc =this_.androidSchema;
    if (!ifrSrc) {
    return;
    }
    var ifr = document.createElement('iframe');
    ifr.src = ifrSrc;
    ifr.style.display = 'none';
    document.body.appendChild(ifr);
    var TimeLoad = setTimeout(function() {
    document.body.removeChild(ifr);
    window.location=this_.androidDownUrl; //android下载地址
    }, 1600);
    window.onblur=function(){
    clearTimeout(TimeLoad);
    };
    }else{ //非ios、非安卓
    window.location = this_.downAppURl;
    }
    }
    },
    isWeixin: function(){ //判断是否是微信
    var ua = navigator.userAgent.toLowerCase();
    if (ua.match(/MicroMessenger/i) == "micromessenger") {
    return true;
    } else {
    return false;
    }
    }
    };
    function openAP(){
    APPCommon.openApp()
    }
    备:
      1、经过测试ios用iframe尝试打开APP是行不通的,于是换了一个思路,用响应时间来控制。
      2、ios安装APP自带浏览器safari会有alert框,目前未找到解决办法屏蔽。
      3、微信禁止了打开APP 这个功能,所以建议跳转地址为到应用宝。

  • 相关阅读:
    Codeforces C. Almost Equal (数学规律)
    codeforce D. Shortest Cycle(floyd求最短环)
    Codeforces 1204D2. Kirk and a Binary String (hard version) (dp思路)
    codeforces 1204C Anna, Svyatoslav and Maps(floyd+dp)
    hdu 6214 Smallest Minimum Cut(最小割的最少边数)
    扩展欧几里得求解同余方程(poj 1061)
    poj 3281Dining(网络流 拆点)
    poj 3057(bfs+二分匹配)
    买鱼杂感
    geotrellis使用(十四)导出定制的GeoTiff
  • 原文地址:https://www.cnblogs.com/luobiao/p/6237840.html
Copyright © 2011-2022 走看看