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 *)controllerdidAuthorizePayment:(PKPayment *)paymentcompletion:(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 *)controllerdidSelectShippingMethod:(PKShippingMethod *)shippingMethodcompletion:(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 *)controllerdidSelectShippingAddress:(ABRecordRef)addresscompletion:(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;Константы
-
SuccessPKPaymentAuthorizationStatusSuccessУспешная авторизация платежа или транзакция, как ожидают, успешно выполнится.
Доступный в iOS 8.0 и позже.
-
FailurePKPaymentAuthorizationStatusFailureНеработающая авторизация платежа.
Используйте это значение для отказов, не имеющих более определенного состояния постоянным, такого как недопустимый адрес или контакт.
Доступный в iOS 8.0 и позже.
-
InvalidBillingPostalAddressPKPaymentAuthorizationStatusInvalidBillingPostalAddressНедопустимый или неприменимый расчетный адрес.
Доступный в iOS 8.0 и позже.
-
InvalidShippingPostalAddressPKPaymentAuthorizationStatusInvalidShippingPostalAddressНедопустимый или неприменимый адрес поставки.
Доступный в iOS 8.0 и позже.
-
InvalidShippingContactPKPaymentAuthorizationStatusInvalidShippingContactНедопустимый или неполный контакт поставки.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import PassKit;Swift
import PassKitДоступность
Доступный в iOS 8.0 и позже.
-
