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タイマーまたは壁時計を使用してリサイクルします。
restartIntervalMsManual native restart - JavaScriptがページをリロードせずに、最新のnative WebViewを要求することができます。restartCron. - Typed __CAPGO_KEEP_0__ config -
restartWebView()for - Typed Capacitor config - Exposes
WebViewCrashPluginConfiggetNativeCrashMarker - 保存されたnative crashまたはrestartマーカーを返します。何も保留されていない場合、plugins.WebViewCrashclearNativeCrashMarker - アプリの状態を復元した後、保存されたマーカーをクリアします。capacitor.config.ts. getPendingCrashInfoclearNativeCrashMarker - アプリの状態を復元した後、保存されたマーカーをクリアします。nullclearNativeCrashMarker - アプリの状態を復元した後、保存されたマーカーをクリアします。clearPendingCrashInfoclearNativeCrashMarker - アプリの状態を復元した後、保存されたマーカーをクリアします。simulateCrashRecovery-ローカルでリカバリフローをテストするために、偽のクラッシュマーカーを作成します。addListener-クラッシュマーカーとwebViewRestoredAfterCrashforクラッシュマーカーwebViewRestoredAfterRestartfornativeのリスタートマーカー
Public API
Public API| メソッド | 説明 |
|---|---|
getPendingCrashInfo | 保存されたネイティブクラッシュまたはリスタートマーカーを返します、または null 何も保留されていない場合 |
clearPendingCrashInfo | アプリが状態を復元した後、保存されたマーカーをクリアします。 |
simulateCrashRecovery | ローカルでリカバリフローをテストするために、偽のクラッシュマーカーを作成します。 |
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'手動の再起動はrestartWebView(). restartCron.0 3 * * *未保存の状態を保存する前に、短い再起動間隔、cron スケジュール、またはrestartCronの5つのフィールドのcron構文を使用して、デバイスのローカルタイムゾーンでrestartIntervalMsの例えば0.- の設定が両方同時に設定されていると、ネイティブの初期化は致命的な構成エラーを投げます:「」がセットされている場合、「」が「」より大きい場合。
didCrashそしてrendererPriorityAtExit利用可能である場合があります。 - iOS上では、プラグインは
appStatewhen the terminated WebView process is observed. Manual and scheduled restarts rebuild the Capacitor bridge view so a newWKWebView手動および予定された再起動で__CAPGO_KEEP_0__ブリッジビューを再構築するため、新しい
真実の源
「真実の源」この参照は src/definitions.ts からsynced capacitor-webview-crash.
続きますから@capgo/capacitor-webview-crash
「続きますから@capgo/capacitor-webview-crash」あなたが使用している場合 @capgo/capacitor-webview-crash ネイティブメディアとインターフェイスの動作を計画するには、@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-webview-crashを接続する ネイティブ機能のために@capgo/capacitor-webview-crashを使用 ネイティブ機能のために@capgo/capacitor-live-activitiesを使用 ネイティブ機能のために@capgo/capacitor-live-activitiesを使用 @capgo/capacitor-live-activities 実装の詳細のために@capgo/capacitor-live-activitiesを使用 ネイティブ機能のために@capgo/capacitor-video-playerを使用 ネイティブ機能のために@capgo/capacitor-video-playerを使用 ネイティブ機能のために@capgo/capacitor-video-playerを使用 @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":"ページを編集する"}]}