iOS 如何在一個應用程序中調用另一個應用程序

我這裏只是寫了部分東西,如果想看更加詳細的,請點擊原文鏈接.

原文鏈接: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內容。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章