我寫了兩個應用程序,我需要它們之間的交互。我的意思是,在第一個應用程序中,有一個視圖,您需要添加一個數字。但如果你不想寫下來,另一個應用程序會爲你生成它。所以我需要第二個應用生成的數字,並用它填充視圖。Objective C從另一個應用程序中檢索數據
我讀了很多關於這個主題,我知道我必須使用自定義URL方案。關於這個的好文章例如:link。所以,如果我明白,我需要確定的方案是這樣的:
在第一個應用程序:
- URL標識: com.mycompany.myfirstapp
- URL方案的第一個項目:myFirstApp
在第二應用程式:
- URL標識符: 個com.mycompany.mysecondapp
- URL方案的第一個項目:mySecondApp
然後在第一個應用程序,例如在按鈕的IBAction爲:
[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mySecondApp://pleaseGenerateNumber"]];
在第二個應用程序,我要實現所述
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
方法和
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
方法。然後解析URL,並進行數字生成。但問題在這裏。我怎樣才能向第一個應用程序「告訴」第一個應用程序生成的數字?我必須再次使用openURL,並通過URL檢索號碼?
@Andreas:[cocoa]標記用於Mac OS X.對於iOS,請使用[cocoa-touch]。 – 2011-04-14 13:18:33
@Bavarious:沒有看到問題中提到的ios(僅)。它適用於兩者,所以添加兩個標籤?另外:刪除Objective-C標籤? API不是「嚴格」的語言綁定?! – Andreas 2011-04-14 15:00:22
@Andreas我同意,有時答案適用於這兩個平臺。但在這種情況下,'UIApplication'絕對是iOS,Mac OS X中的進程間/應用程序間通信允許一系列不適用於iOS的不同答案。 – 2011-04-14 21:32:02