1. 程式人生 > >js判斷手機是否安裝了某一款app,有則開啟,沒有去下載

js判斷手機是否安裝了某一款app,有則開啟,沒有去下載

function openApp(){
            if(navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {
                var loadDateTime = new Date();
                window.setTimeout(function() {
                    var timeOutDateTime = new Date();
                    if(timeOutDateTime - loadDateTime < 5000) {
                        window.location 
= "要跳轉的下載app頁面URL"; } else { window.close(); } },25); window.location = " apps custom url schemes "; } else if(navigator.userAgent.match(/android/i)) { var loadDateTime = new Date();
var state = window.open("apps custom url schemes ", '_blank'); window.setTimeout(function() { var timeOutDateTime = new Date(); if(timeOutDateTime - loadDateTime < 5000) { window.location = "要跳轉的下載app頁面URL"; }
else { window.close(); } },25); } }

apps custom url schemes 是什麼呢?


其實就是你與APP約定的一個協議URL,你的IOS同事或Android同事在寫程式的時候會設定一個URL Scheme, 例如設定: URL Scheme :app 然後其他的程式就可以通過URLString = app:// 呼叫該應用。 還可以傳引數,如:app://reaction/?uid=1

原理:500ms內,本機有應用程式能解析這個協議並開啟程式,呼叫該應用;如果本機沒有應用程式能解析該協議或者500ms內沒有開啟這個程式,則執行setTimeout裡面的function,就是跳轉到你想跳轉的頁面。 以上就是js判斷移動端是否安裝某款app的方法,希望對大家的學習有所幫助。