测试购买故障排查

如果您遇到交易问题,请首先确保您已完成发布检查清单中列出的所有步骤。如果您已完成所有步骤但仍遇到问题,请按照以下指南进行解决:

移动应用中返回错误

请参阅适用于您平台的错误列表:iOSAndroidReact NativeFlutterUnity,并按照我们的建议解决问题。

沙盒购买被拒绝为未授权

商店显示类似 You are not authorized to make purchases of this in-app in sandbox at this time 的提示。这是 Apple 拒绝了购买请求,而非 Adapty。请在测试设备和 App Store Connect 中核查以下内容:

  • 设备上已开启应用内购买功能:在 Settings > Screen Time > Apps & Websites > App Store 中,In-app Purchases 应设置为 Allowed。Apple 在 Turn off Apple In-App Purchases from Screen Time 中描述了该设置。
  • 沙盒账户已登录到正确的位置:请在 Settings > Developer > Sandbox Apple Account 下登录,而非通过主 Apple 账户登录。Apple 的说明是”请使用 Settings 中的 Sandbox 登录选项,而非主 Apple Account 设置。”
  • 测试人员的电子邮件地址不能是已有的 Apple 账户:Apple 指出,重复使用已有地址”会在测试过程中导致错误。“创建后无法修改测试人员的电子邮件地址,因此请使用不同的地址新建测试人员

交易未出现在事件流中,但移动端未返回任何错误

要解决此问题,请检查以下内容:

  1. 对于 iOS:请确保使用真机而非模拟器。
  2. 确保应用的 Bundle ID/Package nameApp settings 中的一致。
  3. 确保应用中的 PUBLIC_SDK_KEY 与 Adapty 看板中的 Public SDK key 一致:App settings -> General 标签页 -> API keys 子项
  4. 确保使用的是沙盒账号,而非本地 StoreKit 配置文件。如果之前曾使用本地 StoreKit 配置文件进行测试,请确保当前构建中未使用该文件。

我的测试用户画像中没有任何事件

这是正常现象。在以下情况下,Adapty 会自动创建新的用户画像记录:

  • 用户首次运行你的应用
  • 用户退出你的应用登录

原因说明: 所有交易和事件都与产生第一笔交易的用户画像绑定。这样可以确保完整的交易历史(试用、购买、续订)始终关联到同一个用户画像。

您将看到的情况: 新的用户画像记录(称为”非原始用户画像”)可能会出现,没有事件记录,但会保留访问等级。您可能会看到 access_level_updated 事件。这是预期行为。

测试建议: 为避免出现多个用户画像,每次重新安装应用时请创建新的测试账号(沙盒 Apple ID)。

更多详情,请参阅用户画像创建

以下是一个非原始用户画像的示例。请注意 User history 中没有事件记录,但存在访问等级。

98d0dad-non-original_profile.webp

价格与 App Store Connect 中设置的实际价格不符

在沙盒环境和使用沙盒内购的 TestFlight 中,重要的是验证购买流程是否正常运行,而不是关注价格是否准确。值得注意的是,当设备或账户配置了不同地区时,Apple 的 API 有时会返回不准确的数据。由于价格直接来自商店,Adapty 后端不会以任何方式影响购买价格,因此在通过 Adapty 测试购买时,可以忽略价格上的任何误差。

因此,请优先测试购买流程本身,而非价格的准确性,以确保其按预期运行。

事件流中的交易时间不正确

Event Feed 使用的是 App Settings 中设置的时区。要使事件时区与您的本地时间一致,请在 App settings -> General 标签页 中调整 Reporting timezone

付费墙和产品加载时间过长

如果你的测试账号有较长的交易记录,可能会出现此问题。我们强烈建议每次都创建一个新的测试账号,具体步骤请参考在 App Store Connect 中创建沙盒测试账号(沙盒 Apple ID)部分。

如果无法创建新账号,可以按照以下步骤在你的 iOS 设备上清除当前账号的交易记录:

  1. 打开 Settings,点击 App Store
  2. 点击你的 Sandbox Apple ID
  3. 在弹出窗口中,选择 Manage
  4. Account Settings 页面,点击 Clear Purchase History

更多详情,请参阅 Apple 开发者文档