iOS進程間通訊的心得


隨着iOS的迅速發展,各式各樣的app可謂是層出不窮,iOS開發人員在開發的過程中自然而然會遇到很多進程間通信的需求.

閑扯完了,現在進入正題,當時我們的項目需要做分享,產品那邊希望做成對方點擊分享過去的鏈接能夠直接打開他的本地應用(對方也裝了你的app),當時拿到需求文檔的時候還是第一次做進程間通訊,分析的時候遇到了如下瓶頸:

1,首先需要在別的app中打開自己的app

2,如何讓自己的app知道需要顯示哪一個詳情頁,也就是說如何將值傳進來,以為蘋果的沙盒機制,所以兩個app之間不可能有任何本地交集的

后來經過查資料發現,蘋果早已看透了這一切--IPC(進程間通信技術)

配置步驟如下:

1.程序->info->URL Types->點擊"+"

2.配置URL Schemes,如下圖:

到此配置就結束了,這個時候打開safari(記住只能是Safari打開),然后在網址欄中輸入  " (你制定的url schemes):// "   點擊'前往'就可以打開你的app了,例如這里我用的是  "happy"

那么只要我在Safari里邊輸入  "happy://"  為頭的url即使不帶任何后綴就可以打開我的app了.

上邊提到的只是能夠打開app,但是並沒有做到傳值,下邊就讓我們來探討一下傳值,傳值是在上邊的配置基礎上進行的

首先,在上邊的基礎上我們還需要實現appdelegate的一個代理方法:

如果上邊我是用  "happy://hello" url打開我的app的話,那么我在這個代理方法里邊打印openURL的話就會發現打印結果就是我用來打開app的url,

這里是隨便傳的值,如果把你想要的值拼接到 "happy://" 后邊, 就可以實現從一個app傳值到另外一個app了.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM