iOS 内购流程整理
最近项目因为集成了支付宝,上架时被APP审核拒掉了,无奈只能接入内购。
参考文章:
看完这4篇文章,对内购基本上有一个清晰的了解。
需要注意的几个点:
1. 用户在APP购买成功后,我们需要将购买获得的收据receipt,发送给APP的服务端。服务端收到收据后,把它发送给苹果的服务器进行验证。最后服务端拿到验证结果,返回给APP,这时候才完成整个购买过程。
2.用户在付款成功,但是因为中途闪退或者网络问题,没有收到服务器返回的验证结果,这时候就要把订单号保存起来,以便再次发送这个订单号和收据。(这一点是最难处理的)
3.服务端在向苹果服务器发送验证请求时,会分为2种不同的环境:沙盒验证和正式验证。在测试和APP审核阶段,服务端需要将收据到送到苹果的沙盒验证环境(https://sandbox.itunes.apple.com/verifyReceipt),而在通过审核之后则需要发送到正式验证环境(https://buy.itunes.apple.com/verifyReceipt)。建议使用"双验证"的方式,就是先发送到正式测试环境,如果收到的返回码是21007,则需要再次发送到沙盒验证环境进行验证。
以上是集成内购时的一些总结,不是特别完整,如果有写错或者不明白的地方,欢迎大家指出来,谢谢!