【发布时间】:2017-02-22 20:08:46
【问题描述】:
我正在为我的应用程序的应用内购买订阅进行收据验证。我正在使用来自这个 github 项目的 SwiftyReceiptValidator 文件:
https://github.com/crashoverride777/SwiftyReceiptValidator/tree/master/SwiftyReceiptValidator
帮助我验证收据。
在我正在使用的代码中:
SwiftyReceiptValidator.validate(forIdentifier: "MyProductId", sharedSecret: "MyCorrectSharedSecret") { (bool: Bool, dict: [String : AnyObject]?) in
}
当我尝试验证我的产品时,我得到 status = 21004,这意味着 SharedSecret Key 不正确。但我 100% 确定我的共享密钥是正确的,因为我直接从 iTunes Connect 复制并粘贴了它。
问题:
这个错误肯定是由 SharedSecret Key 引起的吗?或者这可能是由其他原因引起的?
执行上述代码时的输出
找到收据
开始收据验证
收据验证失败:URL 请求 - json 响应中的收据状态无效 = 21007
收据验证失败:在沙盒模式下使用的生产 url,正在尝试沙盒 url...
收据验证失败:URL 请求 - json 响应中的收据状态无效 = 21004
收据验证失败:状态 = 21004
【问题讨论】:
-
我面临同样的问题。 SwiftyStoreKit.verifyReceipt 返回 21004 错误。我也在使用正确的 SharedSecret 密钥。你运气好吗?谢谢
-
@Prakhar 还没有运气。仍在解决问题。当我找到解决方案时会通知你
-
@Prakhar,这是 Apple 的一个错误。现在好像修好了。看看下面的答案。
-
是的!我刚检查过。我也打算通知你。 :-P 谢谢老兄