H5通過(guò)URL Scheme協(xié)議喚起Activity或App

場(chǎng)景描述

在 h5 頁(yè)面上,用戶(hù)點(diǎn)擊打開(kāi)app按鈕火架,如果已經(jīng)安裝了App則打開(kāi)app,否則引導(dǎo)用戶(hù)前往應(yīng)用市場(chǎng)纺弊。

思路

在 h5 頁(yè)面上喚醒a(bǔ)pp 骡男,需要用到 scheme協(xié)議(由app端提供)隔盛,但是在微信瀏覽器里scheme不起作用(微信現(xiàn)在可以通過(guò)微信開(kāi)放標(biāo)簽實(shí)現(xiàn)),因此需要先判斷是否為微信瀏覽器腊脱,是微信瀏覽器的話龙亲,提示到瀏覽器打開(kāi),不是的話杜耙,再判斷是Android端還是iOS端迎膜,然后嘗試scheme協(xié)議喚醒a(bǔ)pp,如果喚醒失敗再轉(zhuǎn)向應(yīng)用市場(chǎng)珊豹。

實(shí)現(xiàn)

var u = navigator.userAgent;
var isWeixin = u.toLowerCase().indexOf('micromessenger') !== -1; // 微信內(nèi)
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //android終端
var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios終端

// 微信內(nèi)
if (isWeixin) {
    alert('請(qǐng)?jiān)跒g覽器上打開(kāi)')
} else {
    //android端
    if (isAndroid) {
        //安卓app的scheme協(xié)議
        window.location.href = 'taobao://';
        setTimeout(function () {
            let hidden = window.document.hidden || window.document.mozHidden || window.document.msHidden || window.document.webkitHidden
            if (typeof hidden == "undefined" || hidden == false) {
                //應(yīng)用寶下載地址 (emmm 找不到淘寶應(yīng)用寶的地址店茶,這里放的是 lucky coffee 地址)
                window.location.;
            }
        }, 2000);
    }
    //ios端
    if (isIOS) {
        //ios的scheme協(xié)議
        window.location.href = 'taobao://'
        setTimeout(function () {
            let hidden = window.document.hidden || window.document.mozHidden || window.document.msHidden || window.document.webkitHidden
            if (typeof hidden == "undefined" || hidden == false) {
                //App store下載地址
                window.location.;
            }
        }, 2000);
    }
}

URL Scheme協(xié)議

URL Scheme是一種頁(yè)面內(nèi)跳轉(zhuǎn)協(xié)議贩幻,通過(guò)這個(gè)協(xié)議可以比較方便的跳轉(zhuǎn)到app某一個(gè)頁(yè)面。

[scheme]://[host][:port]/[path]?[query]
scheme: 協(xié)議名稱(chēng)(由開(kāi)發(fā)人員自定義)(必要族壳,其他都是可選)
host: 域名
port:端口
path: 頁(yè)面路徑
query: 請(qǐng)求參數(shù)

調(diào)用:
例如我們?cè)?h5 頁(yè)面上點(diǎn)擊一個(gè)喚醒a(bǔ)pp按鈕仿荆,如下:

<a href="yc://ycbjie:8888/from?type=yangchong">打開(kāi)叮咚app</a>

那么這個(gè)協(xié)議鏈接的來(lái)源坏平,即原生app的設(shè)置,是長(zhǎng)這樣的:

<activity
    android:name=".ui.main.ui.activity.SchemeFirstActivity"
    android:screenOrientation="portrait">
    <!--Android 接收外部跳轉(zhuǎn)過(guò)濾器-->
    <!--要想在別的App上能成功調(diào)起App令境,必須添加intent過(guò)濾器-->
    <intent-filter>
        <!-- 協(xié)議部分配置 ,注意需要跟web配置相同-->
        <!--協(xié)議部分舔庶,隨便設(shè)置 yc://ycbjie:8888/from?type=yangchong  -->
        <data android:scheme="yc"
            android:host="ycbjie"
            android:path="/from"
            android:port="8888"/>


        <!--下面這幾行也必須得設(shè)置-->
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <action android:name="android.intent.action.VIEW" />
    </intent-filter>
</activity>

需要原生app上先設(shè)置好了這些,h5上才能喚醒a(bǔ)pp陈醒。

作者:liwuwuzhi
鏈接:http://www.reibang.com/p/21380058d609
來(lái)源:簡(jiǎn)書(shū)
著作權(quán)歸作者所有孵延。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)尘应,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處吼虎。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市玷犹,隨后出現(xiàn)的幾起案子洒疚,更是在濱河造成了極大的恐慌坯屿,老刑警劉巖巍扛,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件撤奸,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡矢棚,警方通過(guò)查閱死者的電腦和手機(jī)府喳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)劫拢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人妹沙,你說(shuō)我怎么就攤上這事熟吏。” “怎么了牵寺?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵帽氓,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我浓领,道長(zhǎng)势腮,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任泪幌,我火速辦了婚禮祸泪,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘浴滴。我一直安慰自己,他們只是感情好微王,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布炕倘。 她就那樣靜靜地躺著罩旋,像睡著了一般眶诈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上逝撬,一...
    開(kāi)封第一講書(shū)人閱讀 51,365評(píng)論 1 302
  • 那天宪潮,我揣著相機(jī)與錄音,去河邊找鬼狡相。 笑死,一個(gè)胖子當(dāng)著我的面吹牛喳挑,可吹牛的內(nèi)容都是我干的滔悉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼询张!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起唯袄,我...
    開(kāi)封第一講書(shū)人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎资厉,沒(méi)想到半個(gè)月后蔬顾,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體诀豁,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年娩践,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了翻伺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吨岭。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡遇汞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出络它,到底是詐尸還是另有隱情歪赢,我是刑警寧澤,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布点楼,位于F島的核電站白对,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏蟀瞧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一铸屉、第九天 我趴在偏房一處隱蔽的房頂上張望切端。 院中可真熱鬧,春花似錦昌屉、人聲如沸椰于。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)抢呆。三九已至,卻和暖如春笛谦,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背恳邀。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工谣沸, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留笋颤,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓赋除,卻偏偏與公主長(zhǎng)得像非凌,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子并蝗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 場(chǎng)景1: 在 h5 頁(yè)面上,不管用戶(hù)是否安裝過(guò)該app粥惧,都直接跳轉(zhuǎn)到應(yīng)用市場(chǎng),讓用戶(hù)從應(yīng)用市場(chǎng)上打開(kāi)app突雪。 思路...
    liwuwuzhi閱讀 47,450評(píng)論 3 24
  • 什么是URL Scheme 簡(jiǎn)單的說(shuō)惹想,由于蘋(píng)果選擇使用沙盒機(jī)制來(lái)保障用戶(hù)的隱私和安全,APP只能訪問(wèn)自己沙盒數(shù)據(jù)嘀粱,...
    哦尼醬呢閱讀 2,350評(píng)論 0 0
  • 什么是URL Scheme 簡(jiǎn)單的說(shuō)锋叨,由于蘋(píng)果選擇使用沙盒機(jī)制來(lái)保障用戶(hù)的隱私和安全,APP只能訪問(wèn)自己沙盒數(shù)據(jù)宛篇,...
    CodeRookie閱讀 11,953評(píng)論 1 7
  • H5喚起APP進(jìn)行分享 最近很久沒(méi)有寫(xiě)blog和note娃磺,倒是過(guò)家家的開(kāi)發(fā)日志簡(jiǎn)單草草寫(xiě)了一點(diǎn)。這次記錄下這個(gè)學(xué)習(xí)...
    二歪求知iSk2y閱讀 27,894評(píng)論 3 25
  • 本文講解的是一種App內(nèi)頁(yè)面跳轉(zhuǎn)協(xié)議叫倍,這里的跳轉(zhuǎn)包括應(yīng)用內(nèi)跳轉(zhuǎn)偷卧、H5與Native跳轉(zhuǎn),服務(wù)器通知客戶(hù)端如何跳轉(zhuǎn)等...
    Mr_zhaoF1閱讀 3,847評(píng)論 0 3