使用StoreKit无法获取正确transactionIdentifier问题求助
应用内购买transactionID异常:仅返回从0递增的单个数字
近日我发现应用内购买流程出现故障,恢复的transactionID始终是从0开始递增的单个数字,而正常情况下每个交易都对应一个大型唯一编号。我并未修改相关代码,代码如下:
func purchaseProduct(_ product: Product, completion: @escaping (Bool) -> Void) { let payment = SKPayment(product: product.skProduct) SKPaymentQueue.default().add(self) SKPaymentQueue.default().add(payment) purchaseStatus = .pending purchaseCompletion = completion } func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) { for transaction in transactions { print(transaction) switch transaction.transactionState { case .purchased: print(transaction.transactionIdentifier) // this is not proper SKPaymentQueue.default().finishTransaction(transaction) DispatchQueue.main.async { self.purchaseStatus = .success } resetPurchaseStatus() case .failed: // Handle failed purchase if let error = transaction.error { DispatchQueue.main.async { self.purchaseStatus = .failure(error) } } SKPaymentQueue.default().finishTransaction(transaction) resetPurchaseStatus() case .restored: // Handle restored purchases SKPaymentQueue.default().finishTransaction(transaction) DispatchQueue.main.async { self.purchaseStatus = .success } resetPurchaseStatus() default: break } } }
请问有人遇到过这类问题吗?
内容的提问来源于stack exchange,提问作者S. L.
相关产品推荐
相关产品推荐

