Con Live Activities, su aplicación puede proporcionar información actualizada y visible, como actualizaciones del clima, la hora de salida de un avión o cuánto tiempo pasará hasta que se entregue la cena, directamente en la pantalla de bloqueo. Además, gracias a funciones animadas como Dynamic Island en iPhone 14 Pro y iPhone 14 Pro Max, Live Activities también puede ser muy divertido.
Los evangelistas, diseñadores e ingenieros de Apple se reunieron en Ask Apple para responder a sus preguntas sobre Live Activities y Dynamic Island. Estos son algunos aspectos destacados de esas conversaciones, incluida la orientación sobre el tamaño y el estilo, cuándo descartar una actividad en vivo y por qué los widgets y las actividades en vivo son diferentes (excepto cuando no lo son).
¿Cómo actualizo una actividad en vivo sin usar el servicio de notificaciones push de Apple (APN)?
Su aplicación puede usar una funcionalidad de tiempo de ejecución en segundo plano preexistente, como los servicios de ubicación, para proporcionar actualizaciones de actividad en vivo como mejor le parezca. También puede usar BGProcessingTask e inserciones en segundo plano para brindar actualizaciones menos frecuentes a su actividad en vivo. Tenga en cuenta que el sistema no procesa inmediatamente estas tareas en segundo plano. Puedes leer más a continuación:
Visualización de datos en vivo con actividades en vivo
El valor predeterminado de 4 horas para descartar una actividad en vivo es demasiado largo para mi caso de uso. ¿Cuáles son las pautas para descartar una actividad en vivo después de que finaliza?
Al finalizar una actividad en vivo, puede proporcionar un ActivityUIDismissalPolicy
para decirle al sistema cuándo descartar su interfaz de usuario. Alternativamente, puede optar por descartar la actividad en vivo inmediatamente o después de que haya pasado un cierto tiempo.
¿Cómo puede mi aplicación detectar cuando alguien descarta una actividad en vivo?
El Activity.activityUpdates
static var es una secuencia asíncrona que anunciará actualizaciones de todas las actividades en vivo de su aplicación, incluidas las que se descartan. Alternativamente, el activityStateUpdates
la secuencia asíncrona anunciará un nuevo estado si su aplicación ya tiene una referencia a la actividad en vivo.
Cuando se fuerza el cierre de una aplicación, ¿se descarta la actividad en vivo asociada?
Los ciclos de vida de Live Activity no están vinculados al proceso de la aplicación host, por lo que permanecerán si se fuerza el cierre de la aplicación. El ciclo de vida de su extensión de widget también es independiente. Es muy posible que se llamen diferentes instancias de la extensión del widget para generar vistas para la misma actividad en vivo, por lo que es importante no almacenar ningún estado localmente en la extensión del widget.
¿En qué se diferencian las actividades en vivo y los widgets?
Las actividades en vivo y los widgets brindan información visible en cualquier momento. Las actividades en vivo son excelentes para mostrar información situacional relacionada con una tarea en curso que alguien inició. Buenos ejemplos incluyen entregas de alimentos, entrenamientos y horarios de salida de vuelos. Los widgets pueden proporcionar información visible que siempre es relevante. Buenos ejemplos incluyen listas de tareas pendientes, el pronóstico del tiempo de esta semana o qué tan cerca está alguien de cerrar sus anillos en Apple Watch.
Si bien tanto las actividades en vivo como los widgets se basan en WidgetKit para diseñar su interfaz de usuario, están estructurados de manera un poco diferente. Las actividades en vivo son una vista única que se actualiza mediante programación, mientras que los widgets consisten en una línea de tiempo de vistas preconstruidas.
¿Debería mi actividad en vivo intentar cambiar el color de fondo de la isla dinámica?
La Isla Dinámica es más inmersiva cuando no proporciona color de fondo o imágenes; considérelo simplemente como un lienzo de elementos de vista en primer plano. Se proporciona más orientación de diseño en las Directrices de interfaz humana.
Pautas de interfaz humana: actividades en vivo
¿Live Activities admite botones interactivos?
Las actividades en vivo en la pantalla de bloqueo y en la isla dinámica no admiten botones interactivos u otros controles. Incluir botones en su actividad en vivo podría confundir a alguien y hacerle pensar que puede interactuar con la vista. Por esta razón, debe evitar mostrar algo en su interfaz de usuario que se asemeje a un botón.
La mejor experiencia de usuario existe dentro de su aplicación, por lo que toda interacción con una actividad en vivo da como resultado la apertura de su aplicación. La presentación de la pantalla de bloqueo y la presentación ampliada de una actividad en vivo pueden incluir múltiples enlaces en su aplicación, por lo que puede proporcionar diferentes destinos, según el contexto de su actividad en vivo.
¿Son las actividades en vivo la única forma de apoyar a Dynamic Island?
Su aplicación puede implementar otros servicios del sistema, como CallKit y Now Playing, que muestran la interfaz de usuario del sistema en Dynamic Island. Sin embargo, las actividades en vivo son la única forma en que su aplicación proporciona su propia interfaz de usuario en la isla dinámica.
¿Es posible agregar animaciones a Dynamic Island?
Si bien no hay soporte para animaciones arbitrarias en sus vistas de Actividad en vivo, su aplicación puede cambiar la forma en que el contenido de una Actividad en vivo se actualiza de un estado al siguiente. Lea más en la sección «Animar actualizaciones de contenido» del artículo a continuación.
Visualización de datos en vivo con actividades en vivo
¿Dónde puedo encontrar más documentación sobre actividades en vivo?
La documentación de ActivityKit proporciona una gran cantidad de información sobre la implementación de actividades en vivo, incluido cómo actualizar y finalizar una actividad en vivo usando APN. Además, las Pautas de interfaz humana ofrecen orientación de diseño y tamaños recomendados para las diversas presentaciones. También puede encontrar algo de inspiración en el proyecto de muestra Food Truck de WWDC22.
Pautas de interfaz humana: actividades en vivo
Visualización de datos en vivo con actividades en vivo
Actualizar y finalizar su actividad en vivo con notificaciones automáticas de ActivityKit
kit de actividad
WidgetKit