该应用正在使用RMSTORE进行收据验证,并且在开发配置文件/沙箱环境中正常运行。当我尝试重新创建Apple的审核流程(使用ad-hoc分发配置文件对应用程序的存档进行签名并使用iTunes而不是xcode进行安装)时,应用内购买失败(应用内购买详细信息,如名称,描述,价格都有,但购买失败)。 Apple表示该应用程序无法正确区分审核(沙盒)环境和生产环境。但是在RMstore中,我在RMStore应用程序收据验证器中发现,如果应用程序从生产服务器获取21007错误代码,则它会检查沙箱服务器。
在Iphone配置实用工具中,当我尝试购买时,我得到了这个:
Apr 10 16:26:52 Mihnea-I4 storebookkeeperd[769] <Warning>: [UPP-SBDPlaybackPositionStorageController] running synchronizeImmediatelyWithCompletionHandler: now
Apr 10 16:26:55 Mihnea-I4 storebookkeeperd[769] <Warning>: [StoreBookkeeper] [SBKTransactionController.m:457] Transaction Failed: <SBKSyncTransaction: 0x1560aa70> SYNC: anchor=0 -- Error: <SBKStoreError:0x15619060> "Error Code = SBKStoreErrorCodeStoreAccountSessionExpired (-1004)"
Apr 10 16:26:55 Mihnea-I4 storebookkeeperd[769] <Warning>: [UPP-SBDJobScheduler] Could not synchronize domain 'com.apple.upp' (<SBKStoreError:0x15528fc0> "Error Code = SBKStoreErrorCodeStoreAccountSessionExpired (-1004)"). Synchronization will be re-attempted when the network connectivity, or account status has changed.
以下是苹果拒绝该应用后的答案:
我们发现您的应用未正确实施收据验证,因此无法正确区分审核(沙盒)环境和生产环境。这导致对生产服务器的验证查询,而不是沙箱收据检查,并阻止我们查看您的应用程序。
要解决此问题,请修改二进制文件,以包含区分审阅环境和生产环境所需的必要逻辑。
有什么想法吗?