vue中h5端打開(kāi)app(判斷是安卓還是蘋果)
1.開(kāi)發(fā)環(huán)境 vue+vant
2.電腦系統(tǒng) windows10專業(yè)版
3.在h5端開(kāi)發(fā)的過(guò)程中,我們經(jīng)常需要點(diǎn)擊一個(gè)按鈕來(lái)判斷用戶使用安裝了app(首先判斷是安卓還是蘋果,然后判斷是否安裝了app,如果沒(méi)有安裝則跳轉(zhuǎn)到下載頁(yè)面,如果安裝了則打開(kāi))。
4.廢話不多說(shuō),直接上代碼:
<div @click='openapp'> Open APP</div>
5.在methods中添加如下代碼:
openapp() { var u = navigator.userAgent, app = navigator.appVersion; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; var isIOS = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/); if (isAndroid) { // alert('我是安卓'); this.android(); } if (isIOS) { // alert('我是蘋果'); } },
android() { var _clickTime = new Date().getTime(); window.location.href = ’zhihu://’; /***打開(kāi)app的協(xié)議,有安卓同事提供***/ //啟動(dòng)間隔20ms運(yùn)行的定時(shí)器,并檢測(cè)累計(jì)消耗時(shí)間是否超過(guò)3000ms,超過(guò)則結(jié)束 var _count = 0, intHandle; intHandle = setInterval(function () { _count++; var elsTime = new Date().getTime() - _clickTime; if (_count >= 100 || elsTime > 5000) { console.log(_count) console.log(elsTime) clearInterval(intHandle); //檢查app是否打開(kāi) if (document.hidden || document.webkitHidden) { // 打開(kāi)了 window.location.href = 'zhihu://'; // alert(’打開(kāi)了’); window.close(); // return; } else { // 沒(méi)打開(kāi) // alert(’沒(méi)打開(kāi)’); window.location.href = 'http://www.cgvv.com.cn/bcjs/10356.html';//下載鏈接 } } }, 20); },
5.注意:在這個(gè)案例中我是用的知乎的例子:
6.注意
使用Custom URL Scheme的好處就是,你可以在其他程序中通過(guò)這個(gè)url打開(kāi)應(yīng)用程序。如果A應(yīng)用程序注冊(cè)了一個(gè) url scheme:myApp,那么就在mobile瀏覽器中就可以通過(guò)<a href ='myApp://'>打開(kāi)你的應(yīng)用程序。請(qǐng)注意,IOS中如果系統(tǒng)注冊(cè)了 url schemen且安裝了那個(gè)應(yīng)用程序,通過(guò)上面那種網(wǎng)頁(yè)的方式就可以打開(kāi)應(yīng)用程序(親測(cè)有效)。注意:IOS中不能注冊(cè)為http://xxx這樣的url scheme,而android是可以的。
到此這篇關(guān)于vue中h5端打開(kāi)app(判斷是安卓還是蘋果)的文章就介紹到這了,更多相關(guān)vue中h5端打開(kāi)app 內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. IntelliJ IDEA導(dǎo)入jar包的方法2. Python requests庫(kù)參數(shù)提交的注意事項(xiàng)總結(jié)3. 詳談ajax返回?cái)?shù)據(jù)成功 卻進(jìn)入error的方法4. python ansible自動(dòng)化運(yùn)維工具執(zhí)行流程5. vue-electron中修改表格內(nèi)容并修改樣式6. JavaScript中l(wèi)ayim之整合右鍵菜單的示例代碼7. python操作mysql、excel、pdf的示例8. 匹配模式 - XSL教程 - 49. 通過(guò)Python pyecharts輸出保存圖片代碼實(shí)例10. javascript實(shí)現(xiàn)雪花飄落效果
