PKPaymentAuthorizationViewControllerDelegate
Наследование
Не применимый
Оператор импорта
Swift
import PassKit
Objective C
@import PassKit;
Доступность
Доступный в iOS 8.0 и позже.
PKPaymentAuthorizationViewControllerDelegate
протокол реализован представлением авторизации платежа делегат контроллера. Вы реализуете этот протокол для ответа на взаимодействие с пользователем с тем контроллером представления.
Контроллер представления авторизации платежа автоматически ожидает его делегата, чтобы закончить отвечать на один метод, прежде чем это вызовет другие методы делегата. Вы указываете, что делегат закончен с существующим методом путем вызова что блок завершения метода. Это действие говорит контроллеру представления авторизации оплаты продолжаться со следующим шагом в процессе авторизации.
Существует одно исключение к этой поэтапной процедуре: контроллер представления авторизации оплаты вызывает paymentAuthorizationViewControllerDidFinish
метод, как только пользователь отменяет платеж без авторизации. В любое время контроллер может вызвать этот метод.
-
paymentAuthorizationViewControllerWillAuthorizePayment (_:) - paymentAuthorizationViewControllerWillAuthorizePayment:
Говорит делегату, что пользователь авторизовывает платежное требование.
Объявление
Swift
optional func paymentAuthorizationViewControllerWillAuthorizePayment(_
controller
: PKPaymentAuthorizationViewController!)Objective C
- (void)paymentAuthorizationViewControllerWillAuthorizePayment:(PKPaymentAuthorizationViewController *)
controller
Параметры
controller
Контроллер представления авторизации платежа.
Обсуждение
Этот метод вызывают, прежде чем платежное требование авторизовывается, но после того, как пользователь аутентифицировал или при помощи кода доступа или при помощи Касания ID.
Оператор импорта
Objective C
@import PassKit;
Swift
import PassKit
Доступность
Доступный в iOS 8.3 и позже.
-
paymentAuthorizationViewController (_: didAuthorizePayment:completion:) - paymentAuthorizationViewController:didAuthorizePayment:completion:
ТребуемыйГоворит делегату, что пользователь авторизовал платежное требование. (требуемый)
Объявление
Swift
func paymentAuthorizationViewController(_
controller
: PKPaymentAuthorizationViewController!, didAuthorizePaymentpayment
: PKPayment!, completioncompletion
: ((PKPaymentAuthorizationStatus) -> Void)!)Objective C
- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)
controller
didAuthorizePayment:(PKPayment *)payment
completion:(void (^)(PKPaymentAuthorizationStatus status))completion
Параметры
controller
Контроллер представления авторизации платежа.
payment
Разрешенная оплата. Этот объект содержит маркер платежа, который необходимо представить компании обслуживания платежей, а также тарификации и информации о поставке, требуемой платежным требованием.
completion
Блок завершения, который вызовут после приложения, разрешает оплату.
Этот блок берет следующие параметры:
status
Состояние авторизации для платежа. Для значений посмотрите
PKPaymentAuthorizationStatus
.Обсуждение
Этот метод вызывают после того, как платежное требование авторизовывается. Вы представляете информацию платежа к своей компании обслуживания платежей, чтобы авторизовать транзакцию, и затем вызвать блок завершения.
Оператор импорта
Objective C
@import PassKit;
Swift
import PassKit
Доступность
Доступный в iOS 8.0 и позже.
-
paymentAuthorizationViewControllerDidFinish (_:) - paymentAuthorizationViewControllerDidFinish:
ТребуемыйГоворит делегату, что завершилась авторизация платежа. (требуемый)
Объявление
Swift
func paymentAuthorizationViewControllerDidFinish(_
controller
: PKPaymentAuthorizationViewController!)Objective C
- (void)paymentAuthorizationViewControllerDidFinish:(PKPaymentAuthorizationViewController *)
controller
Параметры
controller
Контроллер представления авторизации платежа.
Обсуждение
Используйте этот метод, чтобы отклонить контроллер представления авторизации платежа и обновить любое другое состояние приложения.
Когда пользователь авторизовывает платежное требование, этот метод вызывают после состояния от
paymentAuthorizationViewController:didAuthorizePayment:completion:
блок завершения метода был показан пользователю. Когда пользователь отменяет, не авторизовывая платежное требование, толькоpaymentAuthorizationViewControllerDidFinish:
вызывается.Оператор импорта
Objective C
@import PassKit;
Swift
import PassKit
Доступность
Доступный в iOS 8.0 и позже.
-
paymentAuthorizationViewController (_: didSelectShippingMethod:completion:) - paymentAuthorizationViewController:didSelectShippingMethod:completion:
Говорит делегату, что пользователь выбрал способ доставки.
Объявление
Swift
optional func paymentAuthorizationViewController(_
controller
: PKPaymentAuthorizationViewController!, didSelectShippingMethodshippingMethod
: PKShippingMethod!, completioncompletion
: ((PKPaymentAuthorizationStatus, [AnyObject]!) -> Void)!)Objective C
- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)
controller
didSelectShippingMethod:(PKShippingMethod *)shippingMethod
completion:(void (^)(PKPaymentAuthorizationStatus status, NSArray *summaryItems))completion
Параметры
controller
Контроллер представления авторизации платежа.
shippingMethod
Выбранный способ доставки. Этот параметр содержит один из способов доставки, включенных в платежное требование.
completion
Блок завершения, который вызовут с обновленной информацией о поставке.
Этот блок берет следующие параметры:
status
Состояние авторизации для платежа. Для значений посмотрите
PKPaymentAuthorizationStatus
.summaryItems
Массив
PKPaymentSummaryItem
объекты, который заменяет сводные элементы для текущего платежного требования.Обсуждение
Используйте этот метод для обновления затрат на доставку на основе адреса поставки, выбранного пользователем, как ранее передано делегату в
paymentAuthorizationViewController:didSelectShippingAddress:completion:
метод. Если никакой адрес не был выбран, используйте предзаполненный адрес на платежном требовании.Когда этот метод вызывают, Вы создаете новый массив
PKPaymentSummaryItem
объект, которые представляют обновленную стоимость, включающую доставку. Для получения дополнительной информации о создании сводных элементов посмотритеPKPaymentRequest
классpaymentSummaryItems
свойство.Оператор импорта
Objective C
@import PassKit;
Swift
import PassKit
Доступность
Доступный в iOS 8.0 и позже.
-
paymentAuthorizationViewController (_: didSelectShippingAddress:completion:) - paymentAuthorizationViewController:didSelectShippingAddress:completion:
Говорит делегату, что пользователь выбрал адрес поставки.
Объявление
Swift
optional func paymentAuthorizationViewController(_
controller
: PKPaymentAuthorizationViewController!, didSelectShippingAddressaddress
: ABRecord!, completioncompletion
: ((PKPaymentAuthorizationStatus, [AnyObject]!, [AnyObject]!) -> Void)!)Objective C
- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)
controller
didSelectShippingAddress:(ABRecordRef)address
completion:(void (^)(PKPaymentAuthorizationStatus status, NSArray *shippingMethods, NSArray *summaryItems))completion
Параметры
controller
Контроллер представления авторизации платежа.
address
Запись адресной книги представление выбранного способа доставки.
completion
Блок завершения, который вызовут с обновленной информацией о поставке.
Этот блок берет следующие параметры:
status
Состояние авторизации для платежа. Для значений посмотрите
PKPaymentAuthorizationStatus
.shippingMethods
Массив
PKShippingMethod
объекты, который заменяет способы доставки для текущего платежного требования.summaryItems
Массив
PKPaymentSummaryItem
объекты, который заменяет сводные элементы для текущего платежного требования.Обсуждение
Используйте этот метод для обновления доступных способов доставки и, если способ доставки был выбран, текущая стоимость доставки.
Когда этот метод вызывают, Вы создаете новый массив допустимых
PKShippingMethod
объекты для указанного адреса. Вы также создаете массивPKPaymentSummaryItem
объекты, представляющие обновленную стоимость. Если допустимый способ доставки был выбран, сводные элементы должны включать стоимость доставки. Для получения дополнительной информации об обновлении этих значений посмотритеPKPaymentRequest
классshippingMethods
иpaymentSummaryItems
свойства.Оператор импорта
Objective C
@import PassKit;
Swift
import PassKit
Доступность
Доступный в iOS 8.0 и позже.
-
Общее состояние успеха и провала, а также коды сгенерировано определенными отказами.
Объявление
Swift
enum PKPaymentAuthorizationStatus : Int { case Success case Failure case InvalidBillingPostalAddress case InvalidShippingPostalAddress case InvalidShippingContact }
Objective C
typedef enum : NSInteger { PKPaymentAuthorizationStatusSuccess, PKPaymentAuthorizationStatusFailure, PKPaymentAuthorizationStatusInvalidBillingPostalAddress, PKPaymentAuthorizationStatusInvalidShippingPostalAddress, PKPaymentAuthorizationStatusInvalidShippingContact, } PKPaymentAuthorizationStatus;
Константы
-
Success
PKPaymentAuthorizationStatusSuccess
Успешная авторизация платежа или транзакция, как ожидают, успешно выполнится.
Доступный в iOS 8.0 и позже.
-
Failure
PKPaymentAuthorizationStatusFailure
Неработающая авторизация платежа.
Используйте это значение для отказов, не имеющих более определенного состояния постоянным, такого как недопустимый адрес или контакт.
Доступный в iOS 8.0 и позже.
-
InvalidBillingPostalAddress
PKPaymentAuthorizationStatusInvalidBillingPostalAddress
Недопустимый или неприменимый расчетный адрес.
Доступный в iOS 8.0 и позже.
-
InvalidShippingPostalAddress
PKPaymentAuthorizationStatusInvalidShippingPostalAddress
Недопустимый или неприменимый адрес поставки.
Доступный в iOS 8.0 и позже.
-
InvalidShippingContact
PKPaymentAuthorizationStatusInvalidShippingContact
Недопустимый или неполный контакт поставки.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import PassKit;
Swift
import PassKit
Доступность
Доступный в iOS 8.0 и позже.
-