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.
Berikut Caranya:
Untuk menambahkan WebView
di aplikasi, Anda dapat menyertakan elemen <WebView>
di tata letak aktivitas, atau menetapkan seluruh jendela Aktivitas sebagai WebView
di onCreate()
.
Menambahkan WebView di tata letak aktivitas
Untuk menambahkan WebView
ke aplikasi Anda di tata letak, tambahkan kode berikut ke file XML tata letak aktivitas Anda:
<WebView android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" />
Untuk memuat halaman web di WebView
, gunakan loadUrl()
. Contoh:
val myWebView: WebView = findViewById(R.id.webview) myWebView.loadUrl("http://www.example.com")
WebView myWebView = (WebView) findViewById(R.id.webview); myWebView.loadUrl("http://www.example.com");
Menambahkan WebView di onCreate()
Untuk menambahkan WebView
ke aplikasi Anda di metode onCreate()
aktivitas, gunakan logika yang mirip dengan yang berikut ini:
val myWebView = WebView(activityContext) setContentView(myWebView)
WebView myWebView = new WebView(activityContext); setContentView(myWebView);
Kemudian muat halaman dengan:
myWebView.loadUrl("http://www.example.com")
myWebView.loadUrl("https://www.example.com");
Atau muat URL dari string HTML:
// Create an unencoded HTML string // then convert the unencoded HTML string into bytes, encode // it with Base64, and load the data. val unencodedHtml = "<html><body>'%23' is the percent code for ‘#‘ </body></html>" val encodedHtml = Base64.encodeToString(unencodedHtml.toByteArray(), Base64.NO_PADDING) myWebView.loadData(encodedHtml, "text/html", "base64")
// Create an unencoded HTML string // then convert the unencoded HTML string into bytes, encode // it with Base64, and load the data. String unencodedHtml = "<html><body>'%23' is the percent code for ‘#‘ </body></html>"; String encodedHtml = Base64.encodeToString(unencodedHtml.getBytes(), Base64.NO_PADDING); myWebView.loadData(encodedHtml, "text/html", "base64");
Namun, sebelum berfungsi, aplikasi Anda harus memiliki akses ke Internet. Untuk mendapatkan akses Internet, minta izin INTERNET
di file manifes Anda. Contoh:
<manifest ... > <uses-permission android:name="android.permission.INTERNET" /> ... </manifest>
Itulah semua yang Anda butuhkan untuk dasar WebView
yang menampilkan halaman web.