1. 程式人生 > >iOS 從一個app開啟另一個app

iOS 從一個app開啟另一個app


第一步:對B操作(對B的info.plist中自定義url types)

技術分享

注意, 這裡的URL Schemes必填, URL identifier選填。

另外,URL Schemes建議都小寫,由於之後接收到資料的時候,不區分大寫和小寫, 都是轉為小寫。

規定的格式是   URL Schemes://URL identifier




第二步:對A操作(在響應方法中新增響應程式碼,如圖所示)

上圖程式碼:
        NSURL *url = [NSURL URLWithString:@"martinapp://com.martin.app"];
        [[UIApplication sharedApplication] openURL:url];

第三步:
    模擬器執行:先對B進行Build操作,而對A進行run即可
    真機執行:首先保證B存在於真機中,而後執行A即可。

 你須要在 Appdelegate.m中加入例如以下程式碼, 來處理接受到請求後做出的處理
//處理URL請求
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    NSLog(@"%@", url);
    
    if ([[url scheme] isEqualToString:@"myurltest"])
    {
        //處理連結
        NSString *text = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        UIAlertView *myAlert = [[UIAlertView alloc]initWithTitle:@"新訊息" message:text delegate:self cancelButtonTitle:@"知道了" otherButtonTitles: nil];
        [myAlert show];
        
        return YES;
    }
    
    return NO;
}