Android

[WebView] - WebviewClient가 제공하는 주요 콜백 정리

dev_SiWoo 2025. 11. 13. 17:39

🔵 1. 페이지 로딩 관련 콜백

onPageStarted 페이지 로딩 시작할 때 : 로딩 시작 → 스피너 표시 할 때
onPageFinished 페이지 로딩 완료할 때 : 페이지 로딩 완료 후 JS 호출, 스피너 종료 등을 수행할 
onLoadResource 페이지에서 리소스(이미지, CSS 등)를 불러올 때
onReceivedError 일반 로딩 에러 발생 시
onReceivedHttpError HTTP 에러(404, 500 등) 발생 시
onReceivedSslError SSL 인증서 에러 시

 

🔵 2. URL 처리·네비게이션 관련 콜백

shouldOverrideUrlLoading WebView가 특정 URL을 로드할지 말지 결정하는 핵심 콜백
shouldInterceptRequest 네트워크 요청을 가로채서 직접 응답을 줄 수 있음
onPageCommitVisible 페이지가 화면에 실제로 보이기 시작할 때
onUnhandledKeyEvent 웹뷰가 처리하지 못한 KeyEvent를 Android가 받을 때

 

 

🔵 3. SSL, 인증, 보안 관련 콜백

onReceivedClientCertRequest 클라이언트 인증서 요청 처리
onReceivedHttpAuthRequest HTTP 인증 필요 시 호출
onSafeBrowsingHit SafeBrowsing에서 위험한 URL을 감지했을 때

 

 

🔵 4. 쿠키·프라이버시·스토리지 관련 콜백

onRenderProcessGone WebView 렌더러 프로세스가 죽었을 때 (안정성 향상)
onFormResubmission 폼을 다시 제출해야 할 때 (예: 새로고침 후 POST 요청 경고)