【问题标题】:SKErrorDomain Code=0 “Cannot connect to iTunes Store”SKErrorDomain Code=0 “无法连接到 iTunes Store”
【发布时间】:2013-09-19 09:54:14
【问题描述】:

我的应用程序刚刚在 iTunes Store 上线,之后我无法开始任何购买。我已经在 Sandbox envoirnemnt 中测试了该应用程序及其工作正常。但是 Live 应用程序给出了错误

Error Domain=SKErrorDomain Code=0 “Cannot connect to iTunes Store

enum value = SKErrorUnknown

我已尝试从商店登录中退出任何测试帐户,但它只是不要求任何帐户登录并且错误不断出现。任何线索!

【问题讨论】:

  • 你用过XCodeCapabilitiestab吗?
  • 我刚刚检查了功能,应用程序内购买与应用程序 ID 相对(在开发门户上)。但它的行为仍然相同。我观察到崩溃,但出现以下消息:“NSInvalidArgumentException”,原因:“无法完成购买交易””但我明确地完成了所有待处理的交易,然后在 SKPaymentQueue 中添加新交易。
  • 什么是功能选项卡? @Vinzzz

标签: iphone ios objective-c in-app-purchase


【解决方案1】:

这可能是因为我猜有两个问题。

  • 确保您放置了正确的“产品标识符”。如果是这种情况,那么您将在调用 -[SKPaymentQueue addPayment:] 后不久收到错误 0,然后您会收到要求您确认付款的弹出窗口.

  • 您的测试用户已失效。如果您不小心使用测试用户登录 App Store,就会发生这种情况。发生这种情况时,您将在输入密码确认付款后收到错误 0。

要解决问题 #1,请输入正确的产品 ID。要解决问题 #2,请在 iTunes Connect 上创建一个新的测试用户,并可选择删除旧的测试用户。

希望对你有所帮助。

【讨论】:

  • 我收到了这个错误。仔细检查了我的请求,并意识到我正在发送一组空标识符。纠正了这一点,错误就消失了。谢谢!
  • 欢迎。很高兴我能帮上忙。
  • 就像一个附录 - 您仍然可以看到此错误手动输入您的密码以确认您的付款时问题与您有关测试用户。为了解决这个问题 - 我创建了一个新的测试用户,然后转到设备上的设置,转到 iTunes 和 App Store,并使用我的旧用户退出 iTunes 帐户,错误就消失了。
  • 在我的错误中,这个错误发生在after trying to upgrade a plangithub.com/chirag04/react-native-in-app-utils/issues/205。我正在使用 sanbox 测试仪。
【解决方案2】:

我在测试订阅时遇到了同样的错误,通过添加本地化(订阅显示名称 和描述)从 iTunes 连接到产品。

【讨论】:

  • 这实际上是非常重要的信息,这正是我的情况。没有明显的方法可以从错误中看到这一点,当您为未来的应用内购买准备占位符时,您可能很快就会错过它。
  • @I-I 嗨,您能多谈谈如何从 iTunes connect 向产品添加本地化(订阅显示名称和描述)吗?
  • 在您可以编辑应用内购买的页面中,您可以找到一个名为“应用商店信息”的部分。在本节中,您可以添加本地化。你需要至少有一个它才能工作。
  • 这条评论有点啰嗦,但我很抱歉。这绝对是疯了。苹果怎么能在其文档中不提及这一点?如果它导致如此模糊的问题,他们为什么要允许开发人员在没有显示名称的情况下测试订阅?我一直在为同样的问题苦苦挣扎这么久。我确信他们不难实现一个不同的错误代码,告诉我们缺少元数据。无论如何,非常感谢。这对我有用。
【解决方案3】:

检查您是否退出了 iTunes Store。 要退出,请按以下步骤操作:

  1. 打开设置应用
  2. 点按“商店”行
  3. 点按“退出”

【讨论】:

    【解决方案4】:

    你可以检查一些东西并验证它。

    Verify following things

    (1)您的应用程序的Bundle ID。它应该与您在已添加应用内购买的 iTunes 商店中创建的相同。

    (2) 检查您在应用程序中使用的 In App Identifier 名称。

    如果其中任何一个不匹配,则会抛出 Error Domain=SKErrorDomain Code=0 “Cannot connect to iTunes Store 异常。

    【讨论】:

    • 你好,如何查看In App Identifier Name?
    【解决方案5】:

    这个场景正是我的。调用 addPayment 后,会弹出一个对话框,显示“使用现有或新帐户登录 iTunes 商店”。一旦我选择了登录,我就得到了上面的错误。

    我重新初始化了我的 iPad 并退出了 iCloud。没运气。然后,给朋友看,发现还有一个iTunes a&AppStore的退出选项,和这个不同。单击 Touch Id 行,它为我提供了一个退出选项。然后,系统提示我使用测试帐户登录进行购买。成功了!

    【讨论】:

      【解决方案6】:

      在您的 Xcode 中:

      1. 点击停止按钮旁边的活动方案名称
      2. 点击编辑方案....
      3. 在运行(调试)中选择参数选项卡
      4. 在环境变量中单击 +
      5. 添加变量:OS_ACTIVITY_MODE = 禁用

      【讨论】:

      • 使用沙盒用户测试时,需要先进行上述设置。
      猜你喜欢
      • 1970-01-01
      • 2012-01-02
      • 2018-09-18
      • 1970-01-01
      • 1970-01-01
      • 2015-05-31
      • 2019-06-21
      • 2019-07-24
      • 1970-01-01
      相关资源
      最近更新 更多