调起支付使用的是
[[AlipaySDK defaultService] payOrder: fromScheme: callback:^(NSDictionary *resultDic) {NSLog(@"%@",result);} withFail:^(NSString *result) {NSLog(@"支付失败%@",result);}]解决办法:
在AppDelegate.m里面 添加 这个方法
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(nonnull NSDictionary<NSString *,id> *)options{
}
即可解决:
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(nonnull NSDictionary<NSString *,id> *)options{
//如果极简开发包不可用,会跳转支付宝钱包进行支付,需要将支付宝钱包的支付结果回传给开发包
if ([url.host isEqualToString:@"safepay"]) {
[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
//【由于在跳转支付宝客户端支付的过程中,商户app在后台很可能被系统kill了,所以pay接口的callback就会失效,请商户对standbyCallback返回的回调结果进行处理,就是在这个方法里面处理跟callback一样的逻辑】
NSLog(@"safepay result = %@",resultDic);
}];
}
if ([url.host isEqualToString:@"platformapi"]){//支付宝钱包快登授权返回authCode
[[AlipaySDK defaultService] processAuthResult:url standbyCallback:^(NSDictionary *resultDic) {
//【由于在跳转支付宝客户端支付的过程中,商户app在后台很可能被系统kill了,所以pay接口的callback就会失效,请商户对standbyCallback返回的回调结果进行处理,就是在这个方法里面处理跟callback一样的逻辑】
NSLog(@"platformapi result = %@",resultDic);
}
return YES;}
针对iOS9.0系统,当app接入支付宝并完成支付后无法正常回调的问题,解决方案是在AppDelegate.m文件中实现-(BOOL)application:openURL:options方法,确保支付成功的回调能正确执行。
1428

被折叠的 条评论
为什么被折叠?



