用户在 apple ID 对话框中的应用内购买失败

In App Purchases failed by user on apple ID dialogue

我有一个场景,其中的一些步骤如下:

  1. 恢复调用的购买方法
  2. 已提取恢复结果
  3. 用户取消了 Apple ID 和密码的对话
  4. results.restoreFailedPurchases.count > 0
  5. 之后restoreFailed结果如下

SKErrorCode(_nsError: Error Domain=SKErrorDomain Code=2 "Cannot connect to iTunes Store" UserInfo={NSLocalizedDescription=Cannot connect to iTunes Store})

如何获取相应错误消息的用户信息对象形式?

您需要解压缩 SKError 以确定根本错误是什么。在您发布的示例中,code=2 表示用户已取消。

if let error = error as? SKError {
    switch error.code {
    case .paymentCancelled:
        // Handle user cancelled
    default:
        break
    }
}

SKErrorCode 文档:https://developer.apple.com/documentation/storekit/skerrorcode