안드로이드(android) webview 테스트하기
안드로이드에서 webview를
테스트하는 방법을
기록합니다.
1. AndroidManifest.xml에
internet 퍼미션과 hardwareAccelerated : true 해준다.
빨간색 테두리 부분들만 건들리면 됩니다.
2. activity_main.xml의 WebView을 구현하기
3. MainActivity.java(기존 생성된 자바 파일)과
WebSetting.java(만든 자바 파일)
MainActivity.java(기존 생성된 자바 파일)
WebSetting.java(만든 자바 파일)
import android.annotation.TargetApi;
import android.os.Build;
import android.webkit.PermissionRequest;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class WebSetting extends WebViewClient {
public WebView webSetting(WebView webView){
WebView webView1 = webView;
WebSettings webSettings = webView1.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setLoadsImagesAutomatically(true);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
webSettings.setUseWideViewPort(true);
webSettings.setSafeBrowsingEnabled(false);
webSettings.setGeolocationEnabled(true);
webSettings.setDomStorageEnabled(true);
/*
필요한 설정은 참고
setJavaScriptEnabled(true);
// javascript를 실행할 수 있도록 설정
setJavaScriptCanOpenWindowsAutomatically (true);
// javascript가 window.open()을 사용할 수 있도록 설정
setBuiltInZoomControls(false);
// 안드로이드에서 제공하는 줌 아이콘을 사용할 수 있도록 설정
setPluginState(WebSettings.PluginState.ON_DEMAND);
// 플러그인을 사용할 수 있도록 설정
setSupportMultipleWindows(false);
// 여러개의 윈도우를 사용할 수 있도록 설정
setSupportZoom(false);
// 확대,축소 기능을 사용할 수 있도록 설정
setBlockNetworkImage(false);
// 네트워크의 이미지의 리소스를 로드하지않음
setLoadsImagesAutomatically(true);
// 웹뷰가 앱에 등록되어 있는 이미지 리소스를 자동으로 로드하도록 설정
setUseWideViewPort(true);
// wide viewport를 사용하도록 설정
setCacheMode(WebSettings.LOAD_NO_CACHE);
// 웹뷰가 캐시를 사용하지 않도록 설정
*/
//webView1.setWebViewClient(new SslWebViewConnect());
//ssl 인증이 없는 경우 해결을 위한 부분
// webView1.setWebChromeClient(new WebChromeClient() {
// @TargetApi(Build.VERSION_CODES.LOLLIPOP)
// @Override
// public void onPermissionRequest(final PermissionRequest request) {
// request.grant(request.getResources());
// }
// });
return webView1;
}
}