美文网首页
如何通过一个二维码根据不同系统分别下载Android和IOS应用

如何通过一个二维码根据不同系统分别下载Android和IOS应用

作者: Geekholt | 来源:发表于2020-03-12 18:23 被阅读0次

如需转载请评论或简信,并注明出处,未经允许不得转载

前言

最近在做一个需求,一个html页面需要生成一个二维码图片(用于下载我们的APP),分享到微信。但是我们的APP包括Android应用和IOS应用,一个二维码如何下载两个不同系统的应用呢?

重定向

我们首先想到的是,通过一个html的承接页,判断系统类型,再进行重定向,代码也很简单

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>我的应用</title>
</head>
<body>
    <script type="text/javascript">       

        goDownload();
        // 去下载
        function goDownload() {
            var u = navigator.userAgent, app = navigator.appVersion;
            var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1;
            var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
            // 这里是安卓浏览器
            if (isAndroid) {
                window.location.href = 'http://www.baidu.com/'; // 跳安卓端下载地址
            }
            // 这里是iOS浏览器
            if (isIOS) {
                window.location.href = 'http://www.qq.com/'; // 跳AppStore下载地址
            }

            // 是微信内部webView
            if (is_weixn()) {
                alert("请点击右上角按钮, 点击使用浏览器打开");
            }
        }
        // 是微信浏览器
        function is_weixn() {
            var ua = navigator.userAgent.toLowerCase();
            if (ua.match(/MicroMessenger/i) == "micromessenger") {
                return true;
            } else {
                return false;
            }
        }
        
    </script>
</body>
</html>

这种做法呢,能够实现我们的需求,但是体验相对差一点,需要用户手动点击右上角的按钮,在浏览器中打开,不是微信官方所支持的做法。后来通过查看应用宝的开放平台的功能,发现了一个个人认为更合适的方案

应用宝微下载

  1. 打开应用宝官网—>应用开放平台—>管理中心
  2. 点击自己的应用 —> 微下载


  3. 输入IOS的Appstore下载地址


    image.png

这样应用宝就会自动帮我们生成一个二维码,安卓用户扫描二维码会出现你的APP在腾讯应用宝中的下载链接,IOS用户扫描二维码会提示跳转到AppStore。

总结

使用第二种方法的话,应用宝内部进行了重定向,原理和我们第一种方法也差不多。但是应用宝和微信都是腾讯旗下的,所以微信不会屏蔽应用宝,反而会给予相对友好的交互提示,同时这种方式也不需要我们自己去做页面重定向的逻辑。所以个人最终还是采用了方法二

相关文章

网友评论

      本文标题:如何通过一个二维码根据不同系统分别下载Android和IOS应用

      本文链接:https://www.haomeiwen.com/subject/ontbjhtx.html