SKPaymentTransactionObserver
SKPaymentTransactionObserver
протокол объявляет методы, реализованные наблюдателями SKPaymentQueue
объект.
Когда транзакции обновлены очередью или удалены из очереди, наблюдателя вызывают. Наблюдатель должен обработать все успешные транзакции, разблокировать функциональность, купленную пользователем, и затем закончить транзакцию путем вызова очереди платежа finishTransaction:
метод.
Наследование
Не применимый
Оператор импорта
Swift
import StoreKit
Objective C
@import StoreKit;
Доступность
Доступный в OS X v10.7 и позже.
-
Говорит наблюдателю, что были обновлены одна или более транзакций. (требуемый)
Объявление
Swift
func paymentQueue(_
queue
: SKPaymentQueue!, updatedTransactionstransactions
: [AnyObject]!)Objective C
- (void)paymentQueue:(SKPaymentQueue *)
queue
updatedTransactions:(NSArray *)transactions
Параметры
queue
Очередь платежа, обновившая транзакции.
transactions
Массив обновленных транзакций.
Обсуждение
Приложение должно обработать каждую транзакцию путем исследования транзакции
transactionState
свойство. ЕслиtransactionState
SKPaymentTransactionStatePurchased
, платеж был успешно получен для желаемой функциональности. Приложение должно сделать функциональность доступной для пользователя. ЕслиtransactionState
SKPaymentTransactionStateFailed
, приложение может считать ошибочное свойство транзакции, чтобы возвратить значимую ошибку пользователю.Как только транзакция обрабатывается, она должна быть удалена из очереди платежа путем вызова очереди платежа
finishTransaction:
метод, передавая транзакцию в качестве параметра.Оператор импорта
Objective C
@import StoreKit;
Swift
import StoreKit
Доступность
Доступный в OS X v10.7 и позже.
-
Говорит наблюдателю, что одна или более транзакций были удалены из очереди.
Объявление
Swift
optional func paymentQueue(_
queue
: SKPaymentQueue!, removedTransactionstransactions
: [AnyObject]!)Objective C
- (void)paymentQueue:(SKPaymentQueue *)
queue
removedTransactions:(NSArray *)transactions
Параметры
queue
Очередь платежа, обновившая транзакции.
transactions
Массив удаленных транзакций.
Обсуждение
Ваше приложение не должно обычно реализовывать этот метод, но могло бы реализовать его для обновления его собственного пользовательского интерфейса, чтобы отразить, что была завершена транзакция.
Оператор импорта
Objective C
@import StoreKit;
Swift
import StoreKit
Доступность
Доступный в OS X v10.7 и позже.
-
paymentQueue (_: restoreCompletedTransactionsFailedWithError:) - paymentQueue:restoreCompletedTransactionsFailedWithError:
Говорит наблюдателю, что ошибка произошла при восстановлении транзакций.
Объявление
Swift
optional func paymentQueue(_
queue
: SKPaymentQueue!, restoreCompletedTransactionsFailedWithErrorerror
: NSError!)Objective C
- (void)paymentQueue:(SKPaymentQueue *)
queue
restoreCompletedTransactionsFailedWithError:(NSError *)error
Параметры
queue
Очередь платежа, восстанавливавшая транзакции.
error
Произошедшая ошибка.
Оператор импорта
Objective C
@import StoreKit;
Swift
import StoreKit
Доступность
Доступный в OS X v10.7 и позже.
-
paymentQueueRestoreCompletedTransactionsFinished (_:) - paymentQueueRestoreCompletedTransactionsFinished:
Говорит наблюдателю, что очередь платежа закончила отправлять восстановленные транзакции.
Объявление
Swift
optional func paymentQueueRestoreCompletedTransactionsFinished(_
queue
: SKPaymentQueue!)Objective C
- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)
queue
Параметры
queue
Очередь платежа, восстановившая транзакции.
Обсуждение
Этот метод вызывают после того, как все восстановимые транзакции были обработаны очередью платежа. Ваше приложение не требуется, чтобы делать что-либо в этом методе.
Оператор импорта
Objective C
@import StoreKit;
Swift
import StoreKit
Доступность
Доступный в OS X v10.7 и позже.
-
Говорит наблюдателю, что очередь платежа обновила один или несколько объектов загрузки. (требуемый)
Объявление
Swift
optional func paymentQueue(_
queue
: SKPaymentQueue!, updatedDownloadsdownloads
: [AnyObject]!)Objective C
- (void)paymentQueue:(SKPaymentQueue *)
queue
updatedDownloads:(NSArray *)downloads
Параметры
queue
Очередь платежа, обновившая загрузки.
downloads
Обновленные объекты загрузки.
Обсуждение
Когда объект загрузки обновляется,
downloadState
свойство описывает, как оно изменилось.Оператор импорта
Objective C
@import StoreKit;
Swift
import StoreKit
Доступность
Доступный в OS X v10.8 и позже.