应用内购买验证

时间:2013-02-20 14:58:14

标签: ios xcode testing in-app-purchase in-app-billing

我确保我的二进制文件的应用内购买。现在我可以使用jSon将base_64 transaction.receipt数据发送到我的服务器,并且我的服务器直接推送到Apple服务并获得结果(如果它是真实付款)。

我正在研究Sandbox环境,一切顺利。但是当我的二进制文件批准时,我的二进制文件将是实时付款声明,Sandbox将不再存在。在我的服务中,我可以切换网址是否是沙箱。

但是当我的应用程序进入InReview Statement时,Review团队还将在沙盒中进行测试?如果他们会让我实时付款状态并像我那样测试我的应用程序怎么办?由于我的服务将数据推送到沙箱环境,它们会出错...

无论如何要通过编程方式了解我的二进制文件是否在Sandbox语句中?

3 个答案:

答案 0 :(得分:1)

审核流程针对沙箱进行测试。您应该提交开发人员保留的应用程序,以便在发布应用程序之前将服务器切换到生产状态。

答案 1 :(得分:1)

Apple的In-App Purchase Programming Guide描述了在开发,审核和制作过程中使用的环境以及App Developers建议的方法

enter image description here

从图中可以看出,在审核期间购买是针对Apple的测试(沙盒)服务器,但由于正在审核的二进制文件是将发布到商店的二进制文件,因此该二进制文件必须配置为使用您的生产服务器(如果您只有一台服务器,则使用生产URL)。

为了确保收据仍然正确验证,指南建议:

  

验证服务器上的收据时,您的服务器需要能够处理生产签名的应用程序从Apple的测试环境获取收据。建议的方法是让您的生产服务器始终首先根据生产App Store验证收据。如果验证失败,并显示错误代码“生产中使用的沙箱收据”,请改为验证测试​​环境

答案 2 :(得分:1)

enter image description here我认为您无法测试真实购买(使用真钱)

如果您的购买是针对沙箱的,那么它也应该对付产品。

IAP Documents