1. 程式人生 > >專案總結1:微信掃碼自動識別裝置型別並跳轉到相應的應用下載頁面(apk或App Store)之解決方案

專案總結1:微信掃碼自動識別裝置型別並跳轉到相應的應用下載頁面(apk或App Store)之解決方案

問題分析:普通頁面一般無法呼叫微信的掃一掃介面,從而否定通過微信掃一掃功能給我們判斷當前掃碼的裝置型別。

解決方案:通過應用下載頁面自身來獲取當前訪問的客戶端裝置型別(iPhone、Android、iPad),然後分別跳轉到不同的下載連結。

  1. 新建一個靜態頁面,如:download.html;
  2. 在download.html中佈局,分別設定安卓和iOS的下載按鈕指示(避免自動跳轉失敗時可以讓使用者手動選擇點選下載);
  3. 在頁面載入完成的事件ready裡面(也可不放ready裡)新增如下JS指令碼;
  4. 把download.html放到後臺應用伺服器的某個能被外網訪問的路徑下;
  5. 對第四步的訪問路徑生成一個二維碼即可。(生成網址如:
    草料線上生成二維碼
<script>
  /*瀏覽器版本資訊*/
  var browser = {
    versions: function() {
      var u = navigator.userAgent, app = navigator.appVersion;
      return {//移動終端瀏覽器版本資訊
        trident: u.indexOf('Trident') > -1, // IE
        presto: u.indexOf('Presto') > -1, // opera
        webKit: u.indexOf('AppleWebKit') > -1, // 蘋果、谷歌
        gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, // 火狐
        mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), // 是否為移動終端
        ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), // ios終端
        android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, // android終端或者uc瀏覽器
        iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, // 是否為iPhone或者QQHD瀏覽器
        iPad: u.indexOf('iPad') > -1, // 是否iPad
        webApp: u.indexOf('Safari') == -1 // 是否web應該程式,沒有頭部與底部
      };
    }(),
    language: (navigator.browserLanguage || navigator.language).toLowerCase()
  }

  if (browser.versions.ios || browser.versions.iPhone) {
    window.location="http://itunes.apple.com/cn/app/id1355618471"; // ios版本的下載地址
    console.log("ios平臺");
  }
  else if (browser.versions.android) {
    window.location="http://www.ssme.gov.cn/entsrv_cloud/app_update_info/shqyfwy.apk"; // android版本的下載地址
    console.log("android平臺");
  }

</script>

注意事項

  • 測試時必須在外網環境下,也就是說download.html的存放路徑能被外網訪問,這樣微信掃一掃之後才可能加載出來下載頁面。
  • 如果跳轉失敗,請仔細檢查和嘗試使用http和https兩種不同的協議(有三處:跳轉App Store/下載apk/download.html路徑)

相關推薦

專案總結1自動識別裝置型別相應應用下載頁面apkApp Store解決方案

問題分析:普通頁面一般無法呼叫微信的掃一掃介面,從而否定通過微信掃一掃功能給我們判斷當前掃碼的裝置型別。 解決方案:通過應用下載頁面自身來獲取當前訪問的客戶端裝置型別(iPhone、Android、iPad),然後分別跳轉到不同的下載連結。 新建一個靜態頁面,如:down

第三方登入登入OAuth2.0

1、OAuth2.0   OAuth(開放授權)是一個開放標準,允許使用者讓第三方應用訪問該使用者在某一網站上儲存的私密的資源(如照片,視訊,聯絡人列表),而無需將使用者名稱和密碼提供給第三方應用。   允許使用者 提供一個令牌, 而不是使用者名稱和密碼來訪問他們存放

支付、呼叫統一下單介面、網站支付 + springmvc

準備:根據統一下單介面API我先定義了三個物件:UnifiedOrderRequest(統一下單請求引數(必填))、UnifiedOrderRequestExt(統一下單請求引數(非必填))、UnifiedOrderRespose(統一下單返回引數);具體如下程式碼,get、set方法可自行生產,太佔篇幅。

JS判斷是否是頁面,判斷手機作業系統iosandroid到不同下載頁面

JS判斷客戶端是否是iOS或者Android 1 function is_weixin() { 2 var ua = window.navigator.userAgent.toLowerCase(); 3 if (ua.match(/Micr

***公眾號支付+H5支付+支付+小程序支付+APP支付解決方案總結

ati asc alt creat chapter edit 隨機字符串 glob 測試 最近負責的一些項目開發,都用到了微信支付(微信公眾號支付、微信H5支付、微信掃碼支付、APP微信支付)。在開發的過程中,在調試支付的過程中,或多或少都遇到了一些問題,今天總結下,分享,

登陸1---登入流程講解、獲取授權登陸二維

掃碼登入流程講解、獲取授權登陸二維碼 具體流程可以看微信官網的掃碼登入文件 其實官方文件已經講的非常清楚而且講的也很明白。 一、掃碼登入流程講解 1、首先準備工作 網站應用微信登入是基於OAuth2.0協議標準構建的微信OAuth2.0授權登入系統。 在進行微信OAuth2.在進行微信OAut

支付功能1---通過谷歌二維工具生成付款

生成付款二維碼 一、微信網站掃碼支付介紹    1、掃碼支付文件   有關微信支付的流程圖微信官方已經說的很清楚了,這裡也無需其它解釋。這邊採用微信支付掃碼模式二(不依賴商戶平臺設定回撥url),所以在生成二維碼之前 要先呼叫微信統一下單支付介面,獲得code_url,再通過谷歌二維碼工具將c

支付報錯curl出錯,錯誤碼60

【錯誤描述】 <span style="font-family:FangSong_GB2312;font-size:24px;">Fatal error: Uncaught except

支付(3)獲取驗簽秘鑰

pan shm itl XML color ucc man font main 官方文檔:https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=23_1&index=11.簽名生成代碼import jav

pc端支付和支付寶在線支付還未驗證 先留著

無需 host var efi 成功 raw func pwd 更改 本DEMO演示了PHP支付寶和微信掃碼在線支付,支付成功後,在回調地址顯示支付相關信息。 操作步驟: 1.修改配置文件 Application/common/conf/config.php $arr =

領紅包系統怎麽做

微信掃碼領紅包系統 微信掃碼領紅包系統怎麽做 掃碼領紅包系統開發詳詢小梨團隊(電137-6070-8268 微2635746272) 在日、韓等國家,二維碼應用已非常普遍,普及率高達96%以上。而中國的二維碼應用也在飛速發展。目前全國每月掃碼量超過4.8億次,移動運

化妝品防偽系統定制服務

化妝品微信掃碼防偽技術:(微/電136-2275-9327),化妝品微信掃碼防竄貨技術,化妝品質量追溯系統開發,化妝品微信小程序開發。 假貨大概是消費市場最大的毒瘤,而化妝品造假對消費者的傷害非常大,輕則勞財,重則傷命。每一件化妝品賦予一枚二維碼防偽標簽,消費者掃碼可辨真假,

積分管理定制

微信掃碼積分管理定制咨詢陳曉138-2500-6361微電同號。春節來臨,很多消費者都會瘋狂購年貨,然而在付款時收款員都會叫你掃下二維碼積累積分,然後到一定量可以兌換禮品等。這些積分是如何實現的?微信積分管理系統運用先進的營銷理念,與系統完美結合,打造020平臺,幫助企業走出傳統營銷方式。 一、微信掃碼積分

thinkphp整合系列支付

verify ets open exception date ssd 輸出 兼容 input <?phperror_reporting(E_ALL);ini_set(‘display_errors‘, ‘1‘);// 定義時區ini_set(‘date.timezon

php支付

b2c blank func blog ransac tro .net -h h5支付 一 概述 掃碼支付是商戶系統按微信支付協議生成支付二維碼,用戶再用微信“掃一掃”完成支付的模式。該模式適用於PC網站支付、實體店單品或訂單支付、媒體廣告支付等場景。前幾天公司需要做了一下

PHP PC端支付【模式二】詳細教程-附帶源

idt class pid 方法 按鈕 -c 商戶 開源 玩意兒 博主寫這破玩意兒的時候花了大概快兩天時間才整體的弄懂邏輯,考慮了一下~還是把所有代碼都放出來給大家~抱著開源大無私的精神!誰叫我擅長拍黃片呢?同時也感謝我剛入行時候那些無私幫過我的程序員們! 首先還是

ThinkPHP5支付

values ade oca location ood 二維碼 隱藏 目的 tint 1.把微信官網下載的demo放在根目錄/vendor/目錄下,這裏我的是/vendor/wxpay_pc目錄 2.把cert裏面的文件替換成自己項目的證書(登陸微信商戶平臺,賬戶中心,

登陸JAVA

component 新建 set urn esp ID uid login 形式   在web端用到weChat掃碼登錄,在手機掃碼登陸成功後,跳轉到相應的界面。 1、第一步請求code   調用接口:https://open.weixin.qq.com/connect/q

thinkphp5.0 支付模式二

report apt console hid time() sca jquery namespace bat 僅供個人參考,方便大家。 一、1)https://pay.weixin.qq.com/index.php/core/home/login 復制此地址 打開微信

積分系統源開發

jpg QQ 源碼開發 抽獎 pan 根據 align ima line   微信掃碼積分系統,微信掃碼積分系統開發,掃碼積分系統,二維碼積分系統,微信掃碼系統,微商積分系統,掃碼紅包系統,二維碼掃碼積分系統,多種掃碼積分系統開發,電或微:18027211542。QQ咨詢: