行业动态
微信、支付宝支付时APP间通讯关系,最后封装成XHPayKit
2021-04-02

微信,支付宝付款

前言

由于前段时间的项目要求,该项目中的WeChat Pay SDK和Alipay Payment SDK已被删除。在这种情况下,您需要自己结算付款。首先要考虑的是使用openshare,但是下载openshare之后,我发现,openshare的支付界面不能直接替代官方的SDK支付界面,

官方SDK的实现逻辑是ios开发 支付宝sdk,在签署后端订单后,客户服务终端将签名信息和参数传输到支付SDK,支付SDK生成协议网址,然后拉出第三个支付APP,

openshare的支付接口是直接传输拉起付款的协议URL地址,生成协议URL地址的操作也移交给后台来生成,

ios支付宝sdk下载官网_ios开发 支付宝sdk_ios开发 支付宝sdk

在这种情况下,需要在后台修改代码,

是否有可能不修改后台代码而获得支付接口以直接替代官方SDK支付接口以实现无缝连接,因此我研究了支付时微信与支付宝之间的通信关系,最后将其封装到XHPayKit中。

功能:

1. XHPayKit具有与官方SDK类似的界面,并且可以直接替代官方SDK支付界面。如果您使用的是官方SDK,则只需很短的时间即可转换为库。

2. XHPayKit的大小只有10kb。您无需导入任何依赖库就可以实现微信支付和支付宝支付。如果您想缩减项目规模或出于某种原因ios开发 支付宝sdk,不想使用官方的SDK来实现付款功能,那么该库将是一个不错的选择。

使用3. XHPayKit时,无需配置平台的appid和其他信息(例如微信),并且服务器配置很好,因为在订购时appid和其他信息将返回给客户端在后台签名。

注意:

1.首先在微信和支付宝开放平台上注册您的应用程序,并具有付款功能

2.导入此库,然后将weixin和alipay字段添加到info.plist白名单

3.添加您自己的APP URL方案和微信回调URL方案,有关详细信息,请参阅README文档

使用方法:

1.微信支付

//微信支付参数,下面7个参数,由后台签名订单后生成,并返回给客服端(与官方SDK一致)
 //注意:请将下面参数设置为你自己真实订单签名后服务器返回参数,便可进行实际支付
XHPayWxReq *req = [[XHPayWxReq alloc] init];
req.openID = @"";
req.partnerId = @"";
req.prepayId = @"";
req.nonceStr = @"";
req.timeStamp = 1518156229;
req.package = @"";
req.sign = @"";
        
//传入订单模型,拉起微信支付
[[XHPayKit defaultManager] wxpayOrder:req completed:^(NSDictionary *resultDict) {
          NSLog(@"支付结果:
%@",resultDict);
          NSInteger code = [resultDict[@"errCode"] integerValue];
          if(code == 0){//支付成功
                
          }
}];

2.支付宝付款

//支付宝订单签名,此签名由后台签名订单后生成,并返回给客户端(与官方SDK一致)
//注意:请将下面值设置为你自己真实订单签名,便可进行实际支付
NSString *orderSign = @"很长的一串支付宝订单签名";
        
//传入支付宝订单签名 和 自己App URL Scheme,拉起支付宝支付
[[XHPayKit defaultManager] alipayOrder:orderSign fromScheme:@"XHPayKitExample" completed:^(NSDictionary *resultDict) {
    NSLog(@"支付结果:
%@",resultDict);
    NSInteger status = [resultDict[@"ResultStatus"] integerValue];
    if(status == 9000){//支付成功
                
    }
}];


393701618