手機(jī)端點(diǎn)擊鏈接喚醒微信內(nèi)置瀏覽器并打開指定頁(yè)面
可能有很多這樣的需求,但目前微信確實(shí)沒(méi)有開發(fā)直接打開微信瀏覽器的協(xié)議參數(shù),只能打開微信部分功能!
通過(guò)a標(biāo)簽喚起微信:
<a href="javascript:window.location.href='weixin://'">打開微信</a> <a href="weixin://">weixin:// </a> // 控制何時(shí)喚起微信 <script> // 可以寫一些前置條件,比如復(fù)制一段文字 let a = document.querySelector('a') a.href = 'weixin://' </script>
通過(guò)a標(biāo)簽喚起微信,有缺陷,沒(méi)辦法帶參數(shù)過(guò)去我們可以通過(guò)引入clipboard插件來(lái)復(fù)制一段文字來(lái)完成傳遞數(shù)據(jù)(比如關(guān)注公眾號(hào)之類的)
clipboard插件中文網(wǎng)地址
<html> <body> <a>打開微信</a> <body> </html> <script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script> <script> // 簡(jiǎn)單復(fù)制5個(gè)數(shù)字并打開微信 new Clipboard('DOM的類名等 比如傳a', { text: function () { return '12345' } }) let a = document.querySelector('a') a.href = 'weixin://' // 下面這些是喚起微信具體到某個(gè)頁(yè)面的鏈接 weixin://dl/scan 掃一掃 weixin://dl/feedback 反饋 weixin://dl/moments 朋友圈 weixin://dl/settings 設(shè)置 weixin://dl/notifications 消息通知設(shè)置 weixin://dl/chat 聊天設(shè)置 weixin://dl/general 通用設(shè)置 weixin://dl/officialaccounts 公眾號(hào) weixin://dl/games 游戲 weixin://dl/help 幫助 weixin://dl/feedback 反饋 weixin://dl/profile 個(gè)人信息 weixin://dl/features 功能插件 </script>
通過(guò)插件callapp-lib喚起微信等app
比如我們?cè)谶@里通過(guò)callapp-lib喚起微信
<script src="https://unpkg.com/callapp-lib"></script> <script> const options = { scheme: { protocol: 'weixin' //必填項(xiàng) URL Scheme 的 scheme 字段,要打開的 APP 的標(biāo)識(shí),比如這里是微信的標(biāo)識(shí) }, intent: { //安卓原生谷歌瀏覽器必須傳遞 Intent 協(xié)議地址,才能喚起 APP // 這兩個(gè)是intent的必填項(xiàng) package: 'com.tencent.mm',//騰訊微信包名 scheme: 'weixin'、 }, appstore: 'https://weixin.qq.com/', //必填項(xiàng) APP 的下載地址,比如這里是微信的下載地址 yingyongbao: 'https://sj.qq.com/myapp/detail.htm?apkName=com.tencent.mm', //必填項(xiàng) APP 的應(yīng)用寶地址,比如這里微信的應(yīng)用寶下載地址 fallback: location.href //必填項(xiàng) 喚起app端失敗后跳轉(zhuǎn)的地址。 }; //callapp-lib 中傳遞出來(lái)的是一個(gè)類,你需要將它實(shí)例化,然后才能去調(diào)用實(shí)例對(duì)象的方法 const callLib = new CallApp(options); // 這里是喚端方法。 callLib.open({ // 如果只是喚起app,不需要打開app的某個(gè)頁(yè)面,填空字符串就可以 path: '' //打開app某個(gè)頁(yè)面,需要接收的參數(shù)。如果沒(méi)有就不用寫 //param: {}, }); </script>