Java

AOS_ Webview 와 Jsp 상호작용

JunsC 2024. 3. 4. 00:14
728x90

웹뷰 페이지를 중점으로 웹앱을 구상해야 하는 상황이었다.

우선 기본적인 세팅은 했지만 어떻게 Web 과 Native 와의 상호작용을 해야할 지 자세히 몰랐었다.

그리고 웹뷰의 히스토리 기록과 캐시 등 여러가지 문제점들이 발생되어 해결방법을 찾아 보았다.

 

 

우선 웹뷰를 세팅한 코드이다.

setJavaScriptEnabled(true)는 자바스크립트를 사용할 수 있도록 해주는 메소드이다.

setWebChromeClient 는 크롬을 주 클라이언트로 사용하겠다는 선언이고 여기에서 필요권한을 요청할 수 있다.

 

 

그리고 웹뷰 클라이언트 선언을 통해서 페이지 기능과 관련한 처리를 해줄 수 있다.

여기에서 onReceivedError 가 발생되면 해당 웹뷰 히스토리를 삭제하는 명령어를 넣어 주었다.

 

 

 

그리고 WebSetting을 통해서 강제 덮어쓰기 가능하도록 설정해두고 캐시도 저장해 두는 것이 아니라 그때마다 초기화되도록 설정해놨다.

그리고 제일 중요한게 addJavascriptInterface 부분인데 저 부분이 바로 Web. 과 Native 간의 기능을 호환시켜줄 수 있는 Bridge 역할을 하는 함수이다.

 

 

그리고 해당 인터페이스 익명 클래스를 만들어서 어노테이션을 적용시켜 서로 간 호출될 수 있도록 설정해주면 된다.

 

728x90