Apple Pay en watchOS en Xamarin

Apple ha realizado varias mejoras en Apple Pay en watchOS 3 que agrega compatibilidad con pagos desde la aplicación. Esto permite al usuario proporcionar de forma segura información de pago y contacto para pagar bienes físicos y servicios directamente desde Apple Watch.

Acerca de las mejoras de Apple Pay

Como se indicó anteriormente, Apple ha realizado varias mejoras en Apple Pay en watchOS 3 que permiten el pago seguro y la información de contacto para pagar bienes físicos y servicios directamente desde Apple Watch. Estas mejoras se proporcionan mediante modificaciones en el marco PassKit.

Con iOS 10 y watchOS 3, se han agregado varias API nuevas que funcionan con iOS y watchOS para admitir redes de pago dinámicas y un nuevo entorno de prueba de espacio aislado.

Mejoras de PassKit Framework

En iOS 10, el marco PassKit se ha ampliado para admitir Apple Pay fuera de UIKit y para permitir que los emisores de tarjetas presenten sus tarjetas desde sus aplicaciones.

Compatibilidad con Apple Pay fuera de UIKit

Mediante PKPaymentAuthorizationController y PKPaymentAuthorixationControllerDelegate, una aplicación puede admitir la misma funcionalidad proporcionada por PKPaymentAuthorizationViewController sin usar UIKit. Aunque esta nueva API es necesaria para admitir Apple Pay en Apple Watch (y también en intenciones específicas), es opcional en otras situaciones (como las aplicaciones existentes). Sin embargo, Apple sugiere pasar a la nueva API tan pronto como sea posible para proporcionar soporte amplio con Apple Pay en todas las aplicaciones del desarrollador con una sola base de código. Para obtener más información acerca de las intenciones y la integración de Siri, consulte nuestra introducción a SiriKit documentación.

Presentación de tarjetas de emisor desde aplicaciones

Con iOS 10 y watchOS 3, se han agregado nuevas características al marco PassKit que permiten a los emisores de tarjetas presentar sus tarjetas de pago desde sus propias aplicaciones. El desarrollador puede agregar un PKPaymentButtonTypeInStore UIButton a la interfaz de usuario de la aplicación que mostrará un botón Apple Pay para una tarjeta.

El método PresentPaymentPass de la clase PKPassLibrary también se puede usar para mostrar la tarjeta mediante programación.

Nuevo soporte de red de pago

Nueva en iOS 10 y watchOS 3, una aplicación puede admitir automáticamente una nueva red de pago cuando esté disponible sin que el desarrollador tenga que modificar, volver a compilar la aplicación y volver a enviarla a App Store.

El nuevo método AvailableNetworks de la clase PKPaymentNetwork permite a una aplicación detectar las redes disponibles en el dispositivo del usuario en tiempo de ejecución. Además, la propiedad SupportedNetworks se ha expandido para tomar el nombre del proveedor de pagos como argumento. Con estos métodos, una aplicación puede admitir automáticamente cualquier red que admita el proveedor de pagos.

Para obtener más información, consulte nuestra Apple Pay Configuration y Apple'sGuía de Apple Pay .

Nuevo entorno de pruebas

Con iOS 10 y watchOS 3, Apple introdujo un nuevo entorno de prueba que permite al desarrollador aprovisionar tarjetas de pago de prueba directamente en un dispositivo iOS. A continuación, este nuevo entorno de prueba devuelve datos de pago de prueba cifrados a la aplicación.

Para habilitar el nuevo entorno de prueba, haga lo siguiente:

  1. Crear una nueva cuenta de iCloud de prueba en iTunes Connect.
  2. Inicie sesión en el dispositivo iOS con la nueva cuenta de prueba.
  3. Establezca la región deseada para probar la aplicación.
  4. Use una de las tarjetas de pago de prueba del Guía Apple Pay para realizar pagos.

Nota:

Al conmutar las cuentas de iCloud, el dispositivo cambiará automáticamente al nuevo entorno de prueba. Sin embargo, Apple todavía requiere la aplicación se pruebe con tarjetas reales en un entorno de producción antes de enviar a iTunes App Store.

Resumen

En este artículo se han tratado las mejoras que Apple ha realizado en Apple Pay en watchOS 3 y cómo implementarlas en Xamarin.iOS.