Vue d'ensemble
Section intitulée « Vue d'ensemble »This plugin stores a native marker when the previous Capacitor WebView process dies or is recycled, then exposes that marker to the next JavaScript runtime after the app recovers. It can also restart the WebView from native code after a crash, on a fixed interval, on a cron schedule, or when JavaScript explicitly requests restartWebView()Ce plugin aide les applications kiosque, POS, tableau de bord, scanner et de signalisation à éviter la buildup de mémoire pendant de longues sessions.
Capacités de base
Section intitulée « Capacités de base »- Redémarrage de la panne natif - Redémarre le WebView à partir d'iOS ou d'Android lorsque le processus de rendu meurt.
- Redémarrage planifié - Recycle les WebViews longs en cours d'exécution à l'aide d'un horloge native ou d'un horloge de mur
restartIntervalMsRedémarrage manuel natif - Permet à JavaScript de demander un WebView natif frais sans recharger la page.restartCron. - __CAPGO_KEEP_0__
restartWebView()__CAPGO_KEEP_1__ - Typé Capacitor config - Expose
WebViewCrashPluginConfigpourplugins.WebViewCrashdanscapacitor.config.ts. getPendingCrashInfo- Renvoie le marqueur de panne native stocké ou de redémarrage, ounulllorsqu'il n'y a rien en attente.clearPendingCrashInfo- Efface le marqueur stocké après que votre application ait restauré son état.simulateCrashRecovery- Crée un marqueur de panne fictif afin de tester les flux de récupération localement.addListener- DéclenchewebViewRestoredAfterCrashpour les marqueurs de panne etwebViewRestoredAfterRestartpour tout marqueur de redémarrage native.
Public API
Section intitulée “Public API”| Méthode | Description |
|---|---|
getPendingCrashInfo | Renvoie le marqueur de crash ou de redémarrage natif stocké, ou null lorsqu'il n'y a rien en attente. |
clearPendingCrashInfo | Efface le marqueur stocké après que votre application ait restauré son état. |
simulateCrashRecovery | Crée un marqueur de crash fictif afin de tester les flux de récupération localement. |
restartWebView | Écrit reason: 'manualRestart' et demande à code natif de créer une WebView fraîche. |
addListener | Déclenche webViewRestoredAfterCrash ou webViewRestoredAfterRestart lorsqu'un écouteur s'attache et un marqueur correspondant est toujours en attente. |
removeAllListeners | Supprime tous les écouteurs de plugin. |
Type de configuration
Section intitulée “Type de configuration”Le plugin complète Capacitor’s PluginsConfig avec une entrée de configuration typée : WebViewCrash Copier dans le presse-papiers
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}Section intitulée “Remarques”
Ce plugin détecte la récupération après une panne de WebView. Il ne prévient pas la panne sous-jacente.- Le runtime JavaScript récupéré est nouveau, donc tout l'état en mémoire de la WebView précédente est déjà perdu lorsque ce __CAPGO_KEEP_0__ se déclenche.
- The recovered JavaScript runtime is new, so any in-memory state from the previous WebView is already gone when this API fires.
- ; redémarrages manuels écrivent
reason: 'periodicRestart'Redémarrages programmés écrivent ; redémarrages manuels écriventreason: 'manualRestart'. Sauvegardez l'état non enregistré avant d'activer les intervalles de redémarrage courts, les programmes de tâches planifiées ou les appelsrestartWebView(). restartCronutilise la syntaxe de 5 champs pour les programmes de tâches planifiées dans la zone horaire locale du dispositif, par exemple0 3 * * *pour un redémarrage quotidien à 03:00. N'configurez pas les deux programmes de tâches planifiées en même temps : l'initialisation native génère une erreur de configuration mortelle lorsquerestartCronest défini etrestartIntervalMsest supérieur à0.- Sur Android, d'autres champs supplémentaires comme
didCrashetrendererPriorityAtExitpeuvent être disponibles. - Sur iOS, le plugin enregistre
appStatelorsque le processus de WebView arrêté est observé. Les redémarrages manuels et planifiés reconstruisent la vue de pont Capacitor afin qu'un nouveauWKWebViewsoit créé.
Source De Vérité
Section intitulée « Source De Vérité »Cette référence est synchronisée à partir de src/definitions.ts dans capacitor-webview-crash.
Continuez à partir de @capgo/capacitor-webview-crash
Section intitulée « Continuez à partir de @capgo/capacitor-webview-crash »Si vous utilisez @capgo/capacitor-webview-crash pour planifier le comportement de médias et d'interface natifs, connectez-le avec En utilisant @capgo/capacitor-webview-crash pour la capacité native dans En utilisant @capgo/capacitor-webview-crash En utilisant @capgo/capacitor-live-activities pour la capacité native dans Utiliser @capgo/capacitor-activités en direct, @capgo/capacitor-activités en direct pour le détail d'implémentation dans @capgo/capacitor-activités en direct, Utiliser @capgo/capacitor-joueur vidéo pour la capacité native dans Utiliser @capgo/capacitor-joueur vidéo, et @capgo/capacitor-joueur vidéo pour le détail d'implémentation dans @capgo/capacitor-joueur vidéo.