Я пытаюсь создать систему подписки, и она убивает меня. Я пришел к этой проблеме. Таким образом, пользователь входит и занимает некоторое время, пока не появится предупреждение от iTunes. Я решил разместить оповещение по загрузке, но я не знаю, когда его остановить. Я не знаю, где разместить этот метод.Оповещение о загрузке в SKPaymentTransaction
Вот мой код:
func paymentQueue(queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
for transaction:AnyObject in transactions {
if let trans:SKPaymentTransaction = transaction as? SKPaymentTransaction{
switch trans.transactionState {
case .Purchasing:
let alert = UIAlertController(title: nil, message: "Please wait...", preferredStyle: .Alert)
alert.view.tintColor = UIColor.blackColor()
let loadingIndicator: UIActivityIndicatorView = UIActivityIndicatorView(frame: CGRectMake(10, 5, 50, 50)) as UIActivityIndicatorView
loadingIndicator.hidesWhenStopped = true
loadingIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyle.Gray
loadingIndicator.startAnimating();
alert.view.addSubview(loadingIndicator)
presentViewController(alert, animated: true, completion: nil)
break
case .Purchased:
self.validateReceipt()
//self.setExpirationDate()
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
//dismissViewControllerAnimated(false, completion: nil)
break
case .Failed:
SKPaymentQueue.defaultQueue().finishTransaction(transaction as! SKPaymentTransaction)
print("Not called Expired")
break
case .Restored:
SKPaymentQueue.defaultQueue().restoreCompletedTransactions()
print("Restored")
break
default:
//dismissViewControllerAnimated(false, completion: nil)
break
}
}
}
}
Вот dismissViewControllerAnimated(false, completion: nil)
для закрытия погрузочного предупреждения.
вы можете остановить индикатор в «случае .Purchased:», «дело .Failed:», «случай .Restored:» –
Это не работает, если я поместить его там –