Pendahuluan
Bab berjudul “Pendahuluan”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 papan menghindari pembangunan memori selama sesi panjang.
Kemampuan Utama
Judul Bagian: Kemampuan Dasar- Restart crash native - Menghidupkan kembali WebView dari iOS atau Android ketika proses renderer mati.
- Pemulihan yang dijadwalkan - Mengganti WebViews yang berjalan lama secara otomatis menggunakan timer native dengan
restartIntervalMsatau jam dindingrestartCron. - Pemulihan native manual - Mengizinkan JavaScript meminta WebView native segar tanpa melakukan reload halaman.
restartWebView()Konfigurasi __CAPGO_KEEP_0__ yang ditipe - Mengungkapkan - Typed Capacitor config - Exposes
WebViewCrashPluginConfigdalamplugins.WebViewCrash- Mengembalikan marker crash atau restart native yang disimpan, ataucapacitor.config.ts. getPendingCrashInfoketika tidak ada yang menunggu.null- Membersihkan marker yang disimpan setelah aplikasi Anda telah memulihkan keadaannya.clearPendingCrashInfo- Clears the stored marker after your app has restored its state.simulateCrashRecovery- Membuat marker kecelakaan palsu sehingga aliran pemulihan dapat diuji secara lokal.addListener- MengeluarkanwebViewRestoredAfterCrash- untuk marker kecelakaan danwebViewRestoredAfterRestart- untuk marker restart native apa pun.
Bagian umum API
Judul Bagian: "Bagian umum API"| Methode | Deskripsi |
|---|---|
getPendingCrashInfo | Mengembalikan marker kecelakaan native yang disimpan, atau null - ketika tidak ada yang menunggu. |
clearPendingCrashInfo | Menghapus marker yang disimpan setelah aplikasi Anda telah memulihkan keadaan. |
simulateCrashRecovery | Membuat marker kecelakaan palsu sehingga aliran pemulihan dapat diuji secara lokal. |
restartWebView | Menghasilkan reason: 'manualRestart' dan meminta native code untuk membuat WebView yang segar. |
addListener | Mengaktifkan webViewRestoredAfterCrash atau webViewRestoredAfterRestart ketika seorang pendengar menambahkan dan sebuah marker yang sesuai masih menunggu. |
removeAllListeners | Menghapus semua pendengar plugin. |
Jenis Konfigurasi
Judul bagian ‘Jenis Konfigurasi’Plugin ini memperluas Capacitor’s PluginsConfig dengan sebuah entri konfigurasi yang ditipekan: WebViewCrash Menggunakan Ctrl+C untuk menyalin
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}Catatan
Judul Bagian “Catatan”- Plugin ini mendeteksi pemulihan setelah crash WebView. Ini tidak mencegah crash yang tersembunyi.
- Runtime JavaScript yang diperoleh setelah crash adalah baru, sehingga semua keadaan di memori dari WebView sebelumnya sudah hilang ketika API ini dipicu.
- Restart yang dijadwalkan menulis
reason: 'periodicRestart'; restart manual menulisreason: 'manualRestart'. Simpan keadaan yang belum disimpan sebelum mengaktifkan interval restart singkat, jadwal cron, atau memanggilrestartWebView(). restartCrongunakan sintaks cron 5-kolom di zona waktu lokal perangkat, misalnya0 3 * * *untuk restart harian pada pukul 03:00. Jangan konfigurasi kedua jadwal sekaligus: inisialisasi native akan melemparkan kesalahan konfigurasi fatal ketikarestartCrondipasang danrestartIntervalMslebih besar dari0.- Pada Android, bidang tambahan seperti
didCrashdanrendererPriorityAtExitmungkin tersedia. - Pada iOS, plugin merekam
appStateketika proses WebView yang dihentikan diamati. Restart manual dan yang dijadwalkan membangun kembali jembatan Capacitor view sehingga Capacitor baruWKWebViewSumber Kebenaran
Bab berjudul “Sumber Kebenaran”
Referensi ini disinkronkan daridalam src/definitions.ts __CAPGO_KEEP_0__-webview-crash Teruskan dari @capacitor/__CAPGO_KEEP_1__-webview-crash.
Bab berjudul “Teruskan dari @capgo/capacitor-webview-crash”
Section titled “Keep going from @capgo/capacitor-webview-crash”Jika Anda menggunakan @capgo/capacitor-webview-crash untuk merencanakan perilaku media dan antarmuka native, hubungkannya dengan Menggunakan @capgo/capacitor-webview-crash untuk kemampuan native di Menggunakan @capgo/capacitor-webview-crash, Menggunakan @capgo/capacitor-live-activities untuk kemampuan native di Menggunakan @capgo/capacitor-live-activities, @capgo/capacitor-live-activities untuk detail implementasi di @capgo/capacitor-live-activities, Menggunakan @capgo/capacitor-video-player untuk kemampuan native di Menggunakan @capgo/capacitor-video-player, dan @capgo/capacitor-video-player {"targetLanguage":"Indonesian","pagePath":"/id/docs/plugins/webview-crash/","protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"items":[{"text":"untuk detail implementasi di @capgo/capacitor-player video."},{"text":"Edit halaman"}]}