Реклама работает нормально.Однако, когда я добавляю оператор if else, чтобы выяснить, заплатил ли пользователь за удаление рекламы, оно не появляется, даже если они не заплатили за удаление рекламы.Единственное печатное заявление, которое я получаю, это «что-то называется», поэтому я чувствую, что с ключом «Куплено» что-то не так.Я проверил, чтобы убедиться, что они совпадают.Я что-то не так сделал с ключом?
func showAd() {
if let purchased = UserDefaults.standard.value(forKey: "Purchased") as? Bool{
if purchased == true{
interstitial = nil
print("there is no ad!!!!")
}else{
self.interstitial = createInterstitialAd()
print("there is an ad!!!")
}
} else {
print("it called something")
}
}
Редактировать: вот код, в котором я установил ключ.
func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
for transaction in transactions{
if transaction.transactionState == SKPaymentTransactionState.purchased{
//User Payment Successfull
UserDefaults.standard.set(true, forKey: "Purchased")
print("payment was successfull")
SKPaymentQueue.default().finishTransaction(transaction)
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let controller = storyboard.instantiateViewController(withIdentifier: "homeVC")
self.navigationController?.pushViewController(controller, animated: true)
}else if transaction.transactionState == .failed{
//User Payment failed
print("transaction failed...")
SKPaymentQueue.default().finishTransaction(transaction)
if let error = transaction.error {
print("\(error.localizedDescription)")
}
}
}
}