1,在A项目中需要下面的配置
然后在项目A中的AppDelegate中
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options{
NSLog(@"===%@==",[url host]);
NSLog(@"===%@==",[url query]);
NSLog(@"options==%@",options);
UIWindow *alertWindow = [UIApplication sharedApplication].keyWindow;
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" message:[url query] preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleCancel handler:nil];
[alertController addAction:cancelAction];
//显示弹出框
[alertWindow.rootViewController presentViewController:alertController animated:YES completion:nil];
return YES;
}
当其他的app跳转到这个app(即项目A)的时候,会执行上面的方法
2,在项目B中也需要配置一个LSApplicationQueriesSchemes白名单,
用下面的方法就可以从项目B中跳转到A中,
//name和phone都是带的参数,你也可以不带
NSString *urlStr = @"iOSAPP://zhou.yingyong?name=lisi&phone=12345";
if ([[UIApplication sharedApplication]
canOpenURL:[NSURL URLWithString:urlStr]]){
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr] options:nil completionHandler:nil];
}