Vue d'ensemble
Section intitulée “Vue d'ensemble”Ce plugin stocke un marqueur natif lorsqu'une précédente Capacitor instance de WebView meurt ou est recyclée, puis expose ensuite ce marqueur au runtime JavaScript suivant après le redémarrage de l'application. Il peut également redémarrer la WebView à partir de la code native après une panne, à intervalles fixes, selon un calendrier de tâches ou lorsque JavaScript demande explicitement restartWebView(), qui aide les applications kiosque, POS, tableau de bord, scanner et de signalisation à éviter l’accumulation de mémoire pendant de longues sessions.
Section intitulée “Capacités de base”
Section titled “Core Capabilities”- Redémarrage de la vue native - Redémarre la vue native d'iOS ou Android lorsque le processus de rendu meurt.
- Redémarrage manuel natif - Permet à JavaScript de demander une WebView native fraîche avec
restartIntervalMsun mur horlogerrestartCron. - Redémarrage natif manuel - Demandez à JavaScript de redémarrer la vue native avec
restartWebView()sans recharger la page. - Typé Capacitor config - Expose
WebViewCrashPluginConfigpourplugins.WebViewCrashdanscapacitor.config.ts. getPendingCrashInfo- Renvoie le marqueur de crash ou de redémarrage natif stocké, ounullRien n'est en attente.clearPendingCrashInfo- Crée un marqueur de crash fictif afin de tester les flux de récupération localement.simulateCrashRecoveryCrée un marqueur de crash fictif afin de pouvoir tester les flux de récupération localement.addListener- FireswebViewRestoredAfterCrashpour tout marqueur de redémarrage natif.webViewRestoredAfterRestartpour tout marqueur de redémarrage natif.
Public API
Section intitulée « Public API »| Méthode | Description |
|---|---|
getPendingCrashInfo | Retourne 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 au code natif de créer une nouvelle instance de WebView. |
addListener | Déclenche webViewRestoredAfterCrash ou webViewRestoredAfterRestart lorsqu'un écouteur s'attache et qu'un marqueur correspondant est toujours en attente. |
removeAllListeners | Supprime tous les écouteurs de plugin. |
Le plugin complète les fonctionnalités de Capacitor. PluginsConfig une entrée de configuration typée : WebViewCrash Copier dans le presse-papiers
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}- Ce plugin détecte la récupération après un crash de WebView. Il ne prévient pas le crash sous-jacent.
- The recovered JavaScript runtime is new, so any in-memory state from the previous WebView is already gone when this API fires.
- Redémarrages planifiés enregistrent
reason: 'periodicRestart'; redémarrages manuels écriventreason: 'manualRestart'Sauvegardez l'état non enregistré avant d'activer les intervalles de redémarrage courts, les plans de cron ou les appels.restartWebView(). restartCronutilise 5 champs de syntaxe cron sur l'heure locale du dispositif, par exemple0 3 * * *pour un redémarrage quotidien à 03:00. N'configurez pas les deux plans à la fois : l'initialisation native lance 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 terminé est observé. Les redémarrages manuels et planifiés reconstruisent la vue de pont Capacitor afin qu'un nouveauWKWebViewsoit créé.
Vérité Fondamentale
Section intitulée “Source Of Truth”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-crash-webview pour planifier le comportement de médias et d'interface natifs, connectez-l’avec En utilisant @capgo/capacitor-webview-crash pour la capacité native dans En utilisant @capgo/capacitor-webview-crash, En utilisant @capgo/capacitor-activités en direct pour la capacité native dans En utilisant @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 En utilisant @capgo/capacitor-joueur de vidéo pour la capacité native dans En utilisant @capgo/capacitor-joueur de vidéo, et @capgo/capacitor-joueur de vidéo pour le détail d'implémentation dans @capgo/capacitor-joueur de vidéo