WatchKit usando Handoff en una aplicación de Apple Watch

La característica Glance de una aplicación de Apple Watch permite a los usuarios ver rápidamente la información de solo lectura de su aplicación sin tener que abrirla. De forma predeterminada, al tocar en una pantalla de Vista, el usuario accede directamente a la vista inicial de la aplicación, lo que no es muy útil en la mayoría de los casos. Por ejemplo, cuando un usuario toca una pantalla de vista que muestra una receta deliciosa, la aplicación debería mostrar esa receta con más información, no una lista de todas las recetas. Como desarrollador, es su trabajo implementar esta función en su aplicación. La función de transferencia proporcionada en el SDK le permite hacer eso. Continúa leyendo para saber cómo.

1. Comenzamos creando un nuevo proyecto de Xcode y agregando el objetivo de WatchKit. Durante el proceso, asegúrese de incluye Glance Scence a tu proyecto. Si te pierdes este paso, ve a Producto -> Nuevo Esquema para agregar el esquema de Glance, y luego añadir manualmente la escena Glance al guión gráfico.

2. Dado que el propósito de este tutorial es demostrar la forma de utilizar Handoff en su aplicación, nuestro proyecto será muy simple. El guión gráfico dentro de la aplicación WatchKit solo contiene dos interfaces normales y una pantalla de vista. He añadido algunas etiquetas a las interfaces para diferenciarlas. Puede consultar la estructura del proyecto y los contornos de la interfaz en la siguiente captura de pantalla.

3. Para la segunda pantalla, asegúrese de darle una Identificador para que puedas consultarla más adelante en el tutorial.

4. Seleccione el GlanceController.swift archivo, y agregue el siguiente método dentro de awakeWithContext:

updateUserActivity (“com.claybikeltd.demo2.glance”, userInfo: [“screen”: 2], página webURL: nil)

El primer parámetro es el tipo de actividad. Reemplace "com.claybikeltd.demo2.glance" por el suyo.

El segundo parámetro es el diccionario que vas a pasar a la aplicación principal de WatchKit. Lo usamos para identificar qué pantalla queremos mostrar en la aplicación principal después de que el usuario toque en la pantalla Glance.

El último parámetro se utiliza para iPhone Handoff. No lo usamos en este tutorial, así que simplemente lo configuramos en nil.

5. Seleccione el InterfaceController.swift archivo, y agregue el manejarUserActividad Método debajo de todos los otros métodos en la clase. Dentro de este método, puede volver a obtener la información sobre la pantalla deseada y luego usar pushControllerWithName para ir a la segunda pantalla. El primer parámetro del método es el de la interfaz. identificador que hemos añadido anteriormente en el tutorial. El segundo parámetro son los datos que queremos enviar a la segunda pantalla. En este caso, simplemente lo ponemos a cero.

6. Eso es todo lo que tiene que hacer para hacer la transición automática a la pantalla deseada cuando el usuario toca la pantalla de Vista. Para probar esto, cambie al esquema de Glance y luego ejecute la aplicación en el simulador.