我一直在使用Apple的代码和互联网上的一些指南进行收据验证。此时,我已设法签署代码,并开始验证以验证收据。此时,如果您不熟悉Apple文档的这一部分,将会很有帮助:
Validating App Store Receipts # Validate during development process
当我在XCode中启动应用程序时,应用程序按预期退出代码173(没有要验证的收据)。当我在XCode之外启动应用程序(双击查找程序)时,应用程序启动一瞬间,关闭,并弹出登录对话框(如预期的那样)。我在iTunes Connect中创建了一个测试帐户,并使用此帐户登录。点击登录按钮后,进度指示器会旋转几秒钟,然后登录框消失。据我所知,此后没有任何事情发生。据我所知,App Store应该自动生成/拉取收据并在此时启动应用程序,但事实并非如此。
我试图更好地观察应用程序启动过程。我在收据检查过程的每个点都放了一些printf,但是我无法弄清楚这些打印的位置。 (使用'open'在终端中启动应用程序根本不显示任何输出。)我尝试使用NSRunAlertPanel生成对话框,但我认为当收据检查发生时,应用程序的加载不够他们适当地出现。
此时,由于无法真正观察到正在发生的事情,我不确定如何进一步调试问题。
答案 0 :(得分:7)
检查您是否已在iTunes Connect中设置应用程序(您需要输入详细信息,而不必提交二进制文件)。
*最初来自blog.pado.name/post/3008648963/app-store-receipt-validation-oddness,现在是404
答案 1 :(得分:1)
如果您想节省大量时间来制作收据检查代码,我强烈推荐Receigen。 (不,我不是这个工具的开发人员,但我更喜欢添加功能,而不是重复其他人所做的很好的事情。)
确保使用开发证书对应用程序进行了签名,以便使用iTunes Connect中添加的测试程序。