728x90
하이브리드 앱이라고 웹사이트를 APK로 파일로 감싸서 만드는 앱이 있습니다.
웹사이트를 앱으로 표시하는걸 웹뷰라고 하는데 웹뷰 만드는 예제를 작성해보겠습니다.
우선, 안드로이드 스튜디오에서 프로젝트를 생성합니다.
템플릿은 Empty Activity, 언어는 Java, Minimun SDK는 21 버전으로 선택했습니다.
1. app/src/main/AndroidManifest.xml 에 아래 코드를 입력합니다.
<uses-permission android:name="android.permission.INTERNET" />
2. app/src/main/java/net/zeany/myapplication/MainActivity.java 에 아래 코드를 입력합니다.
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.activity_main_webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
mWebView.loadUrl("https://like-a-drizzle.tistory.com/");
}
}
3. 2번까지 잘 따로 오셨다면 activity_main_webview에서 오류가 발생했을 것입니다.
layout 쪽에 webview에 대한 설정을 해주지 않아서 발생한 오류입니다.
app/src/main/res/layout/activity_main.xml에 아래 코드를 입력합니다.
tools:context=""; 에는 자신이 만든 프로젝트의 이름과 전달받은 자바 클래스를 적어줍니다.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="0dp"
tools:context="com.drizzle.webview2.MainActivity">
<WebView
android:id="@+id/activity_main_webview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fadingEdge="none" />
</RelativeLayout>
activity_main.xml을 클릭했을 때 아래와 같은 화면이 나오면 code를 클릭합니다.
여기까지 작성을 완료했다면 에뮬레이터나 혹은 실기기 넣어서 동작을 확인해 봅니다.
화살표를 선택해서 에뮬레이터나 실기기를 선택한 후 화살표를 버튼을 선택하면 앱이 설치되고 자동으로 실행됩니다.
실행해보면 아래와 같이 잘 실행되는 것을 확인할 수 있습니다.
728x90
'Android Studio > java' 카테고리의 다른 글
09. [안드로이드/java] FCM 푸시알림 예제 (0) | 2021.07.07 |
---|---|
08. [안드로이드/java] 웹뷰 안드로이드 <-> 자바스크립트 함수 호출(javascriptInterface 기능) (0) | 2021.07.06 |
07. [안드로이드/java] 안드로이드 웹뷰(webview) 예제코드-2 (0) | 2021.07.06 |
04. [안드로이드/java] 웹뷰(WebView) 뒤로가기 제어 (0) | 2021.06.30 |
03. [안드로이드/java] 안드로이드 인 앱 업데이트 하기 (0) | 2021.06.30 |