Saltar al contenido

@capgo/capacitor-webview-crash

Recuperación de fallas de WebView nativo, reinicio manual y reciclaje programado de WebView para aplicaciones Capacitor de larga duración.

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()que 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.

  • Reinicio de crash nativo - Reinicia el WebView desde iOS o Android cuando el proceso de renderizado muere.
  • Reinicio programado - Recicla vistas web largamente ejecutadas en un temporizador nativo usando restartIntervalMs o un reloj de pared restartCron.
  • Reinicio nativo manual - Deja que JavaScript solicite una vista web nativa fresca sin hacer un recarga de página. restartWebView() sin hacer un recarga de página.
  • Configuración Capacitor tipada - Exposición WebViewCrashPluginConfig para plugins.WebViewCrash en capacitor.config.ts.
  • getPendingCrashInfo - Devuelve el marcador de crash o reinicio nativo almacenado, o null cuando no hay nada pendiente.
  • clearPendingCrashInfo - Borra el marcador almacenado después de que tu aplicación haya restaurado su estado.
  • simulateCrashRecovery - Crea un marcador de crash falso para que las flujos de recuperación puedan ser probados localmente.
  • addListener - Dispara webViewRestoredAfterCrash para marcadores de crash y webViewRestoredAfterRestart para cualquier marcador de reinicio nativo.
MétodoDescripción
getPendingCrashInfoDevuelve el marcador de crash o reinicio nativo almacenado, o null cuando no hay nada pendiente.
clearPendingCrashInfoElimina el marcador almacenado después de que su aplicación haya restaurado su estado.
simulateCrashRecoveryCrea un marcador de crash falso para que los flujos de recuperación puedan ser probados localmente.
restartWebViewEscribe reason: 'manualRestart' y pide a code nativo que cree una WebView fresca.
addListenerFuegos webViewRestoredAfterCrash o webViewRestoredAfterRestart cuando un oyente se adjunta y un marcador coincidente todavía está pendiente.
removeAllListenersElimina todos los oyentes de plugin.

El plugin agrega a Capacitor’s PluginsConfig con una configuración WebViewCrash entrada tipada:

export interface WebViewCrashPluginConfig {
restartOnCrash?: boolean;
restartIntervalMs?: number;
restartCron?: string;
restartAfterCrashDelayMs?: number;
}
  • This plugin detects recovery after a WebView crash. It does not prevent the underlying crash.
  • El runtime JavaScript recuperado es nuevo, por lo que cualquier estado en memoria del WebView anterior ya se ha ido cuando se dispara este API.
  • Programa reinicios programados reason: 'periodicRestart'Programa reinicios manuales reason: 'manualRestart'. Guarda el estado no guardado antes de habilitar intervalos de reinicio cortos, horarios de cron o la llamada a restartWebView().
  • restartCron usa la sintaxis de cron de 5 campos en la zona horaria local del dispositivo, por ejemplo 0 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 cuando restartCron está configurado y restartIntervalMs es mayor que 0.
  • En Android, campos adicionales como didCrash y rendererPriorityAtExit pueden estar disponibles.
  • En iOS, el plugin registra appState cuando se observa el proceso de WebView terminado. Los reinicios manuales y programados reconstruyen la Capacitor vista de puente para crear un nuevo WKWebView Fuente de Verdad

Sección titulada “Fuente de Verdad”

Esta referencia se sincroniza desde

en src/definitions.ts __CAPGO_KEEP_0__-webview-crash Sigue adelante desde @capacitor/__CAPGO_KEEP_1__-webview-crash.

Sección titulada “Sigue adelante desde @capgo/capacitor-webview-crash”

Section titled “Keep going from @capgo/capacitor-webview-crash”

@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-webview-crash @capgo/capacitor-webview-crash para planificar el comportamiento de medios y interfaces nativas, conectarlo 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-live-activities para el detalle de implementación en @capgo/capacitor-live-activities, Usando @capgo/capacitor-video-player para la capacidad nativa en Usando @capgo/capacitor-video-player, y @capgo/capacitor-video-player para el detalle de implementación en @capgo/capacitor-video-player.