Sto avviando un progetto di integrazione di Apple Pay e sono stato in grado di cablare una transazione sul dispositivo e utilizzare Stripe per autorizzare il pagamento. La parte in cui sto effettivamente lottando è il modo corretto per il dispositivo di verificare se Apple Pay è supportato? Quindi, per i vecchi modelli di Iphone sceglierei di nascondere le funzionalità di Apple Pay, anche se hanno installato ios8 o ios9.Come verificare il dispositivo ios supporta Apple Pay
Posso probabilmente verificare il modello del dispositivo e ignorare Applica pagamento per < Iphone5S. Tuttavia questo diventa complicato se devo anche iniziare a testare le versioni IPad, ecc.
Mi chiedevo se c'è un solo metodo per verificare se ApplePay è supportato?
Ho trovato questo metodo online come un'idea, tuttavia ha affermato che il pagamento di Apple era supportato nel simulatore Iphone5, che immagino non sia completamente vero. Sfortunatamente non ho un dispositivo Iphone5 con cui testare.
- (BOOL) applePaySupported {
return [PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:@[PKPaymentNetworkAmex, PKPaymentNetworkVisa, PKPaymentNetworkMasterCard]];
}
EDIT/SOLUZIONE:
Io uso questa linea e si è verificato a lavorare per Iphone5 (non supportato) vs iPhone6 (supportato); e presumo altri dispositivi. Non sono del tutto sicuro che funzioni sempre in Simulator ma ApplePay è un po 'strano in ogni caso e il test è fatto meglio sul dispositivo.
- (BOOL) applePaySupported {
return [PKPaymentAuthorizationViewController canMakePayments] && [PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:@[PKPaymentNetworkAmex, PKPaymentNetworkVisa, PKPaymentNetworkMasterCard]];
}
Ho provato entrambe le condizioni insieme ma si sta sempre restituendo vero, per favore fatemi sapere cosa fare? –
Ronak ha ragione, entrambi i controlli sono necessari. – Rushabh