iOS一个app打开另一个app 并传参

从项目A跳转到项目B,并将项目A里面相关参数带到项目B

一:项目B配置

打开Info,在URL Types里面配置URL。URL自定义即可,注意:最好特殊点,避免更别的app重复。


二:项目A配置

1、在要打开项目B的地方调用如下代码:

 if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"wstest://"]]) {
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"wstest://"]];
    }

2、在项目A的Info里面添加LSApplicationQueriesSchemes,设置白名单,否则canOpenURL报错。



此时就可以了。

三:参数传递

1、在项目A里面,将跳转的参数写在//后面。

 if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"wstest://"]]) {
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"wstest://要传递的参数"]];
    }

2、在项目B里面,在AppDelegate.m里面,实现下面方法即可

-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary *)options {
//  打印出来的就是项目A传递过来的参数
    NSLog(@"%@",[url host] );
    
    return YES;
}

你可能感兴趣的:(iOS一个app打开另一个app 并传参)