標籤:
我這裡只是寫了部分東西,如果想看更加詳細的,請點擊原文連結.
原文連結:http://blog.csdn.net/likendsl/article/details/7553605 原則上iOS的沙箱原理,是阻止一個app去訪問其他app的資源乃至是系統底層的資源的但是我們可以通過一種變相的方式:通過對應的URL模式和其他程式進行通訊.iOS應用之間的調用步驟: 一, 調用自己開發的應用 1)在plist檔案中,註冊對外介面 在xcode group&files 裡面,展開 resources選擇info.plist滑鼠右擊information property list ,然後從列表中選擇URL types右擊 add row 添加一個對象(item)右擊item add row從列表中選擇 URL Schemes 再右擊添加一個對象(item1)將item1得值設定為:myapp這個myapp就是對外介面,其它應用可以通過它,調用該應用plist如所示:2).處理URL請求應用程式委託在
application:handleOpenURL:方法中處理傳遞給應用程式的URL請求。如果您已經為自己 的應用程式註冊了定製的URL模式,則務必在委託中實現這個方法。下面代碼實現了這個委託方法; - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{if([[url scheme] isEqualToString:@"myapp"]){[application setApplicationIconBadgeNumber:10];return YES;}return NO;}3).測試外部調用1.回到Home螢幕,啟動Safari(在iPhone模擬器上,在菜單上選擇Hardware->Home命令就可以回到Home螢幕)。2.在Safari的地址欄中,鍵入使用定製模式的URL: myapp:3.確認您的應用程式是否啟動,以及應用程式委託是否收到application:handleOpenURL:訊息。4)調用方法 在你需要調用上面註冊過對外介面的應用中,添加下面代碼即可 NSURL *url = [NSURL URLWithString:@"myapp:"]; [[UIApplication sharedApplication] openURL:url]; 通過上述兩個步驟,你可以在你的應用中,讓使用者開啟你的其它應用
二, 調用IOS內建的應用
上面講述的是調用自身的應用,講解了如何在自己應用之間調用問題,今天介紹一下如果調用IOS內建的app的方法
一、調用app store介面方法
在實際開發中,往往要推薦自己其他應用和推薦自己的收費軟體,那麼我們就需要在程式中直接連接到app store的相應頁面。
實際上的做法很簡單,使用的還是UIApplication類的OpenURL方法:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"程式的相應串連"]];
二、調用其它應用的方法
1)調用 內建mail?
[[UIApplicationsharedApplication] openURL:[NSURLURLWithString:@"mailto://[email protected]"]];
2)調用 電話phone?
[[UIApplication sharedApplication] openURL:[NSURLURLWithString:@"tel://8008808888"]];?
3)調用 SMS
?[[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];?
4)調用內建 瀏覽器 safari
?[[UIApplicationsharedApplication] openURL:[NSURLURLWithString:@"http://www.hzlzh.com"]];
5)調用 Remote
?[[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@"remote://fff"]];
上面是最基本的語句,沒什麼處理過程。
如:調用phone可以傳遞號碼,調用SMS只能設定號碼,不能初始化SMS內容。
IOS 應用程式間跳轉最近開發的程式需要整合到公司的sso統一身份認證平台中,需要從認證平台的app跳轉到我們開發的這個app。
下面時程式中需要配置的地方
在目標程式的plist檔案裡面修改:
開啟xxxx-info.plist,添加一項URL types
開啟URL types,將item0的URL identifier修改為URL Schems
展開URL Schemes,將item0的內容修改為xxxApp(此為跳轉的key)
如所示:
在程式裡面需要跳轉的地方,添加代碼
NSURL *myUrl = [NSURL URLWithString:@"xxxApp://abcde"]; //xxxApp為目標App跳轉的key
if([[UIApplication sharedApplication] canOpenURL:myUrl]){
[[UIAppliactioin sharedApplication] openURL:myUrl];
}
這樣就可以實現跳轉了。
iOS跳轉到另一個程式