在IOS應用中開啟另外乙個應用的解決方案

2022-08-21 23:45:11 字數 1603 閱讀 3180

註冊自定義url協議

首先被啟動的應用需要向iphone註冊乙個自定義url協議。這是在你的專案資料夾的info.plist檔案進行的(就是你改變應用程式圖示的同乙個檔案)。step1. 右鍵,選擇「add row」step2. key值選擇「url types」step3. 開啟「item 0″,然後為該key增加乙個url identifier。可以是任何值,但建議用「反網域名稱」(例如 「com.fcplayer.testhello」)。step4. 在「item 0」下再加一行。step5. 選擇「url schemes」 作為key。step6. 輸入你的url協議名 (例如「testhello://」 應寫做「testhello」)。如果有必要,你可以在這裡加入多個協議。操作截圖如下:

訪問自定義url

在主應用程式中通過訪問自定義url啟動另外乙個應用:

[csharp]view plain

copy

}自定義處理url

有些時候我們除了啟動還需向另外乙個應用傳送引數,這是也可以通過自定義的url來實現,如:

testhello://testhello:

通常,我們會從引數中解析出url以便在檢視中顯示或者儲存到userpreference。下面的例子把url儲存為user preference的url變數中或者列印出來:

[csharp]

view plaincopy

(!url)   

,urlstring);  

yes;  

其他

基本上至此我們就已經實現乙個應用程式中啟動另外乙個應用的功能,但是為了是我們的**更加強壯,我在網上又找了一段訪問**,如下:

[csharp]

view plaincopy

:self  

([abundleurltypes iskindofclass:[nsarray 

class

([abundleurltypes0 iskindofclass:[nsdictionary 

class

([abundleurlschemes iskindofclass:[nsarray 

class

([scheme iskindofclass:[nsstring 

class

if(!bschemeinplist || !bcanopenurl)  else

nslog

@"can not openurl");

- (void

) touchesbegan:(nsset *)touches withevent:(uievent *)event

nslog

@"touchesbegan");

ifnslog

@"canopenurl");

} else

nslog

@"can not openurl");

4、分別執行下兩個專案,然後無論把其中乙個專案程序殺掉,或者使其進入休眠,都可以通過另乙個專案來開啟另乙個專案。

在IOS應用中開啟另外乙個應用

註冊自定義url協議 首先被啟動的應用需要向iphone註冊乙個自定義url協議。這是在你的專案資料夾的info.plist檔案進行的 就是你改變應用程式圖示的同乙個檔案 step1.右鍵,選擇 add row step2.key值選擇 url types step3.開啟 item 0 然後為該k...

在IOS應用中開啟另外乙個應用的解決方案

註冊自定義url協議 首先被啟動的應用需要向iphone註冊乙個自定義url協議。這是在你的專案資料夾的info.plist檔案進行的 就是你改變應用程式圖示的同乙個檔案 step1.右鍵,選擇 add row step2.key值選擇 url types step3.開啟 item 0 然後為該k...

在IOS應用中開啟另外乙個應用的解決方案

註冊自定義url協議 首先被啟動的應用需要向iphone註冊乙個自定義url協議。這是在你的專案資料夾的info.plist檔案進行的 就是你改變應用程式圖示的同乙個檔案 step1.右鍵,選擇 add row step2.key值選擇 url types step3.開啟 item 0 然後為該k...