微信下载APP提示操作 微信UA 二维码

最近接到反馈说官网二维码扫描无法下载APP,屡次测试正常后问对方是使用什么软件扫描?答曰:微信……

试了一下,发现微信内置浏览器会将下载操作屏蔽,导致无法进行下载操作,此时就需要添加对浏览器的判断,若为微信内置浏览器,则提示用户“点击右上方菜单键 -> 使用浏览器打开”,引导用户进入浏览器进行下载操作;若为其他浏览器,他则照常进行。

 

原来网站上放着多个二维码对应着不同版本、系统的APP;通过调动PHP的二维码库(QR Code)去动态显示二维码图片至前台,扫描二维码会直接到达下载页,中途无法进行浏览器判断。故需要修改二维码链接统一指向某一页面,在此页面验证浏览器信息,进而进行不同的操作。

 

判断是否为微信内置浏览器访问:通过userAgent中是否包含MicroMessenger来判断,若包含,则为微信内置浏览器;否则其他浏览器;

JavaScript判断代码:

// 根据浏览器UA判断是否为微信内置浏览器访问
var ua = navigator.userAgent.toLowerCase();
if((/micromessenger/).test(ua)) {
    document.write("通过微信内置浏览器访问");
} else {
    document.write("通过其他浏览器访问");
}

 

PHP判断代码:

// 根据浏览器UserAgent判断是否使用微信内置浏览器访问页面
function isWeixin(){
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger')) {
return true;
}
return false;
}

 

微信内置浏览器UA:

5.0 (Linux; Android 4.4.4; MI 3W Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36 MicroMessenger/6.0.0.57_r870003.501 NetType/WIFI

具体扫二维码下载APP操作,可参考UC、手机QQ等大公司的做法,对用户体验提升也有一定的帮助。

附代码小实例:qrcode