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()La cual ayuda a las aplicaciones de kiosk, POS, panel de control, escáner y señalización a evitar la acumulación de memoria durante sesiones largas.
Capacidades básicas
Sección titulada “Capacidades básicas”- Reiniciar colapso nativo - Reinicia la vista de pantalla de escaneo desde iOS o Android cuando el proceso de renderizado muere.
- Reinicio programado - Recicla vistas de pantalla de escaneo largas en un temporizador nativo usando
restartIntervalMso un reloj de paredrestartCron. - Reinicio manual nativo - Permite a JavaScript solicitar una vista de pantalla de escaneo nativa fresca con
restartWebView()sin realizar una recarga de página. - Configuración Capacitor tipoada - Exposición
WebViewCrashPluginConfigparaplugins.WebViewCrashencapacitor.config.ts. getPendingCrashInfo- Devuelve el marcador de crash o reinicio nativo almacenado, onullcuando no hay nada pendiente.clearPendingCrashInfo- Elimina el marcador almacenado después de que su aplicación haya restaurado su estado.simulateCrashRecovery- Crea un marcador de crash falso para que los flujos de recuperación puedan ser probados localmente.addListener- DisparawebViewRestoredAfterCrashpara marcadores de crash ywebViewRestoredAfterRestartpara cualquier marcador de reinicio nativo.
Configuración pública API
Sección titulada “Configuración pública API”| Método | 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 pide a code nativo que cree un WebView fresco. |
addListener | Dispara webViewRestoredAfterCrash o webViewRestoredAfterRestart cuando un oyente se adjunta y un marcador coincidente sigue pendiente. |
removeAllListeners | Elimina todos los oyentes de plugins. |
Tipo de configuración
Sección titulada “Tipo de configuración”Este plugin agrega a Capacitor’s PluginsConfig con una configuración WebViewCrash entrada de tipo:
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.
- El entorno de tiempo de ejecución de JavaScript recuperado es nuevo, por lo que cualquier estado en memoria del WebView anterior ya se ha ido cuando este API dispara.
- Los reinicios programados escriben
reason: 'periodicRestart'; los reinicios manuales escribenreason: 'manualRestart'. Persist 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 * * *para un reinicio diario a las 03:00. No configure ambos horarios al mismo tiempo: 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 del puente Capacitor para crear un nuevoWKWebViewFuente de Verdad
Fuente de Verdad
Sección titulada “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-webview-crash para planificar el comportamiento de medios y interfaz nativos, 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-actividades-en-vivo, @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.