iOS 網(wǎng)頁打開APP,并且跳轉(zhuǎn)到對應(yīng)界面

大家在瀏覽網(wǎng)頁的時候,有時會遇到這種情況。當(dāng)你的手機(jī)中有某一個APP的時候,恰巧你打開的網(wǎng)頁是該APP官網(wǎng)的某個頁面,這時瀏覽器會提示你,“在‘xxx’中打開?”這幾個字樣,點(diǎn)擊“打開”后,系統(tǒng)就會自動打開APP,并且跳轉(zhuǎn)到對應(yīng)頁面。這個和點(diǎn)擊推送打開APP并且跳轉(zhuǎn)的功能很類似。那么,我們需要怎么配置才合理呢?

首先我們需要在APP內(nèi)部設(shè)定一個URL Schemes。你可以把它理解為APP在網(wǎng)頁端的文本傳輸協(xié)議,比如:http。在網(wǎng)頁端,當(dāng)調(diào)用一個網(wǎng)址時,iOS系統(tǒng)會自動檢測該網(wǎng)址是否是一個APP注冊的URL Schemes,如果是,就會提示打開該APP。聽起來很抽象對吧,哈哈哈,先看圖:

URL Schemes.jpg

這樣我就生成了一個URL Schemes:test-deepLinking。所以,調(diào)用“test-deepLinking://”時,瀏覽器就會提示你,“在‘你的APP名’中打開?”。so easy有木有。

1.jpeg

2.jpeg

當(dāng)然了,此時的效果僅僅限于能幫你在瀏覽器打開APP而已,接下來就是跳轉(zhuǎn)了。

在AppDelegate中,有這樣的一個方法

-(BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id>*)options{returnYES;}

當(dāng)用戶用過URL Schemes打開APP時,就會調(diào)用這個方法。并且將對應(yīng)的網(wǎng)址URL通過方法對應(yīng)的參數(shù)“url”傳遞給你。這個時候,你就可以將傳過來的url進(jìn)行處理并且跳轉(zhuǎn)了。比如:輸入了一個網(wǎng)址test-deeplinking://test/product/123,這時候我在APP中就能取到product/123,然后知道了需要跳轉(zhuǎn)到Product頁面,id是123。(這里面的規(guī)則各不相同,可以根據(jù)各個公司需求而定)如下:

3.jpeg

4.jpeg

很簡單吧,接下來只要和公司做好規(guī)則,然后就可以輕松的進(jìn)行網(wǎng)頁和APP之間的跳轉(zhuǎn)了。當(dāng)然我需要提醒一下大家,因?yàn)镾afari是蘋果公司的官方瀏覽器,所以大家在進(jìn)行測試的時候還是主要使用Safari,用別的瀏覽器可能實(shí)現(xiàn)不了跳轉(zhuǎn),這個是沒有辦法的事情(我也很無奈T_T)。

轉(zhuǎn)載:http://www.itdecent.cn/p/8e7a9eb49358

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容