先新建两个project 分别明明为FirstApp和SecondApp
然后 分别在appdelegate里实现两个方法
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return YES;
}
然后在TARGETS --> info --> URL Types 里增加以各自app名字明明的urlscheme 方便别的app打开自己
使用FirstApp打开SecondApp:
NSString * urlStr = @"FirstOpenSecond";
NSURL * url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@",@"SecondApp://",urlStr]];
[[UIApplication sharedApplication] openURL:url];
其中的 FirstOpenSecond 就是我们要从FirstApp 传递给 SecondApp 的数据
在SecondApp中解析FirstApp传递过来的数据
在appdelegate方法中之前实现的 sourceApplication 方法里
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
ViewController * vc = _window.rootViewController;
vc.label.text = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
return YES;
}
这样 就可以拿到FirstApp 在打开 SecondApp 时 顺便传递过来的数据了