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<UIApplicationOpenURLOptionsKey,id> *)options {
//  打印出来的就是项目A传递过来的参数
    NSLog(@"%@",[url host] );
    
    return YES;
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容