標籤:

兩個APP之間實現跳轉

兩個APP之間實現跳轉 分類: IOS 2014-07-28 09:58 61人閱讀 評論(0) 收藏 舉報 IOSAPP間跳轉 一個程序若要跳到另一個程序。需要在目標程序的plist文件裡面修改:打開info.plist,添加一項URL types

展開URL types,再展開Item0,將Item0下的URL identifier修改為URL Scheme

展開URL Scheme,將Item0的內容修改為shashan.SecondApp(此為跳轉的key)。然後在原程序裡面,要開始跳轉的地方,可以為一個button的方法。裡面寫上:NSURL * myURL_APP_A = [NSURL URLWithString:@「shashan.SecondApp://AAAAA"];//shashan.SecondApp為目標App的keyif ([[UIApplication sharedApplication] canOpenURL:myURL_APP_A]) {NSLog(@"canOpenURL");[[UIApplication sharedApplication] openURL:myURL_APP_A];}然後就可以跳轉了。如果要跳回,方法相同。

已有應用程序AppStore裡面找到應用程序,點擊應用程序下面的小三角圖標,再選擇」複製鏈接「,就可以獲取此應用的鏈接了。

比如:

itunes.apple.com/cn/app/bai-du-wen-kuhd/id483064532?mt=8

然後將 https:// 替換為itms:// 或者itms-apps://:

itms://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8itms-apps://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8然後在程序中寫如下代碼:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms://itunes.apple.com/cn/app/bai-du-wen-kuhd/id483064532?mt=8"]];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itunes.apple.com/cn/app/bai-du-wen-kuhd/id483064532?mt=8"]]

注意:只能在真機上調試出效果,模擬器上無效果。下面附贈主要代碼:在本APP的.m文件中,主要代碼有

// 本App跳轉到SecondApp

- (IBAction)appJumpToAnotherAppAction:(id)sender

{

NSURL *url = [NSURLURLWithString:@"shanshan.SecondApp://AAAA"];//通過openUrl進行跳轉,可以傳遞一些參數

if ([[UIApplicationsharedApplication]canOpenURL:url]) {

[[UIApplicationsharedApplication]openURL:url];

}else{

NSLog(@"應用程序未安裝");

}

}

// 本App跳轉到AppStore

- (IBAction)AppChangeToAppStore:(id)sender

{

[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"itms://itunes.apple.com/cn/app/bai-du-wen-kuhd/id483064532?mt=8"]];

[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"itunes.apple.com/cn/app/bai-du-wen-kuhd/id483064532?mt=8"]];

}

在SecondAPP

AppDelegate 中的主要代碼

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

{

if ([[urlscheme]isEqualToString:@"shanshan.SecondApp"]) {

NSLog(@"從%@跳轉過來的 - %@",sourceApplication,[url resourceSpecifier]);

self.otherString = [[[urlresourceSpecifier]componentsSeparatedByString:@"//"]objectAtIndex:1];

NSLog(@"傳遞過來的參數 = %@",self.otherString);

}

return YES;

}

  • 推薦閱讀:

    這才是真正的鴻鵠之志:窮小子竟想讓全縣人民給他媽守陵,結果最後還真實現了
    高度的文化自信是實現中華民族 偉大復興的強大精神動力
    如果此「白日夢」能實現,我願折壽2年!!(圖)
    實現自利與利人的互動
    4.6米距離真正的無線充電:WattUp能實現嗎?

    TAG:實現 |