iOS第三方支付集成-踩坑处理合集

问题一 iOS9以后,微信/支付宝支付成功后点击左上角的返回也能返回到app,但是会收不到微信/支付宝的回调信息。

解决办法:
在支付页面监听UIApplicationDidBecomeActiveNotification,当监听到返回app的事件后,主动请求服务端,如果发现order已经支付,则主动跳转。

问题二 导入微信SDK,编译报错

解决方案:
导入这三个文件
iOS第三方支付集成-踩坑处理合集_第1张图片

问题三 审核时,审核员手机没装微信被拒

解决方案:
支付宝不用担心,因为没有装支付宝还有网页版的可以支付。微信则则没有,如果审核员手机正好手机没有微信,有被拒风险。这时可以判断系统有没有装微信,来对应隐藏微信方式。
判断方法:

#import "WXApi.h"

if([WXApi isWXAppInstalled])
    {
        NSLog(@"wechat is install");
    }else
    {
        NSLog(@"wechat is not install");
    }

问题四 接完支付,还要求提现

微信,入驻90天,这一项就要三个月之后才能接了
iOS第三方支付集成-踩坑处理合集_第2张图片
微信提现官方文档

前期解决方案:
1.客户提现手动提供账号,最好提供银行卡。
2.发起提现,冻结提现金额
3.财务审核,手动打款
4.提现完成

支付宝提现思路和文档

问题五 关于支付宝网页版的一些问题

1.如何调起网页,什么时候调起,都不用手动去管,支付宝接口自动判断是否安装支付宝APP。
2.网页支付不会走APPDelegate中

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionaryid> *)options{
}

这个代理方法。
3.所以回调结果只能在支付接口

// NOTE: 调用支付结果开始支付
                [[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {
                    NSLog(@"payOrder reslut = %@",resultDic);
                    //h5走这个回调
                }];

这个方法的block中去处理

iOS第三方支付集成-微信支付
iOS第三方支付集成-支付宝支付

欢迎给为志同道合的朋友入群交流、分享。高级iOS开发交流群:855808379
iOS第三方支付集成-踩坑处理合集_第3张图片

你可能感兴趣的:(iOS开发,移动端+大前端+后台学习整合)