美文网首页
在两个应用App之间进行跳转

在两个应用App之间进行跳转

作者: iOS_Xue | 来源:发表于2016-07-23 17:59 被阅读38次
    1、MyApp、AimApp设置
    MyApp添加其他App打开自身的标识 AimAPP添加其他App打开自身的标识

    2、现在就可进行跳转了

    MyApp 跳转 AimApp,在MyApp中添加以下代码

    NSString *paramStr = [NSString stringWithFormat:@"AimApp://key1=%@&key2=%@&key3=%@", value1, value2, value3]; 
    //防止出现中文,进行转码
    paramStr = [paramStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    NSURL *url = [NSURL URLWithString:paramStr];   
    [[UIApplication sharedApplication] openURL:url];
    

    AimApp中接收数据

    - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
        sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
    {
        NSString *urlStr = [url absoluteString];
        if ([urlStr hasPrefix:@"AimApp://"]) {
            NSLog(@"MyApp request params: %@", urlStr);
            urlStr = [urlStr stringByReplacingOccurrencesOfString:@"AimApp://" withString:@""];
            NSArray *paramArray = [urlStr componentsSeparatedByString:@"&"];
            NSLog(@"paramArray: %@", paramArray);
            NSMutableDictionary *paramsDic = [[NSMutableDictionary alloc] initWithCapacity:0];
            for (int i = 0; i < paramArray.count; i++) {
                NSString *str = paramArray[i];
                NSArray *keyArray = [str componentsSeparatedByString:@"="];
                NSString *key = keyArray[0];
                NSString *value = keyArray[1];
                [paramsDic setObject:value forKey:key];
                NSLog(@"key:%@ ==== value:%@", key, value);
            }
            
        }
        return NO;
    }
    

    AimApp 跳转 MyApp 同样的设置,只是修改一下AimApp://,接收的时候判断是否是MyApp://开头就好。

    相关文章

      网友评论

          本文标题:在两个应用App之间进行跳转

          本文链接:https://www.haomeiwen.com/subject/kwdwjttx.html