iOS最新支付宝支付不回调处理
2019-04-02 本文已影响414人
zuolingfeng
支付宝SDK版本:SDK_15.6.0,下载地址:https://docs.open.alipay.com/54/104509
由于我们支付宝要集成退款功能,最近把之前的RSA加密方式换成RSA2,发现在官方DEMO里面,支付宝回调不执行,通过查看注释信息看到

发现:只有当processOrderWithPaymentResult接口的completionBlock为nil时会使用这个bolock;
所以把completionBlock置为nil即可:
[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:nil];
AppDelegate代码如下:
#pragma mark ----------------支付宝支付
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options
{
//跳转支付宝钱包进行支付,处理支付结果
if ([url.host isEqualToString:@"safepay"]) {
[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:nil];
}
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
//跳转支付宝钱包进行支付,处理支付结果
if ([url.host isEqualToString:@"safepay"]) {
[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:nil];
}
return YES;
}
这样就会走支付回调了:
// NOTE: 调用支付结果开始支付
[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {
NSLog(@"resultDic:%@", resultDic);
}];
支付宝新版回调问题解决!!