通过 Swift 通过应用内购买获得捐赠

Getting Donations With In-App Purchases with Swift

我计划实施应用内购买以支持应用开发。我在 AppStore connect 中制作了一个消耗品 IAP,并且我使用了这个代码

    @IBAction func supportDevelopmentButtonHasBeenTapped(_ sender: Any) {
    if SKPaymentQueue.canMakePayments() {
        let paymentReq = SKMutablePayment()
        paymentReq.productIdentifier = productID
        SKPaymentQueue.default().add(paymentReq)
    } else {
        print("user cannot make payment")
    }
}

和这个函数:

    func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
    for transaction in transactions {
        if transaction.transactionState == .purchased {
            let thanksAlert = UIAlertController(title: "Thanks!", message: "Thanks For Your Support", preferredStyle: UIAlertController.Style.alert)
            thanksAlert(UIAlertAction(title: "Back", style: UIAlertAction.Style.default, handler: nil))
            self.present(thanksAlert, animated: true, completion: nil)
            return 
            
        } else if transaction.transactionState == .failed {
            print("")
        }
    }
}

我的问题是用户不能购买超过一次,我怎样才能让用户想怎么支持就怎么支持?

我想你需要打电话给“transaction.transactionState == .purchased”

SKPaymentQueue.default().finishTransaction(transaction)