Resumen
Proporciona a una aplicación __CAPGO_KEEP_0__ dos formas de impulsar widgets y actividades en vivo:@capgo/capacitor-widget-kit Proporciona a una aplicación Capacitor dos formas de impulsar widgets y actividades en vivo:
- Actividades de plantilla SVG: define superficies de WidgetKit como SVG, cambia marcos nombrados de toques, ejecuta temporizadores de pausa/reproducción, muta el estado JSON, y recopila eventos de acción en la aplicación.
- Sessions de widget nativo completo: mantén la interfaz de usuario del widget completamente en Swift/Kotlin/Java mientras Capacitor gestiona el estado JSON compartido y los mensajes de la aplicación a la widget o de la widget a la aplicación.
Utiliza plantillas SVG cuando tu widget se puede renderizar a partir de cadenas de SVG resueltas. Utiliza sesiones nativas completas cuando el widget necesita una interfaz de usuario nativa personalizada pero aún tiene que iniciar, detener, sincronizar el estado o pedir a la aplicación que complete el trabajo asíncrono.
Demostración
Título de la sección “Demostración”
Elige un modo
Título de la sección “Elige un modo”| Modo | Lo mejor para | API principales |
|---|---|---|
| Actividad de plantilla SVG | Actividades en vivo o superficies de widget que se renderizan desde la salida SVG | startTemplateActivity, performTemplateAction, listTemplateEvents |
| Sesión de widget nativo completa | Widgets nativamente renderizados que necesitan estado compartido y tareas asíncronas | startWidgetSession, updateWidgetSession, sendWidgetMessage |
Ambos modos pueden coexistir en la misma aplicación. Por ejemplo, una aplicación de entrenamiento puede utilizar una Actividad en vivo de SVG para controles de marco rápido/tiempo y una sesión de widget nativo completa para un widget de pantalla de inicio con un diseño de layout nativo más rico.
Capacidades de plantilla SVG
Título de la sección “Capacidades de plantilla SVG”Las plantillas SVG incluyen los elementos necesarios para superficies de widget interactivas:
framesvariantes de SVG nombradas tales comosummary,timer, odetails.frameMutationspulsar, cambiar, o avanzar por marcos después de una acción de hotspot.timerMutationscomenzar, pausar, reanudar, cambiar, resetear, detener, o cambiar la duración del temporizador.patchesactualiza el estado JSON utilizando valores literales, plantillas, timestamps, incrementos, pestañas o operaciones de eliminación.hotspotsasigna áreas de toque a identificadores de acción.listTemplateEventspermite que la aplicación procese acciones originadas por widgets más tarde.
La ejecución resuelve los reemplazos como __CAPGO_KEEP_0__, , y antes de que el puente nativo devuelva una superficie para la renderización. {{state.title}}, {{timers.rest.remainingText}}Capacidades del Puente Nativo Completo {{meta.template.kind}} Título de la sección “Capacidades del Puente Nativo Completo”
Las sesiones de código completo son para widgets que renderizan su propia interfaz de usuario de manera nativa:
crea un estado compartido y metadatos para el widget nativo __CAPGO_KEEP_0__.combina o reemplaza el estado y marca la sesión activa de nuevo.
startWidgetSessioncreates shared state and metadata for native widget code.updateWidgetSessionFull-Native Bridge CapabilitiesstopWidgetSessionSection titled “Full-Native Bridge Capabilities”sendWidgetMessagequeues app-to-widget o widget-to-app trabajo.acknowledgeWidgetMessagesmarca mensajes como recibidos.completeWidgetMessagealmacena una respuesta o fracaso para trabajos asíncronos.
Los mensajes son idóneos después de la finalización: reintentar un mensaje completado o fallido devuelve el resultado existente en lugar de sobrescribirlo.
Público API
Sección titulada “Público API”| Método | Descripción |
|---|---|
areActivitiesSupported | Verificar si la puente de actividad de plantilla nativa puede ejecutarse en el dispositivo actual. |
startTemplateActivity | Persistir una plantilla de actividad SVG y iniciar la puente de Live Activity nativa. |
updateTemplateActivity | Sustituir la definición de actividad, estado o abrir una URL. |
endTemplateActivity | Finalizar una actividad en ejecución y opcionalmente persistir una instantánea de estado de una sola vez. |
performTemplateAction | Ejecutar parches declarativos, mutaciones de marco, mutaciones de temporizador y registro de eventos. |
getTemplateActivity | Leer una actividad de plantilla almacenada. |
listTemplateActivities | Listar todas las actividades de plantilla almacenadas. |
listTemplateEvents | Leer eventos de acción emitidos por acciones de plantilla. |
acknowledgeTemplateEvents | Marcar eventos de plantilla como procesados. |
startWidgetSession | Iniciar una sesión de widget nativo completo respaldado por un estado JSON compartido. |
updateWidgetSession | Unir o reemplazar el estado de sesión de widget nativo completo. |
stopWidgetSession | Detener una sesión de widget nativo completo y opcionalmente persistir el estado final. |
getWidgetSession | Leer una sesión de widget nativo completo. |
listWidgetSessions | Listar todas las sesiones de widget nativo completo. |
sendWidgetMessage | Colar un mensaje entre la aplicación y el widget nativo code. |
listWidgetMessages | Listar mensajes de puente programados. |
acknowledgeWidgetMessages | Marcar mensajes de puente como reconocidos. |
completeWidgetMessage | Completar o fallar un mensaje de puente asíncrono. |
getPluginVersion | Devuelve el marcador de versión de implementación de plataforma. |
Piezas nativas
Sección titulada “Piezas nativas”El plugin también envía ayudantes nativos para objetivos de widget:
CapgoTemplateWidgetBridgeresuelve una superficie de plantilla SVG ensvg,frameId,hotspots, y metadatos.CapgoTemplateActionIntentconecta botones de widget iOS interactivos a acciones de plantilla.CapgoNativeWidgetBridgecarga sesiones y mensajes full-nativos desde widget nativo code.- Los ayudantes de plantilla de Android proporcionan comportamiento de recepción de acción y puente de widget coincidente.
Fuente de Verdad
Sección titulada “Fuente de Verdad”La referencia API se sincroniza desde src/definitions.ts en el repositorio del plugin.
Sigue adelante desde @capgo/capacitor-kit-de-widget
Sección titulada “Sigue adelante desde @capgo/capacitor-kit-de-widget”Si estás utilizando @capgo/capacitor-kit-de-widget para planificar la automatización de CI/CD, conecta con Usando @capgo/capacitor-kit-de-widget para la capacidad nativa en Usando @capgo/capacitor-kit-de-widget, Capgo CI/CD para el flujo de trabajo del producto en Capgo CI/CD, Capgo Compilaciones nativas para el flujo de trabajo del producto en Capgo Compilaciones nativas, Capgo Integraciones para el flujo de trabajo del producto en Capgo Integraciones, y Integración CI/CD para el detalle de implementación en Integración CI/CD.