Saltare alla navigazione

@capgo/capacitor-webview-crash

Recupero di crash del WebView nativo, riavvio manuale e riciclo del WebView programmato per le app Capacitor di lunga durata.

Questo plugin memorizza un marker nativo quando il processo precedente Capacitor WebView muore o viene riciclato, quindi esporre quel marker al runtime JavaScript successivo dopo il ripristino dell'applicazione. Può anche riavviare il WebView da code nativo dopo un crash, con un intervallo fissato, su un orario programmato o quando JavaScript richiede esplicitamente restartWebView()Ciò aiuta gli app di kiosk, POS, dashboard, scanner e segnalamento a evitare l'accumulo di memoria durante le sessioni lunghe.

  • Ripristino di crash nativo - Ripristina la WebView da iOS o Android quando il processo del renderer muore.
  • Ripristino programmato - Recicla le WebView di lunga durata su un timer nativo utilizzando restartIntervalMs o un orologio a muro. restartCron.
  • Ripristino nativo manuale - Consente a JavaScript di richiedere una WebView nativa fresca con restartWebView() senza eseguire il caricamento di una nuova pagina.
  • Configurazione di tipo Capacitor - Espone WebViewCrashPluginConfig per plugins.WebViewCrash in capacitor.config.ts.
  • getPendingCrashInfo - Restituisce il marker di crash o ripristino nativo memorizzato, o null quando non c'è nulla in sospeso.
  • clearPendingCrashInfo - Cancella il marker memorizzato dopo che il tuo app ha ripristinato lo stato.
  • simulateCrashRecovery - Crea un marker di crash falso per poter testare i flussi di recupero localmente.
  • addListener - Accende webViewRestoredAfterCrash per marker di crash e webViewRestoredAfterRestart per qualsiasi marker di restart nativo.

Sezione intitolata “API”

Section titled “Public API”
DescrizioneRestituisce il marker di crash o di restart nativo memorizzato, o
getPendingCrashInfoquando non c'è nulla in sospeso. null Cancella il marker memorizzato dopo che l'app ha ripristinato lo stato.
clearPendingCrashInfoCrea un marker di crash falso per poter testare i flussi di recupero localmente.
simulateCrashRecoveryScrive
restartWebViewPublic __CAPGO_KEEP_0__ reason: 'manualRestart' e chiede al nativo code di creare un WebView fresco.
addListenerFires webViewRestoredAfterCrash o webViewRestoredAfterRestart quando un ascoltatore si attacca e un marker di corrispondenza è ancora in attesa.
removeAllListenersRimuove tutti gli ascoltatori dei plugin.

Il plugin integra Capacitor’s PluginsConfig con un’ingresso di configurazione tipizzato: WebViewCrash Copia negli appunti

export interface WebViewCrashPluginConfig {
restartOnCrash?: boolean;
restartIntervalMs?: number;
restartCron?: string;
restartAfterCrashDelayMs?: number;
}
  • Questo plugin rileva il recupero dopo un crash del WebView. Non prevene il crash sottostante.
  • La runtime JavaScript recuperata è nuova, quindi lo stato in memoria dal WebView precedente è già andato perduto quando si attiva questo API.
  • Schedula i riavvii reason: 'periodicRestart'Schedula i riavvii manuali reason: 'manualRestart'. Salva lo stato non salvato prima di abilitare intervalli di riavvio brevi, cronogrammi o chiamate restartWebView().
  • restartCron utilizza la sintassi cron a 5 campi nel fuso orario locale del dispositivo, ad esempio 0 3 * * * per un riavvio quotidiano alle 03:00. Non configurare entrambi i cronogrammi contemporaneamente: l'inizializzazione nativa lancia un errore di configurazione fatale quando restartCron è impostato e restartIntervalMs è maggiore di 0.
  • Sui dispositivi Android, i campi aggiuntivi come didCrash e rendererPriorityAtExit potrebbe essere disponibile.
  • Su iOS, il plugin registra appState quando si osserva il processo di WebView terminato. I riavvii manuali e programmati ricostruiscono la vista del ponte Capacitor quindi viene creata una nuova WKWebView Fonte di Verità

Sezione intitolata “Fonte di Verità”

Questa referenza è sincronizzata da

in src/definitions.ts __CAPGO_KEEP_0__-webview-crash Continua da @capacitor/__CAPGO_KEEP_1__-webview-crash.

Sezione intitolata “Continua da @capgo/capacitor-webview-crash”

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

may be available. webview-crash di @capgo/capacitor pianifica il comportamento di media e interfaccia nativa, connettilo con Usando @capgo/capacitor-webview-crash per la capacità nativa in Usando @capgo/capacitor-webview-crash Usando @capgo/capacitor-live-activities per la capacità nativa in Usando @capgo/capacitor-live-activities @capgo/capacitor-live-activities per il dettaglio di implementazione in @capgo/capacitor-live-activities Usando @capgo/capacitor-video-player per la capacità nativa in Usando @capgo/capacitor-video-player @capgo/capacitor-video-player per il dettaglio di implementazione in @capgo/capacitor-video-player