iOS App开发笔记

这篇博客详细介绍了iOS App内购的完整流程,包括客户端与服务器、苹果App Store的交互,以及服务器验证购买成功的步骤。涉及到的关键操作包括存储过程、数据库查询和验证字符串的处理。
摘要由CSDN通过智能技术生成

20180505添加:
1、购买
先在商城里购买,点击付款(不用付款成功),然后打开数据库GameUserDB--UserRechargeOrder,根据账号ID查找OrderID,然后在数据库点击可编程性-存储过程-dbo.GSP_GP_UserMallBuyResult--执行
sql语句为:
SELECT TOP 1000 [ID]
      ,[UserID]
      ,[productID]
      ,[OrderID]
      ,[ProductName]
      ,[ProductPrice]
      ,[RechargeDate]
      ,[States]
      ,[RechargeWay]
      ,[TotalScore]
      ,[ProductNameAdd]
      ,[HotFlag]
      ,[HookDate]
  FROM [QPGameUserDB].[dbo].[UserRechargeOrder] where userid=3295766
  exec [QPGameUserDB].[dbo].GSP_GP_UserMallBuyResult '9120180505000001'

http://www.cnblogs.com/pengyingh/articles/2536828.html
我把整个过程叫做三方协定,也叫四次握手.
1、由客户端APP发出购买请求,这里要求要向服务器,苹果APP STORE同时发送购买请求.
1.1手机请求付费,服务器返回许可编号;
服务端接收到请求之后,在数据库log_Purcharse中新增一条记录,并将新增记录的ID返回给客户端.(log_Purcharse表的设计见后文)
1.2手机请求付费,苹果返回验证字符串,开始扣费;
苹果APP STORE接收到请求之后,进行扣费,返回一个付费成功详细信息,或者失败信息.
以上我们称之为一次和第二次握手
如果苹果APP STORE返回付费失败,则客户端终止购买流程.
如果苹果APP STORE返回付费成功,则将第一次服务端返回的ID和苹果返回的付费详情字符串一同发送给服务端.
这里是第三次握手开始.
3、发送许可编号+验证字符串给服务器
服务端接收到ID和付费详情字符串,首先到数据库中检索ID是否合法(检验方法详见后文),ID不合法则返回给客户端失败,客户端终止购买流程,ID合法则将付费详情字符串发送给苹果APP STORE进行验证.
4、服务器将验证字符串发送给苹果,验证付费是否成功
苹果APP STORE验证付费字符串之后会返回给服务端一个付费验证成功码(0表示成功),或者失败码(很多情况,各有其含义).
这里称作第四次握手.
服务端检测苹果APP STORE返回的成败信息,更新表log_Purcharse对应ID下面的数值.
返回给客户端成功/失败信息,成功客户端增加购买物品,失败客户端

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值