公司有个需求,希望能从浏览器或者APP跳转到微信内部,来推广公司内容。
在网上也看到很多网站声称可以提供跳转到微信的功能,一般是付费买他们的链接,他们可以帮忙制作跳转链接,结果我们找了一个网站,付完钱发现提供的链接不能满足需求,人也找不到了,真是日了够了,无奈钱也被骗了,只能自己团队来调研,不过我们花了很多时间的调研,终于有了突破,找到了生成微信跳转的方式。
跳转原理分析:
从手机浏览器等非微信环境,跳转到微信,都是利用
weixin://dl/business/?ticket=t852de9efd9b540df8b355699d4f2ed63
这种形式的微信 scheme,来完成启动并跳转到微信的。 微信内部会对Scheme的信息进行解密,解密出ticket中包含的URL来加载。
Android 启动微信测试代码:
Uri uri = Uri.parse("weixin://dl/business/?ticket=t852de9efd9b540df8b355699d4f2ed63");
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setData(uri);
mContext.startActivity(intent);
Web 启动微信测试代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>跳转中</title>
</head>
<body>
<div class="page__hd" align="center">
<h3 align="center" style="padding:30px;">正在打开微信请稍等...</h3>
<a href="javascript:;" class="weui-btn weui-btn_primary weui-btn_loading" onClick="toweixin();" style="width: 60%">重新打开微信</a><br>
</div>
<script>
setTimeout(toweixin());
function toweixin() {
window.location.replace('weixin://dl/business/?ticket=t852de9efd9b540df8b355699d4f2ed63');
}
toweixin();
</script>
</body>
</html>
所以通过这种方式,就可以完成微信跳转并加载我们想要的网页了。
有什么问题欢迎加入知识星球一起交流
知识星球.png
网友评论