码迷,mamicode.com
首页 > 微信 > 详细

微信浏览器禁止app下载链接的两种处理方法

时间:2019-06-21 22:25:25      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:sdn   下载方式   装包   fixed   生成   var   pac   lang   class   

通过扫描二维码下载APP已成为一个非常方便的方式,微信也成为扫描二维码重要的工具,但是扫描后微信浏览器会对APK和appStore的链接进行屏蔽,导致用户无法正常下载。

提供解决方案:1.使用腾讯应用宝;2.提示用户使用浏览器打开;3.外跳工具

参考了前端开发博客的一篇文章以及进行了改动。采用方案:弹出一个遮罩提示用户在新的浏览器窗口打开。原文链接:http://caibaojian.com/weixin-tip.html

再也不用管微信如何的更新,直接判断微信的ua,然后弹出一个遮罩提示用户在浏览器中打开下载。并且不加关闭的按钮。类似于下面这样子:
技术图片

这样子用户就只能在浏览器中打开,并且可以直接下载应用了。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1"/>
    <title>微信弹出遮罩</title>
</head>
<body>
    <style type="text/css">
    *{margin:0; padding:0;}
    img{max-width: 100%; height: auto;}
    .test{height: 600px; max-width: 600px; font-size: 40px;}
    </style>
    <div class="test"><a href="http://mp.weixin.qq.com/mp/redirect?url=http://mobile.xinlianwang.com/android/distributor/DistributorApp.apk#weixin.qq.com#wechat_redirect ">有效跳转</a></div>
    <script type="text/javascript" src="http://libs.useso.com/js/jquery/1.9.0/jquery.min.js"></script>
    <script type="text/javascript">
        function is_weixin() {
            var ua = navigator.userAgent.toLowerCase();
            if (ua.match(/MicroMessenger/i) == "micromessenger") {
                return true;
            } else {
                return false;
            }
        }
        var isWeixin = is_weixin();
        var winHeight = typeof window.innerHeight != undefined ? window.innerHeight : document.documentElement.clientHeight;
        var weixinTip = $(<div id="weixinTip"><p><img src="live_weixin.png" alt="微信打开"/></p></div>);
        
        if(isWeixin){
            $("body").append(weixinTip);
        }else{
            window.location.href="www.yishengqiao.com/1/DoctorBridge.apk";
        }
        $("#weixinTip").css({
            "position":"fixed",
            "left":"0",
            "top":"0",
            "height":winHeight,
            "width":"100%",
            "z-index":"1000",
            "background-color":"rgba(0,0,0,0.8)",
            "filter":"alpha(opacity=80)",
        });
        $("#weixinTip p").css({
            "text-align":"center",
            "margin-top":"10%",
            "padding-left":"5%",
            "padding-right":"5%"
        });
    </script>
</body>
</html>

 

最好的方法实际上就是打破壁垒,让iOS和Android都能实现在微信中直接下载Apk(应用安装包),这种方案的实践方法就是使用 NiceTool工具(http://www.nicejump.cn/),工具的优势在于:

1、兼容iOS和Android系统。Android不必设置“点击右上角”的步骤,点击下载链接或扫码下载二维码,服务器自动调用手机的默认浏览器下载Apk,iOS则是直接跳转到App store。

2、可以自定义下载渠道。Android开发者可以设置下载渠道,不必局限微信只能在应用宝的单渠道下载方式。

3、浏览器兼容性优越。调用的是手机默认浏览器,所以不存在兼容问题。

4、免费试用。

工具地址:http://www.nicejump.cn/
教程如下

1、输入需要在微信中打开的网址链接
2、点击生成按钮,生成转换后的链接和二维码
3、复制生成后的链接或者扫一扫二维码即可


可以自行测试 体验

 

微信浏览器禁止app下载链接的两种处理方法

标签:sdn   下载方式   装包   fixed   生成   var   pac   lang   class   

原文地址:https://www.cnblogs.com/mailbox02/p/11066992.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!