import UIKit
import StoreKit
class TestViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//添加观察者 把收银这个任务委托给这个控制器
SKPaymentQueue.default().add(self)
//实现内购
let pay = SKMutablePayment()
//选择商品
pay.productIdentifier = "com.maobao.IAP"
//加购 + 去收银台排队买单
SKPaymentQueue.default().add(pay)
}
}
extension TestViewController: SKPaymentTransactionObserver {
func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
for transaction in transactions {
if transaction.transactionState == .purchased {
//交易成功
print("购买成功")
//修改页面
SKPaymentQueue.default().finishTransaction(transaction)
}else if transaction.transactionState == .purchasing {
//交易失败
if let error = transaction.error {
print("购买失败,原因是" + "\(error)")
}
SKPaymentQueue.default().finishTransaction(transaction)
}
}
}
}
网友评论