你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> IOS APP與APP和APP與Safari間的跳轉

IOS APP與APP和APP與Safari間的跳轉

編輯:IOS開發綜合

最近做項目遇到這麼一個需求:從APP 跳轉到 Safari 然後再跳回APP 。以前做過從APP 跳到Safari ,很簡單,這裡就不多說了。重點說一下從Safari跳回到APP,以及從APP跳到APP。(其實這兩個幾乎是一回事。)

首先從Safari跳到APP

既然要想跳到你指定的APP,那麼就需要在你的APP中定義一個特殊的標示,也就是一個URL協議。

定義URL協議的如下圖 TARGETS ——> info ——>URL Types——>添加一個URL協議

\

如圖 其中URL Schemes字段就是你這個APP的特殊標示,而indentifier字段是這個URL協議的標示。(一個APP可以擁有多個URL協議)

下面的兩個字段可為空。最後再運行一下你的APP。

接下來就是見證奇跡的時刻了

打開你模擬器中的Safari浏覽器,在輸入在地址欄輸入:appABC://

然後回車,結果就是你想要的。(是不是很簡單?)

有時候你可能需要在從Safari跳回到APP時傳一些參數,那麼又有什麼方法可以接收這些參數呢?

在appdelegate.m文件中寫下如下方法

\

這個方法是系統自動調用的方法,意思是:如果APP是通過openURL打開的自動調用此方法。而參數 url 就是打開APP的特定的URL。也就是上面的 appABC:// ,但是怎麼通過這個方法傳參呢?

答案就在URL中,你可以在 appABC:// 後面加上任何你想要的字符參數,例如appABC://name:wanglei//name:lilei

至於如何把這些參數給解析出來,就看你怎麼處理了。

下面是 APP(A)跳轉APP(B)

前面說了他們之間的原理是一樣的,從Safari跳到APP是通過打開特定的URL,那麼從 APP(A)跳轉APP(B)是不是也要打開特定的URL呢?

答案是肯定的,那麼怎麼打開這個特定的URL呢,其實在UIApplication裡面有這麼一個方法openURL,如下

[[UIApplication shareApplication] openURL:url]

參數URL為APP(B)特定的URL協議所表示的URL(後面會附上demo)

至於對參數的處理同上

下面是APP(A)與APP(B)相互跳到轉的demo

 

 

 

 

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved