iOS通用鏈接Universal Link典型場景介紹及使用

需求:

用戶從qq/微信分享出去的H5頁面,當(dāng)點(diǎn)擊H5頁面的某個(gè)按鈕時(shí)淌山,要實(shí)現(xiàn)如下功能:

1.當(dāng)用戶未安裝App時(shí)裸燎,跳轉(zhuǎn)到AppStore頁面引導(dǎo)用戶下載

2.當(dāng)用戶已安裝App時(shí),喚醒App并跳轉(zhuǎn)到App里面的某一個(gè)指定頁面

傳統(tǒng)的url schema實(shí)現(xiàn)方式存在兩個(gè)弊端泼疑,一是跳轉(zhuǎn)的時(shí)候會(huì)有一個(gè)提示框:“是否打開XXX”德绿,用戶體驗(yàn)不好,二是微信屏蔽了URL Scheme王浴,必須是在微信的白名單里面才可跳轉(zhuǎn)脆炎,也就意味著用戶在微信里面是無法一鍵直達(dá)App的。這對于大多數(shù)公司來講氓辣,是難以承受的秒裕。而通用鏈接Universal Link正是可以解決上述問題的技術(shù)手段。

一钞啸、通用鏈接介紹及優(yōu)點(diǎn) :

iOS 9 Universal Links 通用鏈接可參考這篇博文

二几蜻、通用鏈接具體實(shí)施步驟

? ? ?這里可以分兩種實(shí)現(xiàn)方式,第一種是自己去配置通用鏈接体斩,第二種是通過一些第三方sdk來實(shí)現(xiàn)此功能梭稚,筆者在這里強(qiáng)烈推薦第二種,我自己有嘗試第一種配置絮吵,坑多弧烤,而且配置半天后發(fā)現(xiàn)得到的鏈接始終通不過測試,懷疑是服務(wù)器那邊不支持蹬敲。而第二種配置的話暇昂,坑少,而且還會(huì)節(jié)省大量的開發(fā)時(shí)間伴嗡,保證該功能的迅速上線急波。

①自己配置通用鏈接?

iOS的UniversalLink開發(fā)總結(jié)? 不建議 坑太多熊榛。

②用第三方sdk去集成配置(魔窗崭篡,LinkedME等)

下面以魔窗為例髓棋,講解如何配置骑丸。魔窗iOS集成文檔

用魔窗的話iOS端只需要做三部分操作,分別是魔窗后臺(tái)配置部分何之,Xcode配置部分嚷辅,代碼實(shí)現(xiàn)部分煤墙。下面將詳細(xì)描述步驟麻惶。

魔窗后臺(tái)配置部分

①注冊一個(gè)魔窗賬號 魔窗注冊?

②賬號注冊完畢后馍刮,登錄魔窗點(diǎn)擊右上角新增產(chǎn)品然后選擇App。

③要填寫的信息分為三部分用踩,分別是產(chǎn)品信息渠退,App信息,魔窗位信息脐彩。產(chǎn)品信息沒什么可講的碎乃,魔窗位信息可以不填 無視。App信息頁面如下圖

應(yīng)用寶下載地址惠奸,基本大多數(shù)公司都會(huì)有梅誓,直接填上即可。

應(yīng)用名稱和Bundle ID不用解釋 直接填上

URL Scheme:這個(gè)LiveRoom名稱可以自己隨便起佛南,但要保證跟Xcode里面URL Scheme 保持一致(后面會(huì)講解Xcode中的配置)梗掰。

下載地址就是應(yīng)用程序在App Store里面的下載地址。

Team ID :如何獲取Team ID?按照教程得到填寫即可嗅回。

將這些都填寫完畢后及穗,魔窗會(huì)給你分配一個(gè)域名,這個(gè)域名會(huì)在后面Xcode中配置使用到绵载。

魔窗分配的域名

魔窗位信息無視埂陆,下一步,然后注冊完畢后娃豹,會(huì)得到一個(gè)App key焚虱,這個(gè)是魔窗App key

魔窗App key

④想要使用深度鏈接,還需要配置魔窗的mlink服務(wù)懂版,如下圖


點(diǎn)擊添加mLink服務(wù)

點(diǎn)擊添加mLink服務(wù)后鹃栽,如下圖


mLikn服務(wù)配置頁面

mLink服務(wù)名稱可自己配置 ?mLink服務(wù)key也可自己配置 這個(gè)key后面代碼里面需要使用。

然后就是URL如何拼接了躯畴。比如你app中有用戶的個(gè)人中心民鼓,且可以用參數(shù)決定是否顯示用戶的詳細(xì)信息,那么您需要輸入的頁面URI如下:mw://www.mycompany.com/user/:userId?containsDetail=:containsDetail私股。這里mw://為URI Scheme摹察,可從外部喚醒App,在“App管理”中設(shè)置倡鲸。www.mycompany.com是hostname供嚎,user是path。url不懂得如何配置的可參考魔窗上面的點(diǎn)擊查看如何配置URL峭状,簡言之克滴,就是服務(wù)器地址后面拼參數(shù)。

這些填完以后优床,會(huì)得到一個(gè)短連接劝赔。


至此,魔窗的所有配置均已做完胆敞。

小結(jié):魔窗的配置是為了獲得五個(gè)關(guān)鍵參數(shù)着帽,以供后面配置使用杂伟。分別是URL Scheme,魔窗App key仍翰,魔窗mLink key ?魔窗域名 魔窗短連接赫粥。

Xcode配置部分

Xcode這邊配置非常容易,就兩步即可予借。

①配置URL Scheme 這里的identifier可填可不填沒影響越平,URL Schemes這里填在魔窗后臺(tái)配置時(shí),你寫的URL Scheme灵迫,魔窗跟Xcode這里二者必須保持一致

Xcode URL Scheme配置


②applinks配置 這里的Domains一定要填你之前在魔窗配置后獲得的那個(gè)魔窗域名秦叛,這里要保證不能出差錯(cuò),否則無法完成跳轉(zhuǎn)

Xcode applinks配置

Xcode的配置到這里就完成了瀑粥。

代碼實(shí)現(xiàn)部分

①集成魔窗sdk挣跋,手動(dòng)和cocopods兩種方式,手動(dòng)請參考魔窗文檔利凑,下面只講cocopods集成

pod 'MagicWindowSDK'

pod install

記住不要pod update浆劲,因?yàn)槟Т皊dk自己集成了微信分享,非常容易跟shareSDK 友盟分享SDK沖突哀澈。

②Appdelegate中實(shí)現(xiàn)注冊魔窗

在didFinishLaunchingWithOptions這個(gè)app初始化方法里面牌借, 其中MWKey就是魔窗key, liveRoomKey需要你替換成之前配置的魔窗mLink key割按∨虮ǎ回調(diào)代碼里面,不同的項(xiàng)目有不同需求适荣,靈活應(yīng)變即可现柠。

注冊并實(shí)現(xiàn)通用連接的回調(diào)

下圖是官網(wǎng)推薦的回調(diào)代碼內(nèi)容:

魔窗推薦的回調(diào)代碼

③Appdelegate中實(shí)現(xiàn)必要的方法,在.m中 實(shí)現(xiàn)以下這三個(gè)方法即可弛矛。這里我的openUrl有做判斷够吩,因?yàn)轫?xiàng)目里面集成了友盟分享,如果不做判斷的話丈氓,會(huì)很容易沖突周循。大家根據(jù)自己的項(xiàng)目,靈活處理即可万俗。

至此湾笛,iOS端就完成了所有的配置,看著文章內(nèi)容很多闰歪,其實(shí)配置起來還是很快很簡單的嚎研。將你之前獲得的魔窗短鏈,交給你們的web開發(fā)小伙伴库倘,讓他參考這篇文章临扮,進(jìn)行web端的配置即可魔窗JS API论矾。(超簡單)

小提示:如果你按教程配置完事了,發(fā)現(xiàn)qq分享出去的鏈接杆勇,可以正常跳到自家的App某個(gè)頁面拇囊,而微信的不行,那么可以先排除是不是h5鏈接的原因靶橱。測試方法,直接用短連接+參數(shù) https://ab9e1n.mlinks.cc/AcJF?roomId=0849170 如果類似這樣的鏈接在微信里面正常路捧,那么可推斷是web端原因关霸,如果這樣的鏈接也不正常,那么則是App端沒配置好杰扫,可檢測下AppDelegate.m需要實(shí)現(xiàn)的那三個(gè)方法有沒有實(shí)現(xiàn)队寇,是不是寫錯(cuò)了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末章姓,一起剝皮案震驚了整個(gè)濱河市佳遣,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌凡伊,老刑警劉巖零渐,帶你破解...
    沈念sama閱讀 216,402評論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異系忙,居然都是意外死亡诵盼,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評論 3 392
  • 文/潘曉璐 我一進(jìn)店門银还,熙熙樓的掌柜王于貴愁眉苦臉地迎上來风宁,“玉大人,你說我怎么就攤上這事蛹疯〗洳疲” “怎么了?”我有些...
    開封第一講書人閱讀 162,483評論 0 353
  • 文/不壞的土叔 我叫張陵捺弦,是天一觀的道長饮寞。 經(jīng)常有香客問我,道長羹呵,這世上最難降的妖魔是什么骂际? 我笑而不...
    開封第一講書人閱讀 58,165評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮冈欢,結(jié)果婚禮上歉铝,老公的妹妹穿的比我還像新娘。我一直安慰自己凑耻,他們只是感情好太示,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,176評論 6 388
  • 文/花漫 我一把揭開白布柠贤。 她就那樣靜靜地躺著,像睡著了一般类缤。 火紅的嫁衣襯著肌膚如雪臼勉。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,146評論 1 297
  • 那天餐弱,我揣著相機(jī)與錄音宴霸,去河邊找鬼。 笑死膏蚓,一個(gè)胖子當(dāng)著我的面吹牛瓢谢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播驮瞧,決...
    沈念sama閱讀 40,032評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼氓扛,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了论笔?” 一聲冷哼從身側(cè)響起采郎,我...
    開封第一講書人閱讀 38,896評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎狂魔,沒想到半個(gè)月后蒜埋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,311評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡最楷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,536評論 2 332
  • 正文 我和宋清朗相戀三年理茎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片管嬉。...
    茶點(diǎn)故事閱讀 39,696評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡皂林,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蚯撩,到底是詐尸還是另有隱情础倍,我是刑警寧澤,帶...
    沈念sama閱讀 35,413評論 5 343
  • 正文 年R本政府宣布胎挎,位于F島的核電站沟启,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏犹菇。R本人自食惡果不足惜德迹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,008評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望揭芍。 院中可真熱鬧胳搞,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至悬而,卻和暖如春呜舒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背笨奠。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評論 1 269
  • 我被黑心中介騙來泰國打工袭蝗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人般婆。 一個(gè)月前我還...
    沈念sama閱讀 47,698評論 2 368
  • 正文 我出身青樓呻袭,卻偏偏與公主長得像,于是被迫代替她去往敵國和親腺兴。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,592評論 2 353

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

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理廉侧,服務(wù)發(fā)現(xiàn)页响,斷路器,智...
    卡卡羅2017閱讀 134,651評論 18 139
  • 用到的組件 1段誊、通過CocoaPods安裝 2闰蚕、第三方類庫安裝 3、第三方服務(wù) 友盟社會(huì)化分享組件 友盟用戶反饋 ...
    SunnyLeong閱讀 14,613評論 1 180
  • (窗外漸白)一杯溫水看天明连舍,一部手機(jī)可過夜没陡。夜里漫長聽秋聲,風(fēng)吹雨敲窗臺(tái)響索赏。顯山現(xiàn)水見風(fēng)樓盼玄,風(fēng)吹雨下空氣清。天氣漸...
    甘朝武閱讀 279評論 0 0
  • 盡管我們總會(huì)遇到無窮無盡的混蛋和笨蛋,但總會(huì)有一些人融涣,讓你感到生命的溫暖和滿足童番,讓你感到生命的不虛此行⊥梗——羅永浩...
    韓武紀(jì)閱讀 789評論 0 2
  • 一次說走就走來到心念已久的色達(dá) 一路艱辛的旅途只為了那一抹紅 一路走來看見很多朝拜的人剃斧,一起一跪之間飽含了他們的虔...
    MAGUOYUE閱讀 205評論 0 0