Ringkasan
Bab berjudul “Ringkasan”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(), yang membantu aplikasi kiosk, POS, dashboard, scanner, dan tanda-tanda menghindari pembangunan memori selama sesi panjang.
Kemampuan Utama
Bab berjudul “Kemampuan Utama”- Pulihkan Crash Native - Memulai kembali WebView dari iOS atau Android ketika proses renderer mati.
- Pulihkan Jadwal - Menguras WebViews yang berjalan lama menggunakan timer native dengan __CAPGO_KEEP_2__
restartIntervalMsatau jam dindingrestartCron. - Restart Native Manual - Mengajukan JavaScript untuk WebView Native yang Segar dengan
restartWebView()tanpa melakukan reload halaman. - Konfigurasi Tipe Capacitor - Mengungkapkan
WebViewCrashPluginConfiguntukplugins.WebViewCrashdalamcapacitor.config.ts. getPendingCrashInfo- Mengembalikan marker kacau native atau restart yang disimpan, ataunullketika tidak ada yang menunggu.clearPendingCrashInfo- Membersihkan marker yang disimpan setelah aplikasi Anda telah memulihkan keadaannya.simulateCrashRecovery- Membuat marker kacau palsu sehingga alur pemulihan dapat diuji secara lokal.addListener- MengaktifkanwebViewRestoredAfterCrashuntuk marker kacau danwebViewRestoredAfterRestartuntuk marker restart native apa pun.
Publik API
Judul Bagian “Publik API”| Methode | Deskripsi |
|---|---|
getPendingCrashInfo | Mengembalikan marker kejadian native yang disimpan, atau null ketika tidak ada yang menunggu. |
clearPendingCrashInfo | Menghapus marker yang disimpan setelah aplikasi Anda telah memulihkan keadaannya. |
simulateCrashRecovery | Membuat marker kejadian palsu untuk menguji alur pemulihan secara lokal. |
restartWebView | Menggunakan reason: 'manualRestart' Menggunakan dan meminta native code untuk membuat WebView yang segar. |
addListener | Mengaktifkan webViewRestoredAfterCrash or webViewRestoredAfterRestart ketika seorang pendengar menempel dan marker yang sesuai masih menunggu. |
removeAllListeners | Hapus semua pendengar plugin. |
Jenis Konfigurasi
Bab berjudul “Jenis Konfigurasi”Plugin ini memperluas Capacitor’s PluginsConfig dengan entri konfigurasi yang ditipekan: WebViewCrash Salin ke papan klip
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}- Plugin ini mendeteksi pemulihan setelah crash WebView. Tidak mencegah crash dasar.
- Runtime JavaScript yang ditemukan kembali adalah baru, sehingga semua keadaan di memori dari WebView sebelumnya sudah hilang ketika API ini dipicu.
- Restart jadwal menulis
reason: 'periodicRestart'; restart manual menulisreason: 'manualRestart'. Simpan keadaan tidak disimpan sebelum mengaktifkan interval restart singkat, jadwal cron, atau memanggilrestartWebView(). restartCronmenggunakan sintaks cron 5-kolom di zona waktu lokal perangkat, misalnya0 3 * * *untuk restart harian pukul 03:00. Jangan konfigurasi kedua jadwal sekaligus: inisialisasi native melemparkan kesalahan konfigurasi fatal ketikarestartCrondiatur danrestartIntervalMslebih besar dari0.- Pada Android, bidang tambahan seperti
didCrashdanrendererPriorityAtExitmungkin tersedia - Pada iOS, plugin ini merekam
appStateketika proses WebView yang dihentikan diamati. Restart manual dan yang dijadwalkan membangun kembali jembatan Capacitor view sehingga dapat dibuat yang baruWKWebViewtercipta.
Sumber Kebenaran
Bab berjudul “Sumber Kebenaran”Referensi ini disinkronkan dari src/definitions.ts dalam capacitor-webview-crash.
Teruskan dari @capgo/capacitor-webview-crash
Bab berjudul “Teruskan dari @capgo/capacitor-webview-crash”Jika Anda menggunakan @capgo/capacitor-crash-webview untuk merencanakan perilaku media asli dan antarmuka, hubungkannya dengan Menggunakan @capgo/capacitor-webview-crash untuk kemampuan asli dalam Menggunakan @capgo/capacitor-webview-crash, Menggunakan @capgo/capacitor-aktivitas-hidup untuk kemampuan asli dalam Menggunakan @capgo/capacitor-aktivitas-hidup @capgo/capacitor-aktivitas-hidup untuk detail implementasi dalam @capgo/capacitor-aktivitas-hidup Menggunakan @capgo/capacitor-pemain-video untuk kemampuan asli dalam Menggunakan @capgo/capacitor-pemain-video, dan @capgo/capacitor-pemain-video untuk detail implementasi dalam @capgo/capacitor-pemain-video