Saltare al contenuto

@capgo/capacitor-webview-crash

Recupero di crash del WebView nativo, riavvio manuale e riciclo programmato del WebView per applicazioni 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 prossimo runtime JavaScript dopo che l'app si riprende. Può anche riavviare il WebView da code nativo dopo un crash, con un intervallo fissato, su un orario cron, o quando JavaScript richiede esplicitamente restartWebView(), che aiuta gli app di tipo kiosk, POS, dashboard, scanner e segnale a evitare l'accumulo di memoria durante le sessioni lunghe.

  • Ripristino di crash nativo - Ripristina il WebView da iOS o Android quando il processo del renderer muore.
  • Ripristino programmato - Recicla i WebViews di lunga durata utilizzando un timer nativo con restartIntervalMs o un orologio a muro restartCron.
  • Ripristino nativo manuale - Consente a JavaScript di richiedere un WebView nativo fresco senza effettuare un reload della pagina. restartWebView() Configurazione di tipo __CAPGO_KEEP_0__ - Espone
  • Typed Capacitor config - Exposes WebViewCrashPluginConfig in plugins.WebViewCrash Ritorna il marker di crash o ripristino nativo memorizzato, o capacitor.config.ts.
  • getPendingCrashInfo quando non c'è nulla in sospeso. null Cancella il marker memorizzato dopo che il tuo app ha ripristinato lo stato.
  • clearPendingCrashInfo Ritorna il marker di crash o ripristino nativo memorizzato, o quando non c'è nulla in sospeso. Cancella il marker memorizzato dopo che il tuo app ha ripristinato lo stato.
  • simulateCrashRecovery - Crea un marker di crash fittizio per poter testare localmente le flussi di recupero.
  • addListener - Rilascia webViewRestoredAfterCrash per marker di crash e webViewRestoredAfterRestart per qualsiasi marker di restart nativo.
DescrizioneRestituisce il marker di crash o di restart nativo memorizzato, o
getPendingCrashInfoquando non c'è nulla in sospeso. null Svuota il marker memorizzato dopo che la tua app ha ripristinato lo stato.
clearPendingCrashInfoCrea un marker di crash fittizio per poter testare localmente le flussi di recupero.
simulateCrashRecoverySezione pubblica __CAPGO_KEEP_0__
restartWebViewScrive reason: 'manualRestart' e chiede al nativo code di creare una WebView fresca.
addListenerAccende webViewRestoredAfterCrash o webViewRestoredAfterRestart Quando un ascoltatore si collega e un marker corrispondente è ancora in attesa.
removeAllListenersElimina tutti gli ascoltatori del plugin.

Il plugin integra Capacitor con un'ingresso di configurazione di tipo: PluginsConfig Copia nel portapenne WebViewCrash Fired or

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 perso 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 chiamare restartWebView().
  • restartCron utilizza la sintassi di 5 campi del cronogramma sul dispositivo nel fuso orario locale, 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 e rendererPriorityAtExit potrebbe essere disponibile.
  • Sul iOS, il plugin registra appState quando il processo di WebView terminato viene osservato. I riavvii manuali e programmati ricostruiscono il ponte di visualizzazione Capacitor per creare un nuovo WKWebView Fonte di Verità

Sottosezione 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.

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

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

If stai utilizzando @capgo/capacitor-webview-crash per pianificare il comportamento dei media e dell'interfaccia nativa, connettilo con Utilizzando @capgo/capacitor-webview-crash per la capacità nativa in Utilizzando @capgo/capacitor-webview-crash Utilizzando @capgo/capacitor-webview-crash per la capacità nativa in Utilizzando @capgo/capacitor-webview-crash Utilizzando @capgo/capacitor-live-activities per la capacità nativa in Utilizzando @capgo/capacitor-live-activities @capgo/capacitor-live-activities per il dettaglio di implementazione in @capgo/capacitor-live-activities Utilizzando @capgo/capacitor-video-player {"targetLanguage":"Italian","pagePath":"/it/docs/plugins/webview-crash/","protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"items":[{"text":"per i dettagli di implementazione in @capgo/capacitor-player video."},{"text":"Modifica pagina"}]}