其他分享
首页 > 其他分享> > 微信内跳转外部浏览器和外部浏览器打开微信

微信内跳转外部浏览器和外部浏览器打开微信

作者:互联网

最近要做一个微信内打开要跳转到外部浏览器的东西,研究了下,搞了一个demo,分享一下。

一.浏览器跳转微信

1.使用微信内置的url协议

<a href="weixin//"></a>

简单方法,仅仅能打开微信app,并不能执行任何命令。

2.ticket

weixin://dl/business/?ticket=t12a18b6ac3a603bfae46bd17b58f1

ticke往往是和一些大公司合作,将地址转化为ticket进行直接跳转。好像还不能随便使用

3.暂时携带url参数进行跳转的还未知

二,微信打开外置浏览器(ios的还要研究)

<?php
error_reporting(0);
if($_GET['open']==1 && strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger')!==false){
header("Content-Disposition: attachment; filename=\"load.doc\"");
header("Content-Type: application/vnd.ms-word;charset=utf-8");
}
?>
<script>
var url = ''; //定义url跳转
window.mobileUtil = (function(win, doc) {
var UA = navigator.userAgent,
isAndroid = /android|adr/gi.test(UA),
isIOS = /iphone|ipod|ipad/gi.test(UA) && !isAndroid,
isBlackBerry = /BlackBerry/i.test(UA),
isWindowPhone = /IEMobile/i.test(UA),
isMobile = isAndroid || isIOS || isBlackBerry || isWindowPhone;
return {
isAndroid: isAndroid,
isIOS: isIOS,
isMobile: isMobile,
isWeixin: /MicroMessenger/gi.test(UA),
isQQ: /QQ/gi.test(UA)
};
})(window, document);
//微信环境判断
if(mobileUtil.isWeixin){
//ios
if(mobileUtil.isIOS){
//解析地址未成功
window.location.replace(url);
}
//android
else if(mobileUtil.isAndroid){
url = '?open=1';//重新定义url地址
window.location.replace(url);
}
}
//其他设备
else{
//重载跳转页面
window.location.replace(url);
}
</script>

//上传服务器,直接访问文件就可以跳转

 

标签:浏览器,外部,微信,isAndroid,url,跳转,test,UA
来源: https://www.cnblogs.com/koukoubujiajun/p/10573657.html