尽管没有登录 iTunes 帐户,iOS 仍恢复应用内购买

标签 ios in-app-purchase app-store

我的一个 iOS 应用已经在 App Store 上架多年,提供不同的非消耗性应用内购买项目。

目前我也在努力添加一些新的消耗品。由于模拟器不支持测试购买,我在我的真实设备上运行测试:

  • 设备运行的是 iOS 12。在系统设置中,我已经从我的真实 iTunes 帐户登录并重新启动设备
  • 在 AppStoreConnect 中,我创建了一个新的测试用户/iTunes 帐户并激活了它
  • 在使用 Xcode 10 在设备上安装新的应用程序版本后,我开始使用 [[SKPaymentQueue defaultQueue] restoreCompletedTransactions]
  • 恢复之前的购买

我预计 iOS 会显示一个 App Store 登录名,我可以在其中使用新测试帐户的凭据。相反,paymentQueue:updatedTransactions:SKPaymentTransactionStateRestored 状态下被不同的交易调用。我假设这些是我一段时间前使用我的真实 App Store 帐户进行的真实交易。

从 iTunes/App Store 注销时这怎么可能?

结果是一样的,即使我在系统设置中登录测试帐户,重启设备运行恢复过程也比。

为什么我用其他账户(测试账户)登录真实账户的交易是恢复的?

我该怎么做才能强制 iOS 从我的真实帐户注销并改用测试帐户?

最佳答案

enter image description here

检查设置->iTunes & 应用商店 -> 向下滚动 这里是 SANDBOX ACCOUNT 退出沙箱账户,一切正常

关于尽管没有登录 iTunes 帐户,iOS 仍恢复应用内购买,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52720707/

相关文章:

iphone - 无法将应用提交到App Store,无法选择任何应用

ios - 保持应用程序 Logo 中的公司名称与 ios 中的应用程序名称不同

objective-c - 自动引用计数 - 发送到已释放实例的消息

iOS 17 UIKit Popover 在 iPad 上崩溃 - UIPopoverPresentationController 应该有一个非零的 sourceView

iphone - 使用应用内购买来解锁功能与使用 iPhone 的免费和付费应用版本

android - 无法更改应用内结算的默认货币

android - 如何确定获取 Google 用户 ID(不是设备 ID)?

react-native - 我是否将 ATS 与 React Native Firebase 一起使用?

java - 在桌面应用程序中加载网页

javascript - 专注于模式内的输入会导致 ios 向下滚动