top of page
Search

Modul 11 - Web View

  • Writer: Reza Prihandi
    Reza Prihandi
  • Jun 26, 2021
  • 2 min read

WebView pada Android Studio


Jika ingin menyediakan aplikasi web (atau hanya halaman web) sebagai bagian dari aplikasi klien, Anda dapat melakukannya menggunakan WebView. Class WebView adalah ekstensi class View Android yang memungkinkan Anda menampilkan halaman web sebagai bagian dari tata letak aktivitas Anda. Class ini tidak menyertakan fitur apa pun dari browser web yang dikembangkan sepenuhnya, seperti kontrol navigasi atau kolom URL. Semua yang dilakukan WebView secara default adalah menampilkan halaman web.

Praktikum


  • Pertama jalankan aplikasi IDE Android Studio, caranya : a. Pilih Start >> Android Studio b. Pilih >> Start a new Android Studio Project c. Pilih >> Empty Activity >> Next

  • Name >> WebView

  • Package Name >> ubah menjadi nama blog kalian masing-masing, di sini saya menggunakan url blog saya adi.unggasid.com lalu di ikuti nama project WebView

  • Save Location >> C:\Users\DELL\AndroidStudioProjects\NamaMhs\WebView

  • Language >> Java

  • Minimum API Level >> API 15 >> Klik Finish

ree

Siapkan sebuah file gambar dengan forma file .png yang akan kita gunakan sebagai icon Aplikasi web view kita lalu copy kedalam folder ../res/drawable/.


Selanjutnya buat layout dengan ketikan kode program activity_main.xml seperti di bawah ini, kita akan menambahkan progress bar di layout ini supaya ketika proses load website akan menampilkan icon loading.

<?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"
    tools:context=".MainActivity">
    <WebView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/webView" />
    <ProgressBar
        style="?android:attr/progressBarStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="110dp"
        android:id="@+id/progressBar2" />
</RelativeLayout>

Setelah itu Buka dan ubah script MainActivity.java dan tambahkan script untuk memanggil url website, object class Webview, dan proses progress bar pada MainActivity.java



import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ProgressBar;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    WebView webView;
    ProgressBar bar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        webView = (WebView) findViewById(R.id.webView);
        bar=(ProgressBar) findViewById(R.id.progressBar2);
        webView.setWebViewClient(new myWebclient());
        webView.getSettings().setJavaScriptEnabled(true);
        webView.loadUrl("https://nenengevi07.blogspot.com/");
    }
    public class myWebclient extends WebViewClient{
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            bar.setVisibility(View.GONE);
        }
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
        }
        @Override public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return super.shouldOverrideUrlLoading(view, url);
        }
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if((keyCode==KeyEvent.KEYCODE_BACK) && webView.canGoBack()){
            webView.goBack();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
}

Tambahkan uses-permission INTERNET dalam script AndroidManifest.xml seperti di bawah ini

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"package="adi.unggasid.webview"><uses-permission android:name="android.permission.INTERNET"/>

. . . . .
. . . . .

Maka hasilnya akan seperti ini jika di run.



 
 
 

Comments


©2021 by MyBlog. Proudly created with Wix.com

bottom of page