【发布时间】:2019-04-06 09:48:37
【问题描述】:
为了在Swift iOS 应用程序中设置 Receipt-Validation(使用 In-App-Purchase),我正在学习本教程:https://www.raywenderlich.com/9257-in-app-purchases-receipt-validation-tutorial 并在此处阅读:Validating Apple Signed the Receipt .
这是我现在遇到的一个问题。
在代码中我有这个:
Bundle.main.url(forResource: "AppleIncRootCertificate", withExtension: "cer")
当我检查它的值时,它是 nil。由于它应该用于提取更多信息,因此它显然不应该是 nil。问题是:代码或某些设置中可能有什么问题导致此为 nil?
这是我第一次实现 Receipt-Validation,所以很可能我缺少一些基本的东西。
【问题讨论】:
-
检查这个:developer.apple.com/documentation/foundation/bundle/1411540-url这个方法的返回值可以是资源文件的文件URL,如果找不到文件,则返回nil。
-
好的。我以为我应该在调用 SKReceiptRefreshRequest() 时得到它。我有点失落。如果没有,我该怎么做才能得到这个文件?
-
它是
nil因为文件 AppleIncRootCertificate.cer 没有添加到您的目标中 -
好吧,既然我在我的电脑上找不到它,我想我应该从apple.com/certificateauthority 那里得到它。我说的对吗?
标签: ios swift openssl pkcs#7 receipt-validation