Introducción a watchOS 3

En este artículo se presentan todas las API y características nuevas y modificadas disponibles en watchOS 3 para desarrolladores de Xamarin.

En este documento se tratarán los siguientes temas:

Novedades de watchOS 3

Apple ha agregado varias NUEVAS API y servicios en watchOS 3 junto con muchas mejoras en las características existentes, entre las que se incluyen:

Mejoras de Apple Pay

En watchOS 3, el marco PassKit se ha ampliado para permitir la compatibilidad con pagos seguros y en la aplicación (tanto de bienes físicos como de servicios) para las aplicaciones que se ejecutan en Apple Watch.

Use las nuevas clases PKPaymentAuthorizationController y PKPaymentAuthorizationControllerDelegate para presentar y responder a una interfaz en la que el usuario pueda autorizar las solicitudes de pago.

Para obtener más información, consulte nuestra guía de mejoras de Apple Pay .

Tareas en segundo plano

watchOS 3 presenta varias tareas en segundo plano que una aplicación puede usar para actualizar su información, lo que garantiza que tiene el contenido que necesita el usuario antes de abrirlo.

Están disponibles las siguientes nuevas tareas en segundo plano:

  • Actualización de la aplicación en segundo plano: la tarea WKApplicationRefreshBackgroundTask permite a la aplicación actualizar su estado en segundo plano. Normalmente, esto incluirá otra tarea, como descargar contenido nuevo de Internet mediante una NSUrlSession.
  • Actualización de instantáneas en segundo plano : la tarea WKSnapshotRefreshBackgroundTask permite a la aplicación actualizar tanto su contenido como su interfaz de usuario antes de que el sistema tome una instantánea que se usará para rellenar el Dock.
  • Conectividad de inspección en segundo plano : la tarea WKWatchConnectivityRefreshBackgroundTask se inicia para la aplicación cuando recibe datos en segundo plano del iPhone emparejado.
  • Sesión de dirección URL en segundo plano: la tarea WKURLSessionRefreshBackgroundTask se inicia para la aplicación cuando una transferencia en segundo plano requiere autorización o se completa (correctamente o en error).

Para obtener más información, consulte nuestra guía de tareas en segundo plano .

Mejoras en las complicaciones

Las complicaciones son elementos visuales pequeños que proporcionan información útil de un vistazo. Dependiendo de la cara watch seleccionada, el usuario tiene la capacidad de personalizar una cara watch con una o varias complicaciones.

watchOS 3 ofrece a la aplicación la posibilidad de crear una o varias complicaciones para la aplicación de watch para que el usuario pueda acceder a su información de un vistazo desde una cara watch.

Además, las complicaciones proporcionan las siguientes ventajas:

  • El usuario puede iniciar rápidamente la aplicación pulsando en la Complicacion directamente desde una cara de watch.
  • Tener una de las complicaciones de la aplicación en la cara watch hace que el sistema mantenga la aplicación en un estado listo para iniciarse donde intenta iniciar la aplicación en segundo plano, mantenerlo en memoria y le da tiempo adicional para actualizar.
  • Las complicaciones se garantizan al menos 50 actualizaciones de inserción al día.
  • Cuando la aplicación incluya Complicaciones, se mostrará en la Galería de caras de Apple Watch.

En watchOS 3, el marco ClockKit ahora incluye varias plantillas nuevas para complicaciones adicionales grandes, como CLKComplicationTemplateExtraLargeColumnsText y CLKComplicationTemplateExtraLargeRingImage. Además, para crear texto localizable, use nuevos métodos de la clase CLKTextProvider .

Para obtener más información, consulte nuestra guía de técnicas de interacción rápida para watchOS 3 .

Marcos recién disponibles

watchOS 3 incluye varios marcos de Apple existentes que anteriormente no estaban disponibles, como:

  • SceneKit: usa SceneKit para incluir modelos 3D en la interfaz de usuario de la aplicación watch, incluida la mayoría de las características disponibles en otras plataformas, como iluminación, sombreado, animación, física y sistemas de partículas. No se admiten los sombreadores 3D espaciales, metales personalizados o OpenGL, filtros de imagen principales y materiales basados físicamente.
  • SpriteKit: usa SpriteKit para representar y animar sprites en la interfaz de usuario de la aplicación watch, incluida la mayoría de las características disponibles en otras plataformas, como acciones, física, iluminación y sistemas de partículas. No se admiten el audio espacial 3D, la reproducción de vídeo y los filtros de imagen principales.
  • AVFoundation : para administrar y reproducir audio.
  • CloudKit: para mover datos entre la aplicación de watch y los contenedores de iCloud.
  • Audio principal : para administrar tipos de datos para representar secuencias de audio, búferes complejos y valores de tiempo.
  • GameKit : para crear juegos sociales.

Sugerencias proactivas

watchOS 3 permite a la aplicación presentar de forma proactiva información al usuario en contextos dados. Para admitir esta característica, NSUserActivity ahora incluye la MapItem propiedad que permite a la aplicación proporcionar información de ubicación para su uso posterior por otras aplicaciones.

Para obtener más información, consulte nuestra guía Introducción a las sugerencias proactivas .

Mejoras de seguridad y privacidad

Apple ha realizado varias mejoras en seguridad y privacidad en watchOS 3 que ayudarán al desarrollador a mejorar la seguridad de sus aplicaciones y garantizar la privacidad del usuario final.

Como resultado, las aplicaciones que se ejecutan en watchOS 3 (o posterior) deben declarar estáticamente su intención de acceder a características específicas o información del usuario escribiendo una o varias claves específicas de privacidad en sus Info.plist archivos que explican al usuario por qué la aplicación desea obtener acceso.

Dado que watchOS 3 comparte estos cambios con iOS 10, consulte nuestra guía de mejoras de seguridad y privacidad de iOS 10 para obtener más información.

Instantáneas y dock

En watchOS 3, Apple ha agregado el Dock donde los usuarios pueden anclar sus aplicaciones favoritas y acceder rápidamente a ellas. Cuando el usuario presiona el botón lateral en Apple Watch, se mostrará una galería de instantáneas de aplicaciones ancladas. El usuario puede deslizar el dedo izquierdo o derecho para buscar la aplicación deseada y, a continuación, pulsar la aplicación para iniciarla y reemplazar la instantánea por la interfaz de la aplicación en ejecución.

El sistema toma periódicamente instantáneas de la interfaz de usuario de la aplicación y usa esas instantáneas para rellenar la documentación. watchOS ofrece a la aplicación la oportunidad de actualizar su contenido y la interfaz de usuario antes de que se tome esta instantánea.

Para obtener más información, consulte nuestra guía de tareas en segundo plano y la referencia WKSnapshotRefreshBackgroundTask de Apple.

Notificaciones de usuario

El marco de notificaciones de usuario introducido en watchOS 3 admite la entrega de notificaciones locales y remotas a Apple Watch. Use este marco para programar notificaciones basadas en condiciones específicas, como la hora del día o la ubicación, y para recibir y controlar las notificaciones.

Para obtener más información, consulte nuestra guía de técnicas de interacción rápida para watchOS 3 .

Inspección de las mejoras del marco de conectividad

La nueva HasContentPending propiedad de la clase WCSession indica que la sesión ha recibido datos en segundo plano que se deben procesar. Y la RemainingComplicationUserInfoTransfers propiedad devuelve los tiempos restantes que la aplicación de iOS puede actualizar su complicaciones de watchOS.

Para obtener más información, consulte nuestra guía de tareas en segundo plano .

Mejoras de WatchKit Framework

watchOS 3 incluye varias mejoras en el marco WatchKit, entre las que se incluyen las siguientes:

  • La aplicación puede obtener el estado de Digital Crown mediante la nueva clase WKCrownSequencer y recibir actualizaciones cuando el usuario gira la corona mediante la clase WKCrownDelegate .
  • La clase WKExtension ahora incluye el método y la ApplicationState constante WKApplicationState que la aplicación puede usar para realizar un seguimiento del estado en tiempo de ejecución de la aplicación. WKExtension también proporciona dos nuevos métodos que se pueden usar para programar tareas en segundo plano.
  • WKExtensionDelegate ahora incluye los nuevos ApplicationWillEnterForegroundmétodos y HandleBackgroundTasksApplicationDidEnterBackground para supervisar los cambios en el estado de la aplicación y controlar las actualizaciones de tareas en segundo plano.
  • Se ha agregado una nueva clase WKGestureRecognizer para proporcionar los siguientes tipos de reconocimiento de gestos a las aplicaciones de watch: WKLongPressGestureRecognizer, WKPanGestureRecognizer, WKSwipeGestureRecognizer y WKTapGestureRecognizer.
  • La nueva clase WKinterfaceHMCamera proporciona una interfaz para cualquier cámara IP conectada a HomeKit.
  • La nueva clase WKInterfaceInlineMovie permite a la aplicación mostrar un "póster" de película que se reemplaza por la película en ejecución cuando el usuario la pulsa.
  • La nueva clase WKInterfacePaymentButton permite que la aplicación presente un botón de Apple Pay en su interfaz de usuario que iniciará una solicitud de pago cuando se pulse.
  • La nueva clase WKInterfaceSCNScene presenta una interfaz para mostrar una escena sceneKit en Apple Watch.
  • La nueva clase WKInterfaceSKScene presenta una interfaz para mostrar una escena de SpriteKit en Apple Watch.

Para obtener más información, consulte nuestra guía de técnicas de interacción rápida para watchOS 3 .

Mejoras de la aplicación Workout

Novedades de watchOS 3, las aplicaciones relacionadas con el entrenamiento tienen la capacidad de ejecutarse en segundo plano en apple Watch. Para habilitar esta característica (y obtener acceso a los datos de HealthKit), la aplicación debe incluir la WKBackgroundModes clave en el Info.plist archivo con el valor workout-processing.

Además, el desarrollador ahora tiene la capacidad de iniciar la aplicación de entrenamiento watchOS desde la versión de la aplicación iOS en el iPhone emparejado.

Para obtener más información, consulta nuestra guía de mejoras de la aplicación de entrenamiento .

Cambios adicionales en el marco

Además de los principales cambios y adiciones del marco enumerados anteriormente, Apple ha realizado muchos cambios de marcos menores adicionales en watchOS 3.

Para obtener más información, consulte nuestra guía de cambios adicionales del marco .

Interfaces API desusadas

Las siguientes API han quedado en desuso en watchOS 3:

  • La UILocalNotification clase de UIKit ha quedado en desuso y debe reemplazarse por el marco de notificaciones de usuario.

Consulte la documentación de diferencias de api de Apple watchOS 2.2 para ver las diferencias de api deOS 3.0 para obtener una lista completa de los cambios y las desusos.