iOS巅峰之两个App之间相互调用并携带参数传值

1、新建两个项目:AppOne,AppTwo;

2、分别在其属性列表中添加如下:

AppOne:  



AppTwo:



AppOne的 viewController.m 中添加代码:

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{



    

    NSURL *url  = [NSURLURLWithString:@"AppTwo:"];

    if ([[UIApplicationsharedApplicationcanOpenURL:url])  // 判断设备是否安装了AppTwo

    {

        NSLog(@"canOpenURL");

        [[UIApplication sharedApplicationopenURL:url]; // 打开AppTwo应用, 如果你想携带参数: NSURL *url  = [NSURLURLWithString:@"AppTwo://你想携带的代数"];

    } else

    {

        NSLog(@"can not OpenURL");

    }

}


AppTwo的 viewController.m 中添加代码:



// AppDelegate里面接收url

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options

{

     NSLog(@"--%@", url);

    return YES;

}




- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

{

    

    NSLog(@"touchesBegan");

    

    NSURL *url  = [NSURLURLWithString:@"AppOne:"];

    

    if ([[UIApplicationsharedApplicationcanOpenURL:url])

    {

        NSLog(@"canOpenURL");

        [[UIApplication sharedApplicationopenURL:url];

    } else

    {

        NSLog(@"can not OpenURL");

    }

}



猜你喜欢

转载自blog.csdn.net/qw656567/article/details/52859433