APP/WebView

안드로이드 웹뷰(webview) 만들기

자코린이 2021. 10. 4. 22:40

이번 글에는 웹페이지를 웹뷰를 사용하여 앱으로 만드는 법을 적어보겠습니다.

코르도바로 만든 apk가 구글에 출시가 안 되어 웹뷰를 사용하게 되었습니다.

1. 새 프로젝트를 만들어 줍니다. 

empty 유형을 선택하고 프로젝트를 생성해주세요.(언어는 자바입니다.)

2. manifests 설정

 <uses-permission android:name="android.permission.INTERNET"/> 

를 맨 위의 manifests 에 추가해줍니다.

3.  layout을 고쳐주자

<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true" >
</WebView>

처음에 있던 <textview> 대신 이 내용을 붙인다.

4.  MainActivity 에 추가하자

먼저 웹뷰와 설정을 사용한다고 선언해주자.

private WebView mWebView; // 웹뷰 선언
private WebSettings mWebSettings; //웹뷰 설정

전역변수로 선언 후 onCreate 함수안에 아래 내용을 추가하자.

mWebView = (WebView) findViewById(R.id.webView);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebViewClient(new WebViewClient()); // 클릭시 새창 안뜨게
mWebSettings = mWebView.getSettings(); //세부 세팅 등록
mWebSettings.setJavaScriptEnabled(true); // 웹페이지 자바스클비트 허용 여부
mWebSettings.setSupportMultipleWindows(false); // 새창 띄우기 허용 여부
mWebSettings.setJavaScriptCanOpenWindowsAutomatically(false); // 자바스크립트 새창 띄우기(멀티뷰) 허용 여부
mWebSettings.setLoadWithOverviewMode(true); // 메타태그 허용 여부
mWebSettings.setUseWideViewPort(true); // 화면 사이즈 맞추기 허용 여부
mWebSettings.setSupportZoom(false); // 화면 줌 허용 여부
mWebSettings.setBuiltInZoomControls(false); // 화면 확대 축소 허용 여부
mWebSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); // 컨텐츠 사이즈 맞추기
mWebSettings.setCacheMode(WebSettings.LOAD_NO_CACHE); // 브라우저 캐시 허용 여부
mWebSettings.setDomStorageEnabled(true); // 로컬저장소 허용 여부

mWebView.loadUrl("https://www.google.com/"); // 웹뷰에 표시할 웹사이트 주소, 웹뷰 시작

이렇게 웹페이지를 앱으로 만드는 웹뷰가 끝났다. 

아쉽게도 에뮬레이터에서는 안 돌아가지만 핸드폰에서는 잘 돌아가는 것을 확인할 수 있다.

다음은 웹페이지가 아닌 html문서를 앱으로 만드는 웹뷰에 관해 적어보겠다.

 

 

 

'APP > WebView' 카테고리의 다른 글

파일을 이용해 안드로이드 웹뷰(webview) 만들기  (0) 2021.10.17