ios - StoreKit框架-更改应用内购买的iTunes商店时未调用回调

标签 ios objective-c storekit

我在StoreKit框架和切换国家/地区时遇到问题

我正在iOS上尝试以下情形。


  • 使用Apple开发人员帐户A登录到“设置”。它将商店更改为“国家1”,并带我到App Store
  • 返回设置并删除帐户(App Store国家仍为A)
  • 加载已启用付款功能的应用,然后尝试进行应用内购买
  • 使用仅对国家B中的购买有效的测试帐户B。
  • 使用测试帐户时,我得到确认,我将切换到App Store中的国家B,并被带到应用程序商店
  • 我恢复该应用程序后,并未称SKPaymentQueue的updatedTransactions回调失败。


  • 无论如何,我可以扣除此事件并显示适当的错误消息吗?谢谢!

    最佳答案

    我以前也发生过类似的事情。我的猜测是,某个时候有人使用您的沙盒帐户B登录iTunes。最有可能在设备的“设置”->“iTunes”屏幕中。应用内购买沙箱帐户如果曾经用于登录iTunes,则将变为无效;尝试使用它们的唯一方法是在尝试开始购买后在应用程序中提供用户名/密码。我的建议是使用iTunesConnect创建一个新的沙箱帐户,并使用iTunesConnect设置其国家/地区隶属关系,并确保没有人使用它来登录iTunes。

    关于ios - StoreKit框架-更改应用内购买的iTunes商店时未调用回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17179562/

    相关文章:

    ios - 从 iCloud 上传 PHAsset(即本地设备上不存在)

    ios - 如何为 UILabel 或 UITextField 文本的大小设置动画?

    ios - 如果没有以前购买的应用程序内产品可用,则显示警报

    ios - (react-native) 如何检测 react native 中的电池电量?

    ios - 将第一个 UICollectionViewCell 滚动到 View 中心

    objective-c - 抑制 "Method definition for %@ not found"

    iOS UIView 3D 旋转和 subview

    iphone - 如何提供storekit内容?

    swift - 检查用户是否已经在 SwiftyStoreKit 中购买了产品

    ios - dispatch_source_t 处理函数的计时问题——我是否遵循正确的调度计时器模式?