支付

支付宝回调

2017-11-08  本文已影响5人  赤焰军少帅林殊
注意事项:     1.NSString *appScheme = @"dadaxiupay"; plist设置的跳转白名单是你自己APP独立设置的白名单
没设置对待会回不到APP

2.支付宝回调不在appdegete里面 而是在打开支付宝那个block回调里面
if ([url.host isEqualToString:@"safepay"]){
        // 支付跳转支付宝钱包进行支付,处理支付结果
        NSLog(@"%@",url);
        [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
            NSLog(@"支付返回结果result = %@",resultDic);//该回调是用于非钱包跳转
        }];
         return  YES;
    }//这个是安装支付宝钱包的回调结果,假如你是没有跳转的是支付宝软件支付,log是不会打印的,回调在下面
//支付回调和支付一开始调用是同一个 block

3.正确做法
[[AlipaySDK defaultService] payOrder:json[@"content"][@"request"] fromScheme:appScheme callback:^(NSDictionary *resultDic) {
                    NSLog(@"result = %@",resultDic);
                     [self.navigationController popViewControllerAnimated:YES];
                     NSString *resultStatus = [resultDic objectForKey:@"resultStatus"];
                      NSString *memo;
                    if ([resultStatus intValue] == 9000) {
                        memo = @"支付成功!";
                       OrderPayStateController* ovc=[[OrderPayStateController alloc]initWithname:buyname withaddressage:buyaddressage withphone:buyphone withPrice:self.allgoodprices];
                         ovc.hidesBottomBarWhenPushed = YES;
                         [self.navigationController pushViewController:ovc animated:YES];
                    }else {
                        switch ([resultStatus intValue]) {
                            case 4000:{
                                memo = @"订单支付失败!";
                                [self paydetail:memo];
                            }
                                break;
                            case 6001:{
                                memo = @"用户中途取消!";
                                [self paydetail:memo];
                            }
                                break;
                            case 6002:{
                                memo = @"网络连接出错!";
                                [self paydetail:memo];
                            }
                                break;
                            case 8000:{
                                memo = @"正在处理中...";
                                [self paydetail:memo];
                            }
                                break;
                            default:
                                break;
                        }
                    }
        //
                }];
上一篇下一篇

猜你喜欢

热点阅读