даже если мы следовали рекомендациям, предоставленным Apple в их документации (сверху вниз), мы всегда получаем ту же ошибку, которая является что «подпись недействительна». < /p>
(
Код: Выделить всё
"Error: The operation couldn’t be completed. (SKErrorDomain error 12.)"< /code> < /p>
упоминает: < /p>
[*] Подпись была реализована на нашей стороне сервера < /li>
Подпись проверяется как действительная
[*] Я попробовал с подписью, сгенерированной с OpenSSL из терминала (который был также подтвержден действительным) и до сих пор не работал
В пользовательском интерфейсе у нас есть кнопка с надписью о покупке
func proceedToApplyOffer(signatureResult: PromotionalOfferSignatureResponse, username: String, completion: @escaping ((_ purchaseResult: Result) -> ())) {
if #available(iOS 12.2, *) {
self.getAppleProducts() {
productsResult in
// Get the apple products in order to be able to create the discount object
switch productsResult {
case .success(products: let products):
// Create the discount object with which the purchase will be made
guard let monthlyProduct: SKProduct = products.first(where: { $0.productIdentifier == self.monthlyProductIdentifier}) else { return }
let discount = SKPaymentDiscount(identifier: self.promotionalOfferIdentifier, keyIdentifier: self.keyIdentifier, nonce: signatureResult.nonce, signature: signatureResult.signature, timestamp: NSNumber(value: signatureResult.timestamp))
let swiftyDiscount = PaymentDiscount(discount: discount)
self.paymentService.purchaseProductWithDiscount(product: monthlyProduct, username: username, discount: swiftyDiscount) {
result in
switch result {
case .error(error: let skError):
completion(.error(skError))
case .success(purchase: let purchaseDetails):
completion(.success(purchaseDetails))
}
}
case .error(error: let error):
completion(.error(error))
}
}
}
else {
debugPrint("Not available on current OS version")
}
}< /code>
< /div>
< /div>
< /p>
Мне известно, что этот вопрос был задан ранее (я прочитал их все ), но у них не было никакого ответа, и я надеюсь, что у него будет один, так как я пришел к выводу, что даже вопросы, опубликованные на форуме Apple.Developer, остались без ответа.
Я оценлю любую помощь, любая Идея
Спасибо < /p>
Подробнее здесь: https://stackoverflow.com/questions/680 ... n-error-12