IOS-支付宝

Posted IOS_Bowen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS-支付宝相关的知识,希望对你有一定的参考价值。

 
一、使用支付宝进行一个完整的支付功能,大致有以下步骤:
与支付宝签约,获得商户ID(partner)和账号ID(seller)
下载相应的公钥私钥文件(加密签名用)
下载支付宝SDK
生成订单信息
调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道
支付完毕后返回支付结果给商户客户端和服务器
 
技术分享
注意:我们主要负责下单,和处理支付结果
 
 
二、调用接口步骤

1.封装订单模型

AlixPayOrder *order = [[AlixPayOrder alloc] init];

// 生成订单描述

NSString *orderSpec = [order description];

 

2.签名

id<DataSigner> signer = CreateRSADataSigner(@“私钥key”);

// 传入订单描述 进行 签名

NSString *signedString = [signer signString:orderSpec];

 

3.生成订单字符串

NSString *orderString = [NSString stringWithFormat:@"%@&sign=\"%@\"&sign_type=\"%@\"",

                         orderSpec, signedString, @"RSA"];

 

4.调用支付接口

AlixPay * alixpay = [AlixPay shared];

// appScheme:商户自己的协议头

int ret = [alixpay pay:orderString applicationScheme:appScheme];

 
 
代码:
 1 - (IBAction)buy {
 2     // 1.生成订单信息
 3     AlixPayOrder *order = [[AlixPayOrder alloc] init];
 4     order.partner = PartnerID; // 商户ID
 5     order.seller = SellerID; // 帐号ID
 6     
 7     order.tradeNO = @"2014082717183778587475"; // 订单ID(由商家自行制定)
 8     order.productName = self.deal.title; // 商品标题
 9     order.productDescription = self.deal.desc; // 商品描述
10     order.amount = [NSString stringWithFormat:@"%.2f", [self.deal.current_price floatValue]]; //商品价格
11     order.notifyURL =  @"http%3A%2F%2Fwwww.xxx.com"; // 回调URL
12     
13     // 2.签名加密
14     id<DataSigner> signer = CreateRSADataSigner(PartnerPrivKey);
15     NSString *signedString = [signer signString:[order description]];
16     
17     // 3.利用订单信息、签名信息、签名类型生成一个订单字符串
18     NSString *orderString = [NSString stringWithFormat:@"%@&sign=\"%@\"&sign_type=\"%@\"",
19                              [order description], signedString, @"RSA"];
20     
21     // 4.打开支付宝,传递订单信息
22     [AlixLibService payOrder:orderString AndScheme:@"heituan" seletor:@selector(paymentResultDelegate:) target:self];
23 }

 

 

以上是关于IOS-支付宝的主要内容,如果未能解决你的问题,请参考以下文章

支付宝的universal link-支付宝iOS启动命令-URL Schemes一键打开支付宝-uniapp支付宝登录授权

ios支付宝问题整合

iOS 手机没有安装支付宝的情况下,不调支付宝网页的解决的方法

iOS支付宝,微信,银联支付集成封装调用(下)

iOS如何应对苹果抽成-支付宝篇

iOS仿支付宝首页效果