微信浏览器禁止下载APK的处理方法-跳转浏览器打开
通过扫描二维码下载APP已成为一个非常方便的通过扫描二维码下载APP已成为一个大家常用且非常方便的方式,微信也成为扫描二维码重要的工具,但是很多用户用微信扫描后会提示“已停止访问网页”,这是因为微信把你的链接拦截了,微信scheme接口会对含APK和IOS文件的链接进行屏蔽,所以用户在微信中无法打开。
此时就需要用户在微信内无论是直接打开链接还是识别二维码都能直接下载app。这个功能的实现需要对app的php代码进行相关的处理,下面给大家讲解一下这个功能的实现的方式和效果。
功能实现后ios系统可在微信内直接下载app,安卓则自动跳转浏览器下载。
1. App Store应用实现效果
![](http://upload-images.jianshu.io/upload_images/16500957-89a8d8990ebf7f21.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/246/format/webp)
2. 企业版app实现效果
![](http://upload-images.jianshu.io/upload_images/16500957-ea3a9bd86195c7ed.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/246/format/webp)
3. 安卓用户则自动打开手机浏览器下载app。
![](http://upload-images.jianshu.io/upload_images/16500957-455e73f7f58fe573.gif?imageMogr2/auto-orient/strip%7CimageView2/2/w/202/format/webp)
代码编程
HTML代码
var ua = navigator.userAgent;
var isWeixin = !!/MicroMessenger/i.test(ua);
CSS代码
1 #weixin-tip{display:none;position:fixed;left:0;top:0;background:rgba(0,0,0,0.8);filter:alpha(opacity=80);width:100%;height:100%;z-index:100;}
2 #weixin-tip p{text-align:center;margin-top:10%;padding:0 5%;position:relative;}
3 #weixin-tip .close{color:#fff;padding:5px;font:bold 20px/24px simsun;text-shadow:0 1px 0 #ddd;position:absolute;top:0;left:5%;}
JS封装代码
1 var is_weixin = (function(){return navigator.userAgent.toLowerCase().indexOf(‘micromessenger’) !== -1})();
2 window.onload = function() {
3 var winHeight = typeof window.innerHeight != ‘undefined’ ? window.innerHeight : document.documentElement.clientHeight; //兼容IOS,不需要的可以去掉
4 var btn = document.getElementById(‘J_weixin’);
5 var tip = document.getElementById(‘weixin-tip’);
6 var close = document.getElementById(‘close’);
7 if (is_weixin) {
8 btn.onclick = function(e) {
9 tip.style.height = winHeight + ‘px’; //兼容IOS弹窗整屏
10 tip.style.display = ‘block’;
11 return false;
12 }
13 close.onclick = function() {
14 tip.style.display = ‘none’;
15 }
16 }
17 }