我正在用swift编写一些代码来处理IAP。如何确定在paymentQueue
函数中购买了哪个IAP?
这是我到目前为止的代码:
func paymentQueue(queue: SKPaymentQueue!, updatedTransactions transactions: [AnyObject]!) {
println("Received Payment Transaction Response from Apple")
for transaction:AnyObject in transactions {
if let trans:SKPaymentTransaction = transaction as? SKPaymentTransaction{
switch trans.transactionState {
case .Purchased:
println("Product Purchased");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as SKPaymentTransaction)
break;
case .Failed:
println("Purchased Failed");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as SKPaymentTransaction)
break;
case .Restored:
println("Product Restored");
SKPaymentQueue.defaultQueue().finishTransaction(transaction as SKPaymentTransaction)
// case .Restored:
//[self restoreTransaction:transaction];
default:
break;
}
}
}
}
答案 0 :(得分:2)
SKPaymentTransaction
实例payment
属性的productIdentifier
值会为您提供相关产品。
您可以在its Class Reference中详细了解SKPaymentTransaction
。
答案 1 :(得分:1)