iOS跳轉到另一個程式

來源:互聯網
上載者:User

標籤:

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

原文連結: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跳轉到另一個程式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.