被打开的app必须先定义好scheme,这里不再说明
1. iOS9之前打开时的调用方式
NSURL *URL = [NSURL URLWithString:@"wx://xxxx"];
if([[UIApplication sharedApplication] canOpenURL:URL]){
[[UIApplication sharedApplication] openURL:URL];
}
else {
NSLog(@"打开失败");
}
2. iOS9打开时的调用方式(需要在plist中将scheme添加到白名单,即几点LSApplicationQueriesSchemes中。 注:如果不添加仍可调用openURL方法,只是不能判断是否打开成功)
NSURL *URL = [NSURL URLWithString:@"wx://xxxx"];
if([[UIApplication sharedApplication] canOpenURL:URL]){
[[UIApplication sharedApplication] openURL:URL];
}
else {
NSLog(@"打开失败");
}
3. iOS10打开时的调用方式,不需要添加白名单
NSURL *URL = [NSURL URLWithString:@"wx://xxxx"];
[[UIApplication sharedApplication] openURL:URL options:@{UIApplicationOpenURLOptionUniversalLinksOnly : @NO} completionHandler:^(BOOL success) {
if(success){
NSLog(@"成功");
} else {
NSLog(@"失败");
}
}];