欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS和Android用同一個二維碼實(shí)現(xiàn)跳轉(zhuǎn)下載鏈接的方法

 更新時間:2016年09月28日 14:16:42   投稿:daisy  
這篇文章給大家分享的是iOS和Android掃描同一個二維碼,分別跳到各自的下載鏈接的實(shí)現(xiàn)方法,文中給出了實(shí)例代碼,有需要的朋友們可以參考借鑒。

前言

最近一個項(xiàng)目需要iOS和安卓使用一個二維碼,讓掃描的機(jī)器自己識別操作系統(tǒng)實(shí)現(xiàn)跳轉(zhuǎn)到相應(yīng)的下載鏈接。比如iPhone用微信進(jìn)行掃描就讓他跳轉(zhuǎn)appStore的下載頁面,安卓機(jī)器使用微信掃描就直接跳瀏覽器下載。但是這二維碼還有一個需求就是,用戶已經(jīng)下載了這個app,當(dāng)用戶打開app進(jìn)入到注冊頁面時,再次掃描這個二維碼時,自動填寫邀請碼進(jìn)行注冊。那么該如何實(shí)現(xiàn),細(xì)節(jié)就不說了,直接上代碼。

使用js實(shí)現(xiàn),其實(shí)代碼非常簡單.

使用時直接拷貝代碼,改掉相應(yīng)的鏈接就好。

PS:該鏈接在微信環(huán)境打開時還是需要手動跳轉(zhuǎn)到手機(jī)的瀏覽器才能跳到下載頁面,因?yàn)槲⑿艃?nèi)的webView比較特別,所以寫了一個alert引導(dǎo)用戶打開瀏覽器。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
</head>
<body>

  <script>

  /**
    出來的鏈接大概是長這樣的
    http://xxxx.cn/243423.html?c=Q23DR32
  */

  // c=Q23DR32是注冊時掃描獲取的邀請碼。
  // 這樣加參數(shù),后面的參數(shù)會被自動忽略,不會影響加載此網(wǎng)頁

    goDownload();

    // 去下載
    function goDownload() {
      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) {
        window.location.; // 跳安卓端下載地址
      }
      // 是iOS瀏覽器
      if (isIOS) {
        window.location.; // 跳AppStore下載地址
      }

      // 是微信內(nèi)部webView
      if (is_weixn()) {
        alert("請點(diǎn)擊右上角按鈕, 點(diǎn)擊使用瀏覽器打開");
      }

      // 是PC端
      if (IsPC()) {
        window.location.; // 公司主頁
      }
    }

    // 是微信瀏覽器
    function is_weixn(){
      var ua = navigator.userAgent.toLowerCase();
      if(ua.match(/MicroMessenger/i)=="micromessenger") {
        return true;
      } else {
        return false;
      }
    }


    function IsPC() {
      var userAgentInfo = navigator.userAgent;
      var Agents = ["Android", "iPhone",
        "SymbianOS", "Windows Phone",
        "iPad", "iPod"];
      var flag = true;
      for (var v = 0; v < Agents.length; v++) {
        if (userAgentInfo.indexOf(Agents[v]) > 0) {
          flag = false;
          break;
        }
      }
      return flag;
    }

  </script>
</body>
</html>

總結(jié)

以上就是iOS和Android用同一個二維碼實(shí)現(xiàn)跳轉(zhuǎn)下載鏈接的方法,大家都學(xué)會了嗎,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有更好的解決方案或可以通過代碼判斷微信客戶端的系統(tǒng)環(huán)境的方法請留言交流。

相關(guān)文章

最新評論