手机端点击链接唤醒微信内置浏览器并打开指定页面

老白 8个月前 1662浏览 1评论

手机端点击链接唤醒微信内置浏览器并打开指定页面

可能有很多这样的需求,但目前微信确实没有开发直接打开微信浏览器的协议参数,只能打开微信部分功能!

通过a标签唤起微信:

<a href="javascript:window.location.href='weixin://'">打开微信</a>
<a href="weixin://">weixin:// </a>


// 控制何时唤起微信
<script>
// 可以写一些前置条件,比如复制一段文字
let a = document.querySelector('a')
a.href = 'weixin://'
</script>

通过a标签唤起微信,有缺陷,没办法带参数过去我们可以通过引入clipboard插件来复制一段文字来完成传递数据(比如关注公众号之类的)

clipboard插件中文网地址

<html>
<body>
	<a>打开微信</a>
<body>
</html>
<script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script>
<script>
// 简单复制5个数字并打开微信
new Clipboard('DOM的类名等 比如传a', {
    text: function () {
        return '12345'
    }
})
let a = document.querySelector('a')
a.href = 'weixin://'

// 下面这些是唤起微信具体到某个页面的链接
weixin://dl/scan 扫一扫
weixin://dl/feedback 反馈
weixin://dl/moments 朋友圈
weixin://dl/settings 设置
weixin://dl/notifications 消息通知设置
weixin://dl/chat 聊天设置
weixin://dl/general 通用设置
weixin://dl/officialaccounts 公众号
weixin://dl/games 游戏
weixin://dl/help 帮助
weixin://dl/feedback 反馈
weixin://dl/profile 个人信息
weixin://dl/features 功能插件
</script>

通过插件callapp-lib唤起微信等app

比如我们在这里通过callapp-lib唤起微信

<script src="https://unpkg.com/callapp-lib"></script>

<script>
const options = {
  scheme: {
	protocol: 'weixin' //必填项 URL Scheme 的 scheme 字段,要打开的 APP 的标识,比如这里是微信的标识
  },
  intent: { //安卓原生谷歌浏览器必须传递 Intent 协议地址,才能唤起 APP
	// 这两个是intent的必填项
	package: 'com.tencent.mm',//腾讯微信包名
	scheme: 'weixin'、
  },
  appstore: 'https://weixin.qq.com/', //必填项 APP 的下载地址,比如这里是微信的下载地址

  yingyongbao: 'https://sj.qq.com/myapp/detail.htm?apkName=com.tencent.mm', //必填项 APP 的应用宝地址,比如这里微信的应用宝下载地址

  fallback: location.href //必填项 唤起app端失败后跳转的地址。
};

//callapp-lib 中传递出来的是一个类,你需要将它实例化,然后才能去调用实例对象的方法
const callLib = new CallApp(options);
 
// 这里是唤端方法。
callLib.open({
  // 如果只是唤起app,不需要打开app的某个页面,填空字符串就可以
  path: ''
  //打开app某个页面,需要接收的参数。如果没有就不用写
  //param: {},
});
</script>
1条评论
  •  访客
     2021-05-20 10:23:34  回复TA
  • 我五月十日买一电车19,9元到现还没收到