ios支付开发流程,iOS系统支付

Cocos creator ios开发—微信支付(三)

目录: Cocos creator ios开发-接入微信SDK系列文章

创新互联是一家专注于成都网站设计、成都做网站与策划设计,青县网站建设哪家好?创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:青县等地区。青县做网站价格咨询:13518219792

这是官方文档: app微信支付开发文档

第一步、

先接入微信SDK,请参考 Cocos creator ios开发—接入微信SDK

第二步、

在Xcode的Info的设置项中,URL Types 的URL Schemes填写APPID

在AppController.h中添加接口:

app启动时,注册APPID,在AppController.mm中的didFinishLaunchingWithOptions方法中调用

第三步、

向oc发送支付信息

第四步、

oc收到支付信息,发起支付

苹果内支付(iOS IAP)的流程与常用攻击方式

摘录: 苹果应用内支付(iOS IAP)的流程与常用攻击方式

按照安全性原则, 客户端的所有信息都是不可信的,而且支付是业务中的核心模块,所以应该选择第二种。

下面简要介绍下,第二种方式的简单流程。

作为支付,安全性是第一位的,下面简要分析一下常用的攻击手段。

客户端拿到apple的receipt 并发送到server

server拿到这个receipt,向苹果验证得到apple_callback_data

如果apple_callback_data的status是21007,说明是沙盒模式(不用花钱就可以购买) 要根据具体需求判断处理逻辑,需要注意的是,ios的审核在支付的时候就采用的沙盒模式。

如果apple_callback_data的status是0,就要从apple_callback_data[‘receipt’][‘in_app’]这个list中拿到所有的记录,每一个进行充值。然后记录transaction_id和original_transaction_id来防止同一个transaction被重复使用。

= Original Transaction Identifier

返回所有充值成功和重复的transaction_id, 有client来complete transaction

summary

支付作为核心模块,除了技术上的保证,商务也应该每周进行一次对账。如果发现apple上的收入和服务端记录的收入有比较大的差距,就应该抓紧查看原因。

最后给出一个apple_callback_data的例子

iOSAPP端接入微信支付流程

商户在微信开放平台申请开发APP应用后,微信开放平台会生成APP的唯一标识APPID。在Xcode中打开项目,设置项目属性中的URL Schemes为您的APPID。如图所示。

2.导入微信支付SDK

将官方demo中的这个文件夹拷贝到项目里

在APPdelegate里设置APPID

导入依赖库

项目中点击支付的按钮写上如下方法

别忘了导入头文件和遵循代理和注册代理  

info.plist里添加如下字段LSApplicationQueriesSchemes,为Array类型,然后在里面添加两个小选项,分别为weixin和wechat

注意!!!下面这三处  一定要对应上  少一不可

如果不回调,APPdelegate里写上这个

//被废弃的方法如下

- (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url {

return  [WXApi handleOpenURL:url delegate:[WXApiManager sharedManager]];

}

- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation {

return [WXApi handleOpenURL:url delegate:[WXApiManager sharedManager]];

}

//替换的新方法

- (BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary*)options {

return [WXApi handleOpenURL:url delegate:[WXApiManager sharedManager]];

}

//调起微信支付

PayReq* req  = [[PayReq alloc] init];

req.partnerId = @"1220277201";

req.prepayId  = @"9201039000160315ab9324b87b451223";

req.nonceStr  = @"83DB7tk21akNRSFs";

req.timeStamp = 1458027344;

req.package  = @"Sign=WXPay";

req.sign      = @"db6919dbd8ccb3f8a25108bebcd87f7a02c52e39";

[WXApi sendReq:req];

// 获取当前时间

time_t now;

time(now);

// 时间戳

//NSString *timestamp = [NSString stringWithFormat:@"%ld", now];

// 随机字符串

//NSString *nonceStr = [[self md5:timestamp] uppercaseString];

//订单id

NSString *prepayid =  _prepayid;

PayReq *request = [[PayReq alloc] init];

/** 商家向财付通申请的商家id */

request.partnerId = WXPartnerid;

/** 预支付订单 */

request.prepayId= prepayid;

/** 商家根据财付通文档填写的数据和签名 */

request.package = @"Sign=WXPay";

/** 随机串,防重发 */

request.nonceStr= _noncestr;

/** 时间戳,防重发 */

request.timeStamp = [_timestamp intValue];

/** 商家根据微信开放平台文档对数据做的签名 */

request.sign= _sign;

/*! @brief 发送请求到微信,等待微信返回onResp

*

* 函数调用后,会切换到微信的界面。第三方应用程序等待微信返回onResp。微信在异步处理完成后一定会调用onResp。支持以下类型

* SendAuthReq、SendMessageToWXReq、PayReq等。

* @param req 具体的发送请求,在调用函数后,请自己释放。

* @return 成功返回YES,失败返回NO。

*/

[WXApi sendReq: request];

ios开发怎么支付

支付的话一般都是使用第三方的支付接口。如银联,支付宝。你可以申请并签约使用他们的移动端的支付,他们会提供给你基于移动端开发集成的SDK

求苹果iOS开发者个人版申请&支付流程。

进入后按提示注册一个apple ID,然后点那个写着SDK字样的球下载,是免费个人版的,

标准版在developer.apple.com/iphone/program/apply.html

祝你好运^-^

ios的app中,向用户的支付宝提现功能是如何开发的?

这种app的流程应该是这样:

用户在app上输入自己的支付宝帐号

app把这个帐号post到自己的server端

server再验证,再根据用户的额度之类的向用户的支付宝帐户转入相应的金额

所以其实在ios app端不会进行具体的转帐操作,app只是收集用户的帐号信息,转帐应该是server端去操作的。至于怎么向支付宝发起转帐请求,我就不知道了,支付宝应该会提供相应的API给开发者。


当前文章:ios支付开发流程,iOS系统支付
URL网址:http://ybzwz.com/article/dsiicjp.html