根据手机品牌判断进入对应的应用市场下载App的方法

话不多说直接上代码:
function openApp() {
  const u = navigator.userAgent;
  // ios
  if (u.match(/(iPhone|iPod|iPad);?/i)) {
    window.location.href = "XXXX";
  }
  // Android
  if (u.match(/android/i)) {
    window.location.href = "XXXXXXXXX"; // 安卓协议,由安卓开发那边提供(打开已安装的App)
    const ua = u.toLowerCase();
    // 微信浏览器打开
    if (ua.match(/MicroMessenger/i)) {
      if (ua.match(/huawei/i) || ua.match(/honor/i)) {
        // 华为
        window.setTimeout(function() {
          window.location.href = "XXXX";
        }, 2000);
      } else if (ua.match(/oppo/i)) {
        // oppo
        window.setTimeout(function() {
          window.location.href = "XXXX";
        }, 2000);
      } else if (ua.match(/vivo/i)) {
        // vivo
        window.setTimeout(function() {
          window.location.href = "XXXX";
        }, 2000);
      } else if (ua.match(/mi\s/i) || ua.match(/mix\s/i) || ua.match(/redmi/i)) {
        // 小米系列
        window.setTimeout(function() {
          window.location.href = "XXXX";
        }, 2000);
      } else if (ua.match(/sm-/i)) {
        // 三星
        window.setTimeout(function() {
          window.location.href = "XXXX";
        }, 2000);
      } else {
        // 腾讯应用宝
        window.setTimeout(function() {
          window.location.href = "XXXX";
        }, 2000);
      }
    } else {
      // 手机浏览器打开直接下载安装包
      window.location.href = "XXXXXX";
    }
  }
}
提示:要是想直接通过微信扫码后在微信中下载,那么需要在腾讯应用宝后台管理平台中设置一下。里面有个叫“微下载”的,配置一下打开协议和下载地址,保存二维码即可实现微信应用内扫码下载
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
在H5页面中判断Android应用是否已安装,可以通过以下步骤实现: 1. 使用intent协议 在H5页面中使用类似于以下代码的链接,可以通过intent协议打开应用: ``` <a href="intent://example.com/path?param1=value1&param2=value2#Intent;scheme=myscheme;package=com.example.package;end">Open App</a> ``` 其中,scheme是应用的协议,package是应用的包名,path是应用对应的路径,param1和param2是需要传递的参数。 如果该应用已安装,会直接打开应用;如果未安装,会跳转到应用商店,提示用户下载应用。 2. 使用JavaScript 在H5页面中使用JavaScript判断应用是否已安装,可以通过以下代码实现: ``` function checkAppInstalled() { var ua = navigator.userAgent.toLowerCase(); if (ua.match(/MicroMessenger/i) == "micromessenger") { // 判断是否在微信中打开 // 在微信中,无法通过JavaScript判断应用是否安装,需要使用其他方法 return false; } else { var schemeUrl = "myscheme://example.com/path"; // 应用的协议和路径 var timeout = 1000; // 超时时间,单位为毫秒 var timer, t = Date.now(); var iframe = document.createElement("iframe"); iframe.style.display = "none"; iframe.src = schemeUrl; document.body.appendChild(iframe); timer = setTimeout(function () { if (Date.now() - t < timeout + 100) { clearTimeout(timer); document.body.removeChild(iframe); alert("未安装应用"); } }, timeout); window.onblur = function () { clearTimeout(timer); document.body.removeChild(iframe); }; } } ``` 该方法通过创建一个隐藏的iframe元素,访问应用的协议和路径,如果应用已安装,则会打开应用;如果未安装,则会在一定时间后超时,弹出提示框。 需要注意的是,在微信中无法通过JavaScript判断应用是否已安装,需要使用其他方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值