KONGYU_210
KONGYU_210
2019-05-16 15:48
采纳率: 92.1%
浏览 627
已采纳

iOS webView调起支付宝,支付成功后没有得到支付结果,什么原因?

BOOL isIntercepted = [[AlipaySDK defaultService] payInterceptorWithUrl:[request.URL absoluteString] fromScheme:@"jkyhjm" callback:^(NSDictionary *result) {
// 处理支付结果

    // isProcessUrlPay 代表 支付宝已经处理该URL
    if ([result[@"isProcessUrlPay"] boolValue]) {
        // returnUrl 代表 第三方App需要跳转的成功页URL
        NSString* urlStr = result[@"returnUrl"];
    }
}];

    按照文档,使用webView成功调起支付宝,在支付成功后。正常是在block可以得到支付结果,但是我测试支付成功,block并没有执行。大佬们知道什么原因吗?我已经按照文档(https://docs.open.alipay.com/203/106493)查看很多次,支付成功确没有得到支付的结果。
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • weixin_38934440
    weixin_38934440 2019-05-22 14:31
    已采纳
    • (BOOL)application:(UIApplication *)application
      openURL:(NSURL *)url
      sourceApplication:(NSString *)sourceApplication
      annotation:(id)annotation {

      if ([url.host isEqualToString:@"safepay"]) {
      //跳转支付宝钱包进行支付,处理支付结果
      [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
      NSLog(@"result = %@",resultDic);
      }];
      }
      return YES;
      }

    // NOTE: 9.0以后使用新API接口

    • (BOOL)application:(UIApplication )app openURL:(NSURL *)url options:(NSDictionary<NSString, id> *)options { if ([url.host isEqualToString:@"safepay"]) { //跳转支付宝钱包进行支付,处理支付结果 [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) { NSLog(@"result = %@",resultDic); }]; } return YES; }
    点赞 评论
  • a645277100
    a645277100 2019-05-16 17:16

    你的aop 加入了支付宝的白名单没有! 或者当前界面回调的时候是不是任务已经结束

    点赞 评论

相关推荐