Membuat Web Launcher Sederhana di Android Menggunakan WebView

Oke, sudah lama saya tidak menulis tutorial di sini. ^^ Kali ini saya akan menulis sebuah tutorial yang cukup simple, namun barangkali akan berguna, yaitu tutorial tentang bagaimana membuat sebuah web launcher sederhana menggunakan Class yang sudah ada di Android, yaitu WebView.

Seperti yang dijelaskan pada postingan saya tentang arsitektur Android, ada banyak komponen pada Android yang bisa kita gunakan lagi, atau istilahnya reusable. Salah satu contohnya adalah komponen WebView ini yang bisa kita gunakan ketika ingin membuat sebuah web browser atau web launcher sederhana. Caranya sendiri cukup mudah, kita tinggal menspesifikasikan URL web yang akan kita tampilkan menggunakan WebView, dan aplikasi web launcher kita pun sudah bisa  digunakan.

Membuat Web Launcher Sederhana di Android

Pertama-tama, seperti biasa buat sebuah proyek Android baru. Setelah itu masuk ke folder res/layout, dan buka file xml yang ada di situ. Ganti kodenya dengan layout WebView seperti di bawah :

WebView Layout

<?xml  version="1.0"  encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
		<WebView
		android:id="@+id/web_view"
		android:layout_width="fill_parent"
		android:layout_height="wrap_content"
		android:layout_weight="1.0"
		/>
</LinearLayout>

Layout di atas akan otomatis menampilkan sebuah web view pada layar.

Main Activity

Setelah itu pada Android main activity, buatlah sebuah kelas yang berfungsi untuk membuat sebuah web browser baru menggunakan WebView dan kemudian menampilkan halaman web sesuai dengan URL yang kita berikan. Pada project ini nama main activity-nya yaitu MapWebViewActivity. Kodenya adalah sebagai berikut :

package id.twooh.MapWebView;

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebView;

public class MapWebViewActivity extends Activity {
    /** Called when the activity is first created. */
    private WebView webView;
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        //Mengeset webView sebagai layout utama
        webView = (WebView) findViewById(R.id.web_view);
        //memanggil method openBrowser #youdontsay
        openBrowser();
    }

    //karena ada method static yang diakses oleh method non-static (openBrowser)
	@SuppressWarnings("static-access")
	private void openBrowser()
	{
		//memanggil URL www.twoh.co
		String url = "http://www.twoh.co";

		//Menginstantiasi webchrome client baru, buat gaya-gayaan aja B)
		WebChromeClient wcc = new WebChromeClient();
        webView.setWebChromeClient(wcc);
        //mengaktifkan javascript, kalo nggak aktif... TRY IT!
		webView.getSettings().setJavaScriptEnabled(true);
		//mengaktifkan built in zoom controls
		webView.getSettings().setBuiltInZoomControls(true);
		//bagian ini akan dijelaskan
		webView.enablePlatformNotifications();
		//meload URL
		webView.loadUrl(url);
	}
}

Pada barisan kode di atas, maaf kalo terlihat berantakan, soalnya saya males njelasin terpisah, jadi saya jelaskan sekalian di comment. Oke, di bagian ini,

webView.enablePlatformNotifications();

statics method enablePlatformNotifications() berfungsi untuk untuk mengaplikasikan setting-an yang telah diatur pada emulator, termasuk setting-an proksi. Jadi apabila kalian berada di lingkungan yang dilindungi oleh proksi, webview ini masih bisa mengakses internet, asal settingan proksinya telah diatur terlebih dahulu.

Kemudian, dokumentasi Android sendiri sudah mengkategorikan method enabledPlatformNotifications() sebagai method yang deprecated/obsolete. Sehingga sekarang notifications ter-enabled secara default. Namun, sebagai catatan, walapun begitu saya mencoba untuk menghilangkan penggunaan method ini dan menjalankannya di lingkungan ber-proksi, hasilnya aplikasi tidak menampilkan apa-apa.

Jika kalian mempunyai koneksi bebas hambatan, maka method tersebut tidak usah digunakan dalam kode.

Seperti namanya web launcher, maka aplikasi ini didesain untuk membuka satu buah halaman web saja. URL untuk halaman web tersebut kita spesifikasikan pada bagian berikut :

String url = "http://www.twoh.co";

Proyek ini menggunakan URL web ini sebagai contoh :D, namun silahkan kalau ingin menggantinya.

Android Manifest

Terakhir, sekarang seperti biasa kita akan mengatur permission dan lain-lainnya pada file AndroidManifest.xml. Tambahkan dua baris kode berikut ini tepat sebelum tag application.

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

Permission yang terakhir, ACCESS_NETWORK_STATE digunakan berhubungan dengan method yang deprecated tadi.

Inilah tampilan akhir ketika program dijalankan.

weblauncher1



Download aplikasi kami di Google Play Store


5 Comments

  1. Tas Import Branded Murah December 7, 2013
  2. anri December 15, 2013
  3. Gansar July 10, 2014
  4. banghaji January 30, 2015
  5. Kecul Q&A March 4, 2015

Leave a Reply