개요
개요 섹션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, 대시보드, 스캐너 및 시그니지를 위한 앱을 도와줍니다.
기본 기능
기본 기능 섹션 제목- 자연어 충돌 재시작 - iOS 또는 Android에서 렌더러 프로세스가 죽었을 때 WebView를 다시 시작합니다.
- 예약된 재시작 - Wall-clock 또는 cron 스케줄을 사용하여 장시간 실행되는 WebView를 재활용합니다.
restartIntervalMs수동 자연어 재시작 - JavaScript가 페이지 리로드 없이 새 자연어 WebView를 요청할 수 있도록합니다.restartCron. - 유형 __CAPGO_KEEP_0__ config - exposes __CAPGO_KEEP_1__ for __CAPGO_KEEP_2__ in
restartWebView()__CAPGO_KEEP_3__ - Typed Capacitor config - Exposes
WebViewCrashPluginConfig__CAPGO_KEEP_5__plugins.WebViewCrash__CAPGO_KEEP_6__capacitor.config.ts. getPendingCrashInfo- __CAPGO_KEEP_0__을 저장한 원시적인 충돌 또는 재시작 마커를 반환하거나nullnothing이 대기 중일 때.clearPendingCrashInfo- 앱이 상태를 복원한 후 저장된 마커를 삭제합니다.simulateCrashRecovery- 로컬에서 회복 흐름을 테스트할 수 있도록 가짜 충돌 마커를 생성합니다.addListener- 충돌 마커와webViewRestoredAfterCrashnative 재시작 마커의webViewRestoredAfterRestart모두에 대해 발생합니다.
Public API
API라는 제목의 공개 섹션| 메서드 | 설명 |
|---|---|
getPendingCrashInfo | __CAPGO_KEEP_0__을 저장한 원시적인 충돌 또는 재시작 마커를 반환하거나 null When nothing is pending. |
clearPendingCrashInfo | 앱이 상태를 복원한 후 저장된 마커를 삭제합니다. |
simulateCrashRecovery | 로컬에서 회복 흐름을 테스트할 수 있도록 가짜 충돌 마커를 생성합니다. |
restartWebView | __CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다. reason: 'manualRestart' code의 새 WebView를 만들도록 네이티브 code에게 요청합니다. |
addListener | __CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다. webViewRestoredAfterCrash __CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다. webViewRestoredAfterRestart __CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다. |
removeAllListeners | __CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다. |
__CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다.
__CAPGO_KEEP_0__의 새 WebView를 만들도록 네이티브 __CAPGO_KEEP_0__에게 요청합니다.Capacitor의 새 WebView를 만들도록 네이티브 Capacitor에게 요청합니다. PluginsConfig 타입에 따라 WebViewCrash 설정 항목:
export interface WebViewCrashPluginConfig { restartOnCrash?: boolean; restartIntervalMs?: number; restartCron?: string; restartAfterCrashDelayMs?: number;}메모
제목 ‘메모’- 이 플러그인은 WebView 충돌 후 복구를 감지합니다. 충돌을 예방하지는 않습니다.
- 복구된 자바스크립트 런타임은 새로운 것이므로 이전 WebView의 메모리 내 상태는 이 API이 발생할 때 이미 사라집니다.
- 예약된 재시작은
reason: 'periodicRestart'; 수동 재시작은reason: 'manualRestart'재시작 간격이 짧은 경우, cron 스케줄, 또는restartWebView(). restartCron5개의 필드 cron 구문이 사용되며, 장치의 로컬 타임존에서 예를 들어0 3 * * *일일 03:00 재시작을 위해 구성하지 마십시오: native 초기화는 동시에 두 개의 스케줄을 구성할 때 치명적인 설정 오류를 발생시킵니다.restartCronis set andrestartIntervalMsis greater than0.- Android에서 추가 필드인
didCrash및rendererPriorityAtExit사용할 수 있습니다. - iOS에서 플러그인은
appStateterminated WebView 프로세스가 관찰될 때 종료됩니다. 수동 및 예약된 재시작은 Capacitor 연결을 재구축하여 새로운WKWebView생성됩니다.
진실의 근원
‘진실의 근원’이라는 제목의 섹션이 참조는 src/definitions.ts 에서 동기화됩니다. capacitor-webview-crash.
from @capgo/capacitor-webview-crash 계속하기
‘from @capgo/capacitor-webview-crash’ 제목만약 __CAPGO_KEEP_0__를 사용하고 있다면 @capgo/capacitor-webview-crash @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-webview-crash와 연결하여 @capgo/capacitor-webview-crash를 사용하여 @capgo/capacitor-webview-crash를 사용하여 @capgo/capacitor-live-activities를 사용하여 @capgo/capacitor-live-activities를 사용하여 @capgo/capacitor-live-activities @capgo/capacitor-live-activities Using @capgo/capacitor-video-player native 기능을 위해 @capgo/capacitor-video-player를 사용합니다. @capgo/capacitor-video-player @capgo/capacitor-video-player의 구현 세부 정보를 위해