美文网首页iOS开发实用篇
iOS支付宝app支付 工具类

iOS支付宝app支付 工具类

作者: 七叶昔洛 | 来源:发表于2018-03-22 14:07 被阅读15次

    最近做支付宝支付时, 发现支付宝的SDK已经更新,新申请的应用需要更新最新的SDK,于是就写个新的工具类(已经在iOS10,11的系统测试完成.
    SDK的接入这里就不说了,参照蚂蚁金服的文档;

    这里说下我写的工具类的使用 文件结构
    1, 将导入头文件到pch中#import "XLAliPayConfig.h"
    2, 由于最新的SDK只需要应用的appid和私钥, 因此可在XLAliPayHandler.m中修改
    3, 修改AppDelegate
    - (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) {
                XLAliPayHandler.shared.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) {
                XLAliPayHandler.shared.result = resultDic;
            }];
        }
        return YES;
    }
    
    4, 使用(支付结果在回调中)
        Product *product = [Product new];
        product.body = @"我是测试数据";
        product.subject = @"1";
        product.price = 0.01;
        [[XLAliPayHandler shared] alipay:product];
        [XLAliPayHandler shared].block = ^(NSDictionary *result) {
            NSLog(@"%@", result);
        };
    

    GitHub地址

    相关文章

      网友评论

        本文标题:iOS支付宝app支付 工具类

        本文链接:https://www.haomeiwen.com/subject/daraqftx.html