Я пытаюсь настроить Apple Pay на свое приложение, но у меня нет iPhone 6 со мной в данный момент. Поэтому я пытаюсь собрать все и запустить с симулятором, прежде чем я смогу купить его, или попытаться заставить кого-то одолжить мне.iOS Simulator застрял в «Pay with Passcode» при попытке Apple Pay
Во всяком случае, я попал в точку, фактически показывает контроллер представления ApplePay:
Но когда я нажимаю на «Оплатить с помощью кода доступа» ничего не происходит, так что я не могу идти дальше и завершите тестирование всего на сервере.
Вот соответствующие части моего кода:
class PaymentVC: UIViewController,PKPaymentAuthorizationViewControllerDelegate {
@IBAction func onPaymentSubmit(sender: AnyObject) {
if PKPaymentAuthorizationViewController.canMakePaymentsUsingNetworks(supportedPaymentNetworks) {
let applePayMerchantID = "merchant.com.id"
let request = PKPaymentRequest()
request.merchantIdentifier = applePayMerchantID
request.supportedNetworks = supportedPaymentNetworks
request.merchantCapabilities = PKMerchantCapability.Capability3DS
request.countryCode = "US"
request.currencyCode = "USD"
request.paymentSummaryItems = [
PKPaymentSummaryItem(label: "Custom Order", amount: NSDecimalNumber(float: total))
]
let applePayController = PKPaymentAuthorizationViewController(paymentRequest: request)
applePayController.delegate = self
self.presentViewController(applePayController, animated: true, completion: nil)
}
}
//MARK: Apple Pay
func paymentAuthorizationViewController(controller: PKPaymentAuthorizationViewController, didAuthorizePayment payment: PKPayment, completion: (PKPaymentAuthorizationStatus) -> Void) {
}
func paymentAuthorizationViewControllerDidFinish(controller: PKPaymentAuthorizationViewController) {
controller.dismissViewControllerAnimated(true, completion: nil)
}
}
Любая идея, что может быть не так?
Это настолько странно, что я бы поклялся, что у меня там был контрольный пункт, и его не вызывали. Но да, это заставило его работать. Благодаря! В случае, если кто-то задается вопросом, строка, добавляемая для проверки успешного платежа, - это «завершение (PKPaymentAuthorizationStatus.Success)» – Jan