iOS -- 支付宝支付踩坑

最近项目用到支付宝支付,第一次自己做支付,简直无从下手,一路瞎闯 总算是成功了.

这里记录一下,以备后用


首先两个地址:

1.处理接口客服:https://cschannel.alipay.com/newPortal.htm?scene=mt_zczx&token=&pointId=&enterurl=https%3A%2F%2Fsupport.open.alipay.com%2Falipay%2Fsupport%2Findex.htm

2.商户服务:https://cschannel.alipay.com/newPortal.htm?scene=kfpt&token=&pointId=&enterurl=https%3A%2F%2Fopen.alipay.com%2Fplatform%2Fhome.htm

2  移动支付接口文档: https://doc.open.alipay.com/doc2/detail?treeId=59&articleId=103563&docType=1

开放平台文档中心

客服可以提供技术支持,有不会的可以直接问客服(客服态度超级好!)


然后是两种支付方式:

移动支付接口(接口名称:mobile.securitypay.pay)

APP支付接口(接口名称:alipay.trade.app.pay)(企业或个体工商户可申请(纯个人不能申请)的)

这两种支付方式一定要看好,看清你们签约的是哪一种服务,两种支付方式写法有点不一样.具体区别客服解释是:app支付是移动支付的升级版(可以理解成app支付是2.0 移动支付是1.0)

最后一点就是自定义参数,这个我也是问的客服,客服给的建议是:不建议传递自定义参数,如果必须使用的话,建议存放与body或者subject参数中

其他的按照上面的文档地址一步步来就行了


第一步:把下载的demo中需要用到的文件和静态库拖到自己的项目中

iOS -- 支付宝支付踩坑_第1张图片
1

第二步: 在Build Phases选项卡的Link Binary With Libraries中,添加以下库:

iOS -- 支付宝支付踩坑_第2张图片
2

第三步: Build Settings --> Header Search Paths 中添加一下地址:

iOS -- 支付宝支付踩坑_第3张图片
3

第四步:

如果你的app基于9.0编译,那么为了适配iOS9.0中的App Transport Security(ATS)对http的限制,这里需要对支付宝的请求地址alipay.com、alipayobjects.com做例外,在app对应的info.list中添加如下配置(文中以XML格式描述)。

配置方式

iOS -- 支付宝支付踩坑_第4张图片
4-1
iOS -- 支付宝支付踩坑_第5张图片
4-2

第五步:在AppDelegate中添加一下代码:

iOS -- 支付宝支付踩坑_第6张图片
5

第六步,在你需要的地方写

iOS -- 支付宝支付踩坑_第7张图片
6-1

这里 order.body = product.body; 可以额外的添加参数

格式可以随便写(和后台商量),如:order.body = @"userId=28";

!!!!!实际开发中,第六步是不需要的,所有的配置都是由后台来做,手机端只需要在需要的地方调用后台提供的接口就可以了!!!



最后一步,添加scheme  (没有写这个的话,你的APP调用支付宝之后回调会失败!!切记)

iOS -- 支付宝支付踩坑_第8张图片
6-2


新增:沙箱环境只支持安卓,所以iOS只能在正式环境下调试!

有问题找客服!

有问题找客服!

有问题找客服!

你可能感兴趣的:(iOS -- 支付宝支付踩坑)