Resumen
Sección titulada “Resumen”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()evita la acumulación de memoria durante largas sesiones, especialmente útil para aplicaciones de kiosco, POS, panel de control, escáner y señalización.
Capacidades básicas
Sección titulada “Capacidades básicas”- Reinicio de falla nativa - Reinicia el WebView desde iOS o Android cuando el proceso de renderizado muere.
- Reinicio programado - Recicla WebViews de larga duración en un temporizador nativo utilizando
restartIntervalMso un reloj de paredrestartCron. - Reinicio manual nativo - Permite a JavaScript solicitar un WebView nativo fresco con
restartWebView()sin realizar una recarga de página. - Configuración de tipo Capacitor - Exposa
WebViewCrashPluginConfigparaplugins.WebViewCrashencapacitor.config.ts. getPendingCrashInfo- Devuelve el marcador de crash nativo almacenado o de reinicio, onullcuando no hay nada pendiente.clearPendingCrashInfoElimina el marcador almacenado después de que tu aplicación haya restaurado su estado.simulateCrashRecoveryCrea un marcador de crash falso para que los flujos de recuperación puedan ser probados localmente.addListener- FireswebViewRestoredAfterCrashpara cualquier marcador de reinicio nativo.webViewRestoredAfterRestartpara cualquier marcador de reinicio nativo.
Public API
Sección titulada “Público API”| Metodo | Descripción |
|---|---|
getPendingCrashInfo | Devuelve el marcador de crash o reinicio nativo almacenado, o null cuando no hay nada pendiente. |
clearPendingCrashInfo | Elimina el marcador almacenado después de que tu aplicación haya restaurado su estado. |
simulateCrashRecovery | Crea un marcador de crash falso para que los flujos de recuperación puedan ser probados localmente. |
restartWebView | Escribe reason: 'manualRestart' y pregunta a code nativo para crear un WebView fresco. |
addListener | Dispara webViewRestoredAfterCrash o webViewRestoredAfterRestart cuando un escuchador se une y un marcador coincidente sigue pendiente. |
removeAllListeners | Elimina todos los escuchadores de plugins. |
Config Type
Sección titulada “Tipo de configuración”El plugin agrega funcionalidades a Capacitor’s PluginsConfig con una entrada de configuración tipada: WebViewCrash Copiar a portapapeles
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}- Este plugin detecta la recuperación después de un crash de WebView. No previene el crash subyacente.
- The recovered JavaScript runtime is new, so any in-memory state from the previous WebView is already gone when this API fires.
- Los reinicios manuales escriben
reason: 'periodicRestart'manual reinicios escritosreason: 'manualRestart'Persista el estado no guardado antes de habilitar intervalos de reinicio cortos, horarios de cron o llamadasrestartWebView(). restartCronusa la sintaxis de cron de 5 campos en el huso horario local del dispositivo, por ejemplo0 3 * * *No configure ambos horarios a la vez: la inicialización nativa lanza un error de configuración fatal cuandorestartCronestá configurado yrestartIntervalMses mayor que0.- En Android, campos adicionales como
didCrashyrendererPriorityAtExitpueden estar disponibles. - En iOS, el plugin registra
appStatecuando se observa el proceso de WebView terminado. Los reinicios manuales y programados reconstruyen la vista de puente Capacitor para un nuevoWKWebViewFuente de Verdad
Fuente de Verdad
Título de la sección ‘Fuente de Verdad’Esta referencia está sincronizada desde src/definitions.ts en capacitor-webview-crash.
Sigue adelante desde @capgo/capacitor-webview-crash
Sección titulada “Sigue adelante desde @capgo/capacitor-webview-crash”Si estás utilizando @capgo/capacitor-crash-de-ventana-de-webkit para planificar el comportamiento de medios y interfaz nativa, conecta con Usando @capgo/capacitor-webview-crash para la capacidad nativa en Usando @capgo/capacitor-webview-crash Usando @capgo/capacitor-live-activities para la capacidad nativa en Usando @capgo/capacitor-live-activities @capgo/capacitor-actividades-en-vivo para el detalle de implementación en @capgo/capacitor-actividades-en-vivo Usando @capgo/capacitor-reproductor-de-videos para la capacidad nativa en Usando @capgo/capacitor-reproductor-de-videos, y @capgo/capacitor-reproductor-de-videos para el detalle de implementación en @capgo/capacitor-reproductor-de-videos.