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()基本機能
長時間のセッション中にメモリの蓄積を避けるために、キオスク、POS、ダッシュボード、スキャナ、サインジ用のアプリに役立つ、
Core Capabilities- Native crash restart - iOSまたはAndroidのWebViewを再起動します。レンダラープロセスが死んだときに。
- Scheduled restart - 長時間実行しているWebViewをnativeタイマーを使用してリサイクルします。
restartIntervalMsorrestartCron. - Manual native restart - JavaScriptがページをリロードせずに新しいnative WebViewを要求することを許可します。
restartWebView()__CAPGO_KEEP_0__の設定 - - Typed Capacitor config - Exposes
WebViewCrashPluginConfigを使用します。plugins.WebViewCrashを返します。capacitor.config.ts. getPendingCrashInfo- ストレージされたnative crashまたはrestartマーカーを返します、または何も保留されていない場合。null- アプリが状態を復元した後、ストレージされたマーカーをクリアします。clearPendingCrashInfo__CAPGO_KEEP_0__simulateCrashRecovery- ローカルで復旧フローをテストするために、偽のクラッシュマーカーを作成します。addListener-webViewRestoredAfterCrashクラッシュマーカーとwebViewRestoredAfterRestartクラッシュマーカーと
Public API
Public API| メソッド | 説明 |
|---|---|
getPendingCrashInfo | クラッシュまたは再起動マーカーを取得します。 null クラッシュマーカーをクリアします。 |
clearPendingCrashInfo | ローカルで復旧フローをテストするために、偽のクラッシュマーカーを作成します。 |
simulateCrashRecovery | protectedTokens |
restartWebView | 書き込み reason: 'manualRestart' Native code に新しい WebView を作成するよう依頼します。 |
addListener | 発火 webViewRestoredAfterCrash または webViewRestoredAfterRestart または |
removeAllListeners | リスナーがアタッチされ、まだマッチングマーカーが保留中の場合 |
すべてのプラグインリスナーを削除します。
構成タイプThe plugin augments Capacitor’s PluginsConfig プラグインは __CAPGO_KEEP_0__ に型付きの WebViewCrash 構成エントリを追加します:
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}注意
「注意」- ウェブビューのクラッシュ後に回復を検出します。このプラグインは、クラッシュの根本原因を防ぐことはありません。
- API が発生するとき点、前のウェブビューのインメモリ状態はすでに失われています。
- 予定された再起動
reason: 'periodicRestart'; 手動の再起動reason: 'manualRestart'. 未保存の状態を保存する前に、短い再起動間隔、cron スケジュール、またはrestartWebView(). restartCronデバイスのローカルタイムゾーンで使用する 5 つのフィールドの cron 語法の例0 3 * * *毎日 03:00 の再起動を設定しないようにしてください。両方のスケジュールを同時に設定すると、restartCronが設定されている場合とrestartIntervalMsが大きい場合、0.- Android では、
didCrashとrendererPriorityAtExit利用可能である場合があります。 - iOSでは、プラグインは
appState終了したWebViewプロセスが観測されたときに記録します。手動と予定された再起動で、Capacitor ブリッジビューを再構築するため、新しいWKWebView真実の源
「真実の源」
この参照はからsyncされます。 src/definitions.ts __CAPGO_KEEP_0__-webview-crash 続きますから@capacitor/__CAPGO_KEEP_1__-webview-crash.
「続きますから@capgo/capacitor-webview-crash」
Section titled “Keep going from @capgo/capacitor-webview-crash”Capgoを使用している場合 @capgo/capacitor-webview-crash ネイティブメディアとインターフェイスの動作を計画するには、@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-webview-crashを接続する Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-webview-crash Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-live-activities Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-live-activities @capgo/capacitor-live-activities Capgoを使用して実装の詳細を使用するには@capgo/capacitor-live-activities Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-video-player Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-video-player Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-video-player Capgoを使用してネイティブ機能を使用するには@capgo/capacitor-video-player {"targetLanguage":"Japanese","pagePath":"/ja/docs/plugins/webview-crash/","protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"items":[{"text":"@capgo/capacitor-video-playerの実装詳細については"},{"text":"ページを編集する"}]}