从项目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<UIApplicationOpenURLOptionsKey,id> *)options {
// 打印出来的就是项目A传递过来的参数
NSLog(@"%@",[url host] );
return YES;
}