应用内购买非消耗品 - 性能 - 应用完整性 iOS 14.2

In App Purchase Non-Consumable - Performance - App Completeness iOS 14.2

我面临的问题如下:

“我们发现您的应用内购买产品在 iPhone 运行 iOS 14.2 Wi-Fi 上进行审核时出现了一个或多个错误。”

“在您的服务器上验证收据时,您的服务器需要能够处理生产签名的应用程序从 Apple 的测试环境获取收据。推荐的方法是让您的生产服务器始终根据生产应用程序验证收据首先存储。如果验证失败并显示错误代码“Sandbox receipt used in production”,您应该改为针对测试环境进行验证。“

我已经实现了应用程序内购买(非消耗品),它在购买和恢复等方面工作得很好。Apple 以上述原因拒绝。

我在做什么:

  1. 使用 SwiftyStoreKit
  2. 点击购买按钮
  3. SwiftyStoreKit.retrieveProductsInfo
  4. SwiftyStoreKit.purchaseProduct
  5. 成功时(SwiftyStoreKit.finishTransaction)

恢复:

  1. 点击恢复
  2. SwiftyStoreKit.restorePurchases

如果需要更多信息或代码等,请告诉我我做错了什么拒绝了该应用程序。

苹果最近也回复了我下面这条消息:

“关于购买应用内购买,我们仍然无法购买该应用的完整版本。当我们点击购买按钮时,该应用会无限期地继续加载。

我们无法提供有关应用程序概念或功能的反馈,但我们建议根据 App Store 审核指南、iOS 开发者计划许可协议 (PLA) 和iOS 人机界面指南。"

所以我找到了解决方案。当您收到类似上述的错误时,以下是您需要检查和执行的步骤。

  1. 首先检查您的 In-App 采购实施。你做对了吗,结束交易等等
  2. 检查您的 XCode 支持的 iOS 的最新版本是什么。如果它低于我的问题中显示的(xcode ios 版本是 14.0 和 14.2 问题)。

为此,您只需下载支持该 iOS 版本的最新 XCode 并进行构建,然后提交以供审核。肯定有用。