【发布时间】:2018-09-08 02:12:59
【问题描述】:
这个代码是苹果开发者网站上给出的,当用户点击促销应用商店产品时,它告诉检查是否可以完成交易?我该如何检查呢?因为如果交易失败或推迟并且似乎无法弄清楚如何做到这一点,我必须迎合。
//MARK: - SKPaymentTransactionObserver
func paymentQueue(_ queue: SKPaymentQueue, shouldAddStorePayment payment: SKPayment,
forProduct product: SKProduct) -> Bool {
// Check to see if you can complete the transaction.
// Return true if you can.
return true
}
我还必须满足下一个场景,我发现这些场景与检查交易是否可以完成的场景相同
func paymentQueue(_ queue: SKPaymentQueue, shouldAddStorePayment payment: SKPayment,
forProduct product: SKProduct) -> Bool {
// ... Add code here to check if your app must defer the transaction.
let shouldDeferPayment = ...
// If you must defer until onboarding is completed, then save the payment and return false.
if shouldDeferPayment {
self.savedPayment = payment
return false
}
// ... Add code here to check if your app must cancel the transaction.
let shouldCancelPayment = ...
// If you must cancel the transaction, then return false:
if shouldCancelPayment {
return false
}
}
// (If you canceled the transaction, provide feedback to the user.)
// Continuing a previously deferred payment
SKPaymentQueue.default().add(savedPayment)
)
我如何检查付款是否失败或需要延期或是否可以按照代码部分中的说明完成?
【问题讨论】:
-
我还在为如何检测交易是否需要推迟或取消以及如何在代码中编写它而摸不着头脑。有什么想法吗?
-
您想在模拟器或应用内购买沙盒环境中测试延迟交易状态,对吧?
-
@SagarThummar 我想了解如何检查交易是否需要延迟或必须取消或可以购买(就像我的第二个代码部分的注释部分中所说的那样问题。我需要知道如何为它编写代码。(第二部分代码段来自苹果在其开发者网站上的 Promoting In-App Purchases,他们没有详细说明如何为注释部分编写代码。)