我們來討論一下,在iOS開發中,如何實現從app1打開app2。
基本的思路就是,可以為app2定義一個URL,在app1中通過打開這個URL來打開app2,在此過程中,可以傳送一些參數。下面來討論一下具體的實現過程。
2. 在app1的代碼中打開剛才定義的URL,代碼如下:
NSURL *url = [NSURL URLWithString:@"myapp://test?para1=1¶2=2"]; [[UIApplication sharedApplication] openURL:url];
當然,這個URL的形式可以是其他形式的,只要以"myapp://"開始即可。
這樣,就可以在app1中打開app2.
打開之后,會調用app2的AppDelegate的
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
由於URL是自己定義的,所以會存在URL重復的情況。經過測試發現,如果試圖打開這個URL,那么會打開先安裝的那個應用。