1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > IOS开发之—— IOS 支付 [支付宝 银联 微信]

IOS开发之—— IOS 支付 [支付宝 银联 微信]

时间:2021-07-31 13:08:09

相关推荐

IOS开发之—— IOS 支付 [支付宝 银联 微信]

支付宝iOSsdk官方下载sdk地址:/order/productDetail.htm?productId=080604609654&tabId=4#ps-tabinfo-hash

快捷支付(无线)是一种程序式的支付方式,在手机、掌上电脑等无线设备的应用程序内,买家可通过支付宝进行付款购买特定服务或商品,资金即时到账。

第一步:

1 公司账户:企业支付宝账号就申请注册企业账号,如果是个人账户,就申请个体工商户。

接入前准备阶段

商户签约审核

签约审核具体步骤请参见签约与审核商户密钥管理

密钥作用生成步骤上传步骤

正式接入阶段

服务端负责生成订单及签名,及接受支付异步通知。

客户端负责使用服务端传来的订单信息调用支付宝支付接口,及根据SDK同步返回的支付结果展示结果页。

服务端接入

私钥必须放在服务端,签名过程必须放在服务端。

准备确定开发语言确定编码格式确定签名方式(PID + 密钥)确定服务器配置支付订单参数拼装及加签通知处理什么时候会通知?收到通知时注意验签。

客户端接入

iOS接入接口说明Demo示例(为了demo方便请求参数拼装和加签都放在了客户端,应该都放服务端)Android接入接口说明Demo示例(为了demo方便请求参数拼装和加签都放在了客户端,应该都放服务端)请求参数说明结果参数说明

导入代码

更新时间:/11/05访问次数:58075

步骤1:启动IDE(如Xcode),把iOS包中的压缩文件中以下文件拷贝到项目文件夹下,并导入到项目工程中。

在Build Phases选项卡的Link Binary With Libraries中,增加以下依赖:

其中,需要注意的是:

如果是Xcode 7.0之后的版本,需要添加libc++.tbd、libz.tbd;如果是Xcode 7.0之前的版本,需要添加libc++.dylib、libz.dylib(如下图)。

步骤2:在需要调用AlipaySDK的文件中,增加头文件引用。

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

说明:

如果商户配置了如下的配置:

则上述的NSAppTransportSecurity可以不配置。

步骤3:对接,对接之前,需要索取后台的很多信息

//合作身份者id,以2088开头的16位纯数字

#define PartnerID @"2088一串数字"

//收款支付宝账号/接口名称

#define SellerID @"2944983890@"

//支付宝公钥

#define AlipayPubKey @"MIGf一串很长很长信息"

//商户私钥,自助生成

#define PartnerPrivKey @"很长很长很长"

//服务器异步通知页面路径/支付结果,支付宝会通知服务器alipayNotifServerURL=@"一个网址";

步骤4:配置请求信息。

详细可参见Demo中示例文件

AliSDKDemo\APViewController.hAliSDKDemo\APViewController.mAliSDKDemo\Order.hAliSDKDemo\Order.m

步骤5:调用支付宝

你可能会发现回调不行->设置回调shema

二、银联支付UPPay银联sdk下载网址:/upload/download/Development_kit85427986.rar

2.1 请去看银联文档和demo

2.2 导入对应的库

SDK说明

SDK分为以下两个版本:

① 支持纯无卡交易静态库,以下简称UPPayPlugin,包含文件:

② 支持纯无卡交易和VIPOS音频口支付静态库,以下简称UPPayPluginPro,包含文件:

大概这两个库就是上述那样(嗯,装懂了),具体问商务/后者后台,我们只需要知道

②需要将.m改成.mm (应该是用c++封装的音频...??)

添加SDK包

a) 根据商户选择的SDK版本,将sdk/inc目录和sdk/libs目录下对应版本的三个文件添加到UPPayDemo工程中;

b) 如果你选择的是UPPayPlugin版本,添加QuartzCore.framework、Security.framework到工程中;

c) 如果你选择的是UPPayPluginPro版本,添加QuartzCore.framework、AudioToolbox.framework, CoreAudio.framework、 MediaPlayer.framework, AVFoundation.framework和Security.framework到工程中;

d) 在工程的Build Settings中找到Other Linker Flags中添加-ObjC宏;

导入到工程

2.3 对接

在需要调用支付控件的源文件内引用头文件 UPPayPlugin.h 或 UPPayPluginPro.h(注意:如果工程的 compile source as 选项的值不是 Objective–C++,则引用此头文件的文件类型都要改为.mm)

通过调用一下startPay方法

-------------2个参数说明(必填)-------------------

嗯,这些都是文档中的,请仔细看看[上线的时候一定要修改mode模式]。

mode在测试环境下,银联给的测试号 tn=@"01" 测试环境

测试使用卡号、手机号信息(此类信息仅供测试,不会发生正式交易)招商银行预付费卡:

银行卡号:6216261000000000018

身份证号:341126197709218366

手 机 号 :13552535506

验 证 码 :123456 【要点击获取验证码,不然提交会报错】

viewcontroller需要干这些事情

*引入头文件\#import"UPPayPluginPro.h"*调用接口[UPPayPluginProstartPay:tnmode:self.tnModeviewController:selfdelegate:self];*实现对应代理方法\#pragmamarkUPPayPluginResult-(void)UPPayPluginResult:(NSString\*)result{NSString\*msg=[NSStringstringWithFormat:@"%@",result];NSLog(@"msg%@",msg);if([resultisEqualToString:@"msgcancel"]){NSLog(@"取消银联支付...");}elseif([resultcontainsString:@"success"]){NSLog(@"支付成功");}}

三、微信支付

微信sdk下载网址:https://pay./wiki/doc/api/app.php?chapter=11_1

3.1 请去看微信文档和demo

微信支付工作之前的流程:https://open./cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419317780&token=ac5f0fd38fc8821171addbfdf5cc7d3af93cb305&lang=zh_CN

微信支付文档地址:https://pay./wiki/doc/api/app.php?chapter=8_1

3.2 导入对应的库

1.开发微信APP支付,需要先去微信开放平台申请移动应用,并开通微信支付功能,通过审核后方可进行开发;

2.用XCode打开项目,【项目属性】-【Info】-【URL Schemes】设置微信开放平台申请的应用APPID,如图文件夹下"设置appid.jpg"所示。如果这的APPID设置不正确将无法调起微信支付;

3.需要调用代码注册APPID:[WXApi registerApp:APP_ID withDescription:@"demo 2.0”];项目该APPID需与步骤2中APPID保持一致;

4.支付请求:WXApiRequestHandler.m中的jumpToBizPay方法实现了唤起微信支付;

5.支付完成回调:WXApiManager.m中的onResp方法中接收返回支付状态。

希望各位多多指教。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。