针对iOS9以下的设备,可以通过与H5之间定义协议完成分享间的跳转。
详细内容如下:

在appDelegate里面实现的代码:
#pragma mark - 支付宝 微信 异度支付
/**
* 当一个指定的URL资源打开时调用,iOS9之前
*
* @param url 指定的url
* @param sourceApplication 请求打开应用的bundle ID
*/
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
NSString *urlScheme = [url scheme];
if ([urlScheme isEqualToString:@"sqbj"]) {
[[SQURLSchemeManager urlSchemeInstance] getCurrentUrlScheme:url sourceApplication:sourceApplication];
return YES;
}
//微信支付
[WXApi handleOpenURL:url delegate:self];
//异度支付
NSArray * array = [[url absoluteString] componentsSeparatedByString:@"//"];
if ([[array lastObject] isEqualToString:@"notInstall"]) {
UIAlertView *aler = [[UIAlertView alloc] initWithTitle:nil message:@"未安装" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[aler show];
}
return YES;
}
这个地方的调用方法,可以参考通用链接里面的单例进行查看
if ([urlScheme isEqualToString:@"sqbj"]) {
[[SQURLSchemeManager urlSchemeInstance] getCurrentUrlScheme:url sourceApplication:sourceApplication];
return YES;
}
网友评论