Android WebView Setting 기능
// 자바 스크립트 사용
webSettings.setjavaScriptEnabled(true);
// mixed content 처리 여부
webSettings.setMixedContentMode(int)
MIXED_CONTENT_COMPATIBILITY_MODE
// DOM Storage Api 허용 여부
webSettings.setDomStorageEnabled(true);
이 부분이 중요한게 특정 사이트의 경우 메뉴 버튼을 이 API 를 사용하는 경우가 있어 이것을 허용해주지 않으면 버튼을 눌렀는데 반응이 없는 경우가 있다.
예시 > rakuten.co.jp
// 기본 인코딩 설정
webSettings.setDefaultTextEncodingName("UTF-8");
// 웹 뷰에 맞게 출력
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
// 플러그인 사용
webSettings.setPluginState(PluginState.ON);
// 화면 줌 컨트롤과 제스처를 사용하여 확대
webSettings.setSupportZoom(true);
// 내장 줌 컨트롤 사용
webSettings.setBuildInZoomControls(true);
// 내장 줌 컨트롤 표시 여부
webSettings.setDisplayZoomControls(false);
// 앱 캐시 사용 여부 설정
webSettings.setAppCacheEnabled(true);
// 앱 캐시 크기 설정
webSettings.setAppCacheMaxsize(1024*1024*8);
// 캐시 파일 경로 설정
webSettings.setAppCachePath(path);
// 캐시 방식 설정
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
// 암호 저장
webSettings.setSavepassword(true);
// 양식 데이터 저장
webSettings.setSaveFormData(true);
// 웹 뷰 내에서 파일 액세스 활성화
webSettings.setAllowFileAccess(true); API 3
파일에 접근하는 것을 허용
webSettings.getAllowFileAccessFromFileURLs(true); API 16
파일 구성표 URL의 컨텍스트에서 실행중인 JavaScript가 다른 파일 구성표 URL의 콘텐츠에 액세스 할 수 있는지 여부를 가져옵니다.
webSettings.getAllowUniversalAccessFromFileURLS(true); API 16
파일 구성표 URL의 컨텍스트에서 실행되는 JavaScript가 모든 출처의 콘텐츠에 액세스 할 수 있는지 여부를 가져옵니다. 여기에는 다른 파일 구성표 URL의 내용에 대한 액세스가 포함됩니다.
// 마우스 오버를 활성화 하기 위해 Light Touch를 사용 여부 설정
webSettings.setLighttouchEnabled(true);