支付宝App支付iOS集成:主要介绍支付完成回调后跳转下一个页面

1.官方网站:支付宝App支付iOS集成流程详解。
链接如下:
https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.QZIEY4&treeId=193&articleId=105295&docType=1

2.aliPay支付完成回调后的操作(可能是跳转到支付详情页面;也可能是其它的操作;根据项目需求进行调整):
1)在AppDelegate.m会添加支付宝这两个回调方法

  • (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) {
    //回调后的操作,产品需求进行定义怎么操作.
    //操作的实现方案:目前有两个方案。
    1.方案:可以用delegate实现。
    2.方案:可以添加NSNotificationCenter实现。
    我实现的方案是添加NSNotificationCenter实现的;
    delegate实现,没有尝试。
    [[NSNotificationCenter defaultCenter]postNotificationName:@"aliPayReslut" object:nil userInfo:resultDic];
    DLog(@"result === %@",resultDic);

    }];
    

    }
    return YES;
    }

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

  • (BOOL)application:(UIApplication *)app openURL:(NSURL )url options:(NSDictionary, id> *)options
    {
    if ([url.host isEqualToString:@"safepay"]) {
    //跳转支付宝钱包进行支付,处理支付结果
    [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
    [[NSNotificationCenter defaultCenter]postNotificationName:@"aliPayReslut" object:nil userInfo:resultDic];
    DLog(@"result === %@",resultDic);
    }];
    }
    return YES;
    }
    2)在当前的支付页面,添加NSNotificationCenter,并实现NSNotificationCenter的方法
    3)通知方法里面添加你需要的操作。
    (1)这个操作可能是push到下一个页面或者是modal方式;
    (2)根据项目需求进行调整。

你可能感兴趣的:(支付宝App支付iOS集成:主要介绍支付完成回调后跳转下一个页面)