1:先与支付宝签约,获得商户ID(partner)和账号ID(seller)

2:下载相应的公钥私钥文件(加密签名用)

3:下载支付宝SDK

4:生成订单信息
5:调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道
6:支付完毕后返回支付结果给商户客户端和服务 , SDK里有集成支付宝功能的一个Demo> 集成支付功能的具体操作方式,可以参考Demo

//生成订单信息及签名请求参数没有 return_URL这个参数,商户可以根据自身情况选择签名方法
NSString *appScheme=@"Practice";
NSString * orderInfo=[self getOrderInfo:indexPath.row];
NSString * signedStr=[self doRsa:orderInfo];

NSString*orderString=[NSString stringWithFormat:@"%@&sign=\"%@\"&sign_type=\"%@\"",orderInfo,signedStr,@"RSA"];
[AlixLibService payOrder:orderString AndScheme:appScheme seletor:_result target:self];

-(NSString *)doRsa:(NSString *)orderInfo
{
idsigner;
signer=CreateRSADataSigner(PartnerPrivKey);
NSString * signedString=[signer signString:orderInfo];
return signedString;

}

-(NSString *)getOrderInfo:(NSInteger)index
{
//点击获取product实例,并初始化订单信息
Pruduct *pruduct=[_dataArray objectAtIndex:index];
AlixPayOrder * order=[[AlixPayOrder alloc]init];
order.partner=PartnerID;
order.seller=SellerID;

//订单ID
order.tradeNO=[self generateTradeNO];
// 商品标题
order.productName=pruduct.subject;
// 商品描述
order.productDescription =pruduct.body;
//商品价格
order.amount=[NSString stringWithFormat:@"%.2f",pruduct.price];
order.notifyURL = @"http%3A%2F%2Fwwww.xxx.com"; //回调URL

return order.description;

}

-(NSString *)generateTradeNO
{

const int N =15;
NSString * sourceString=@"SSSSSSSSSSSSSSSS";
NSMutableString *re=[[NSMutableString alloc]init];
srand(time(0));
for (int i=0; i<n; br=""> unsigned index=rand()%[sourceString length];
NSString * s=[sourceString substringWithRange:NSMakeRange(index, 1)];
[re appendString:s];
}
return re;
}
-(void)paymentResultDelegate:(NSString *)result
{
NSLog(@"%@",result);

}

iOS 支付宝应用(备用参考)的更多相关文章

  1. iOS支付宝支付集成

    概述 iOS支付宝支付集成 详细 代码下载:http://www.demodashi.com/demo/10729.html 支付宝和微信都是业界的老大哥,相信大家都有所觉得文档.SDK都是各种坑吧( ...

  2. 《招聘一个靠谱的iOS》面试题参考答案(下)

    相关文章: <招聘一个靠谱的iOS>面试题参考答案(上) 说明:面试题来源是微博@我就叫Sunny怎么了的这篇博文:<招聘一个靠谱的 iOS>,其中共55题,除第一题为纠错题外 ...

  3. iOS 支付宝应用(备用参考2)

    接入前期准备工作包括商户签约和密钥配置 步骤1:  启动IDE(如Xcode),把iOS包中的压缩文件中以下文件拷贝到项目文件夹下, 并导入到项目工程中. AlipaySDK.bundle    Al ...

  4. ios coredata 老代码备用参考

    iPhone OS在2009年6月份推出3.0版本SDK,其中一个特性是引入了Mac SDK中的core data.是一种ORM(Object Relationships Mapping)解决方案,类 ...

  5. iOS多线程常用类说明--备用参考

    iOS的多线程,涉及到如下一些类,这里集中做个介绍,免得混淆. 1.NSTimer 很显然,这是定时器类 2.NSTask iOS 不支持 NSTask 在很多并发操作的时候,多线程太耗资源,也太危险 ...

  6. IOS 获得通讯录中联系人的所有属性 备用参考

    ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef results = ABAddressBookCopyArrayOfA ...

  7. iOS实现地图半翻页效果--老代码备用参考

    // Curl the image up or down CATransition *animation = [CATransition animation]; [animation setDurat ...

  8. iOS 支付宝支付

    在开发过程中,经常需要接入第三方支付.下面对支付进行一个概括. 支付宝支付 支付宝SDK下载地址:https://doc.open.alipay.com/doc2/detail?treeId=54&a ...

  9. iOS支付宝集成详细流程

    实现支付宝支付的准备工作: 1.向支付宝签约,成为支付宝的商户 签约完成后,支付宝会提供一些必要的数据给我们 商户ID:partner 账号ID:seller 即支付宝账号 签约需要营业执照 2.获取 ...

随机推荐

  1. Scala官方作弊条

    Scala官方作弊条请参考:http://docs.scala-lang.org/cheatsheets/

  2. poj 1523 求割点

    思路:对于所有节点,每次找的子树,key[root]++;输出时,对于根节点就输出key[root],对于其它节点i,输出key[i]+1; #include<iostream> #inc ...

  3. 转:android git开源项目列表

    1. 知乎的合集说明 https://www.zhihu.com/question/19804692 2. http://p.codekk.com/

  4. ios -- NSdata 与 NSString,Byte数组,UIImage 的相互转换(转)

    1. NSData 与 NSStringNSData-> NSStringNSString *aString = [[NSString alloc] initWithData:adata enc ...

  5. (转)C#模拟键盘鼠标事件

    原文 1.模拟键盘事件System.Windows.Forms.SendKeys以下是   SendKeys   的一些特殊键代码表.     键   代码       BACKSPACE   {BA ...

  6. SharePoint手机App巅峰对决:rShare 挑战 SharePlus

    真是个移动的时代,当我们去百度,Bing,雅虎等搜索引擎,搜索关键字比如“SharePoint iOS”, “SharePoint 安卓”, “SharePoint iPhone”,“SharePoi ...

  7. Git CMD - checkout: Switch branches or restore working tree files

    命令格式 git checkout [-q] [-f] [-m] [<branch>] git checkout [-q] [-f] [-m] --detach [<branch&g ...

  8. jquery ListBox 左右移动

    <head runat="server"> <title>无标题页</title> <script type="text/jav ...

  9. EF迁移

    第一步是为上下文启用迁移Enable-Migrations 命令 Add-Migration AddBlogUrl 将根据自创建上次迁移以来您对模型所做的更改,为下一次迁移搭建基架. Update-D ...

  10. 【Sqlserver】修改数据库表中的数据:对缺失的数据根据已有的数据进行修补

    1 --查询时间范围内的数据 select * from dbo.point where wtime >'2014-05-01 23:59:59' and wtime< '2014-05- ...