Présentation
La section intitulée « Présentation »@capgo/capacitor-widget-kit offre à une application Capacitor deux façons de contrôler les widgets et les activités en direct :
- Activités de modèles SVG : définir les surfaces de WidgetKit en tant qu'SVG, passer des noms de fenêtres de la touche, exécuter les temporisations pause/jeu, muter l'état JSON et collecter les événements d'action dans l'application.
- Sessions de widgets natifs complètes : garder l'interface utilisateur du widget entièrement en Swift/Kotlin/Java tandis que Capacitor possède l'état JSON partagé et les messages app-à-widget ou widget-à-app.
Utilisez les modèles SVG lorsque votre widget peut être rendu à partir de chaînes de résolution SVG. Utilisez les sessions de widgets natifs complètes lorsque le widget nécessite une interface utilisateur native personnalisée mais doit toujours démarrer, arrêter, synchroniser l'état ou demander à l'application de terminer le travail asynchrone.
Démonstration
La section intitulée « Démonstration »
Sélectionner un mode
La section intitulée « Sélectionner un mode »| Mode | Meilleur pour | API principaux |
|---|---|---|
| Activité de modèle SVG | Activités ou surfaces de widget qui rendent à partir de sortie SVG | startTemplateActivity, performTemplateAction, listTemplateEvents |
| Séance de widget native complète | Widgets rendus nativement qui nécessitent un état partagé et des tâches asynchrones | startWidgetSession, updateWidgetSession, sendWidgetMessage |
Les deux modes peuvent coexister dans la même application. Par exemple, une application de workout peut utiliser une activité SVG Live pour des contrôles de cadence rapide/timer et une séance de widget native complète pour un widget d'écran d'accueil avec un affichage natif plus riche.
Capacités de modèle SVG
Section intitulée “Capacités de modèle SVG”Les modèles SVG incluent les pièces nécessaires pour les surfaces de widget interactives :
framesvariantes de SVG nommées telles quesummary,timer, oudetails.frameMutationsdémarrez, arrêtez, reprenez, déclenchez, réinitialisez, arrêtez ou modifiez la durée du chronomètre.timerMutationsmettez à jour l'état JSON à l'aide de valeurs littérales, de modèles, de tampons, d'incréments, de déclencheurs ou d'opérations d'annulation.patchesassociez les zones de tapage à des identifiants d'action.hotspotspermet à l'application de traiter les actions provenant des widgets ultérieurement.listTemplateEventsLe runtime résout les marqueurs comme __CAPGO_KEEP_0__ et __CAPGO_KEEP_1__ avant que le pont natif ne retourne une surface pour le rendu.
Capacités du Pont Natif Complet {{state.title}}, {{timers.rest.remainingText}}Sous-titre « Capacités du Pont Natif Complet » {{meta.template.kind}} Les sessions de type complet-natif sont destinées aux widgets qui rendent leur propre interface utilisateur de manière native :
Les sessions de type complet-natif sont destinées aux widgets qui rendent leur propre interface utilisateur de manière native :
Les sessions de type complet-natif sont destinées aux widgets qui rendent leur propre interface utilisateur de manière native :Les sessions de type complet-natif sont destinées aux widgets qui rendent leur propre interface utilisateur de manière native :
startWidgetSessioncrée un état et des métadonnées partagés pour le widget natif code.updateWidgetSessionfusionne ou remplace l'état et marque la session active à nouveau.stopWidgetSessionenregistre un dernier état et marque la session arrêtée.sendWidgetMessagefile les tâches app-à-widget ou widget-à-app.acknowledgeWidgetMessagesmarque les messages comme reçus.completeWidgetMessagestocke une réponse ou un échec pour les tâches asynchrones.
Les messages sont idempotents après exécution : une tentative de reprise d'un message terminé ou échoué retourne le résultat existant au lieu de l'effacer.
Public API
Sous-section intitulée “Public API”| Méthode | Description |
|---|---|
areActivitiesSupported | Vérifiez si le pont d'activité de modèle natif peut s'exécuter sur le dispositif actuel. |
startTemplateActivity | Enregistrer une activité de modèle SVG et démarrer le pont de l'activité native Live. |
updateTemplateActivity | Remplacer la définition de l'activité, l'état ou l'ouvrir une URL. |
endTemplateActivity | Terminer une activité en cours et conserver optionnellement un dernier instantané d'état. |
performTemplateAction | Exécuter des patchs déclaratifs, des mutations de cadre, des mutations de temporisateur et l'enregistrement d'événements. |
getTemplateActivity | Lire une activité de modèle stockée. |
listTemplateActivities | Lister toutes les activités de modèle stockées. |
listTemplateEvents | Lire les événements d'action émis par les actions de modèle. |
acknowledgeTemplateEvents | Marquer les événements de modèle comme traités. |
startWidgetSession | Démarrer une session de widget natif complète basée sur un état partagé en JSON. |
updateWidgetSession | Fusionner ou remplacer l'état d'une session de widget natif complète. |
stopWidgetSession | Arrêter une session de widget natif complète et conserver optionnellement l'état final. |
getWidgetSession | Lire une session de widget natif complète. |
listWidgetSessions | Lister toutes les sessions de widgets natifs complets. |
sendWidgetMessage | Enfile une messagerie entre l'application et le widget natif code. |
listWidgetMessages | Lister les messages de pont en file d'attente. |
acknowledgeWidgetMessages | Marquer les messages de pont comme reconnus. |
completeWidgetMessage | Terminer ou échouer un message de pont asynchrone. |
getPluginVersion | Renvoyer la marque de version de l'implémentation de la plateforme. |
Pièces natives
Section intitulée “Pièces natives”Le plugin embarque également des aides natives pour les cibles de widgets :
CapgoTemplateWidgetBridgerésout une surface de modèle SVG ensvg,frameId,hotspots, et métadonnées.CapgoTemplateActionIntentse connecte les boutons de widget iOS interactifs à des actions de modèle.CapgoNativeWidgetBridgecharge les sessions et les messages full-native à partir du widget natif code.- Les helpers de modèle Android fournissent un comportement de réception d'action et de pont de widget correspondant.
Source De Vérité
Sous-section intitulée “Source De Vérité”La référence API est synchronisée à partir du src/definitions.ts dans le dépôt de plugin.
Continuez à partir de @capgo/capacitor-kit-de-widget
Sous-section intitulée “Continuez à partir de @capgo/capacitor-kit-de-widget”Si vous utilisez @capgo/capacitor-kit-de-widget pour planifier l'automatisation CI/CD, connectez-le avec En utilisant @capgo/capacitor-kit-de-widget pour la capacité native en utilisant @capgo/capacitor-kit de widgets Capgo CI/CD pour le flux de travail du produit dans Capgo CI/CD Capgo Builds natifs pour le flux de travail du produit dans Capgo Builds natifs Capgo Intégrations pour le flux de travail du produit dans Capgo Intégrations, et Intégration CI/CD pour le détail d'implémentation dans Intégration CI/CD