(1) 苹果内购的坑 - 掉单

苹果内购问题

在iOS开发中,支付方式可以用微信、支付宝、银联啥的,但是购买虚拟物品比如游戏中的金币、视频会员等等,苹果规定必须用内购,好了嘛,那就用啊,可是过程中会遇到好多坑。。。
当然我遇到的坑已经添上了,希望这文章可以帮你避开那些坑。

掉单问题最为严重
大家都知道,微信和支付宝支付是比较完善的,当用户支付成功后,他们会给服务器一个支付结果回调,这样就算客户端有什么意外没拿到结果,服务器也是知道支付状态的。
内购可不是这样,坑就坑在,它只有客户端能拿到支付状态,成功或是失败之后通知自己的服务器,服务器去验证票据,如果这个环节断了,比如突然退出app、网络不好没有通知到,都有可能,这时候服务器没有拿到票据就没办法给用户发货,但用户钱已经付了啊,这就尴尬了,,很可能引起用户不满,投诉我们,。


对于上面的问题我们的解决办法是
当用户支付成功后吧需要验证的票据立刻保存到本地,然后请求自己服务器,当服务期成功返回后,我们再把票据本地删除,并且删除当前事物

[[SKPaymentQueue defaultQueue] finishTransaction: transaction];

删除事物是必要的,无论成功,失败还是取消,都需要删除&#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值