移動端H5如何喚醒APP?

需求

open in app
  1. 點擊免費下載按鈕,如果本機安裝了此應用,那么就喚醒該應用,如果沒有安裝此應用,那么就跳轉下載鏈接。
  2. 其實H5中沒有辦法去判斷本機有沒有安裝了哪款應用,但是我們可以設置一個超時時間,如果喚醒應用的時長超過了這個時間,那么就判斷你沒有安裝此應用。

html

// href為該應用的協議,可以向客戶端開發人員獲取, data-download-href為應用的下載地址
<a href="weixin://" data-android-href="{$data.box.urlapk}" data-ios-href="{$data.box.urlapp}" class='open-btn'>免費下載</a>

javascript

// 下載游戲或則打開app
$('.open-btn').on('click', function () {
  if (isWechat()) {
    // 顯示在瀏覽器中打開
  } else {
    let href = "";
    if (isIos()) {
      href = $('.open-btn').attr('data-ios-href');
    } else {
      href = $('.open-btn').attr('data-android-href');
    }
    let clickedAt = +new Date();
    setTimeout(function () {
      // webkitHidden檢測頁面對于用戶的可見性(切換標簽或者切換后臺就不可見了)
      !window.document.webkitHidden && setTimeout(function () {
        if (+new Date() - clickedAt < 2000) {
          window.location = href;
        }
      }, 500);
    }, 500)
  }
})

再說一點

根據自己的項目情況來修改代碼就可以了,可能只有安卓應用沒有ios應用,那么自己修改代碼就可以啦,提示用戶沒有ios版的應用

最后

本文到此結束,希望以上內容對你有些許幫助,如若喜歡請記得點個關注哦 ??

image

微信公眾號「前端宇宙情報局」,將不定時更新最新、實用的前端技巧/技術性文章,歡迎關注,一起學習 ??

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容