内购掉单问题处理

内购的大致流程:

1.客户端向Appstore请求购买产品(假设产品信息已经取得),Appstore验证产品成功后,从用户的Apple账户余额中扣费。

2.Appstore向客户端返回一段receipt-data,里面记录了本次交易的证书和签名信息。

3.客户端向我们可以信任的游戏服务器提供receipt-data

4.游戏服务器对receipt-data进行一次base64编码

5.把编码后的receipt-data发往itunes.appstore进行验证

6.itunes.appstore返回验证结果给游戏服务器

7.游戏服务器对商品购买状态以及商品类型,向客户端发放相应的道具或者余额。

掉单问题一般出在环节3,可能因为用户手机信号不好,或者误操作返回了上个页面。导致receipt-data没有发送给我们自己的服务器,结果就是用户钱扣了,但是道具或者余额没到账。而且后台没收到receipt-data,根本就没有记录。
所以每次再发送receipt-data前,需要把它保存在本地,确认发送给后台,走完了充值流程,再删除。每次到内购页面,都检查下是否有未发送给后台的receipt-data。

转载于:https://my.oschina.net/yup/blog/3025112

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值