oleh: Mohamad Sani (sani@msani.net) 17 Oktober 2010 Android adalah sistem operasi untuk mobile device yan a!alnya dikembankan oleh Android "n#.$ %erusahaan ini kemudian dibeli oleh &oole pada tahun 200'. Android dibuat berdasarkan kernel (inu) yan dimodi*ikasi. Aplikasi Android ditulis denan bahasa +a,a$ menunakan +a,a -ore (ibraries. Aplikasi Android di.alankan di atas /M bernama 0al,ik /irtual Ma#hine. %ada tutorial ini$ akan di.elaskan lankah1lankah membuat aplikasi Android mulai dari instalasi perankat1perankat lunak yan diperlukan sampai dapat men.alankan proram 2ello 3orld pada Android device. 1 Mempersiapkan Komputer Sebelum mengunduh Android SDK, pastikan di komputer anda sudah terinstall JDK versi 5 atau 6 dan Eclipse versi 3. atau 3.5. 4#lipse hanya dibutuhkan apabila kita inin menembankan aplikasi denan bantuan sebuah pluin 4#lipse yan bernama Android 0e,elopment 5ools (A05). Sebenarnya kita bebas memilih penyuntin teks (text editor) apapun$ tetapi menunakan 4#lipse adalah teknik yan palin #epat dan direkomendasikan. 4#lipse dapat diunduh dari http:66!!!.e#lipse.or6do!nloads. /ersi yan direkomendasikan adalah 74#lipse *or +a,a 0e,elopers8 atau 74#lipse *or 9-% 0e,elopers8. :ntuk ,ersi ;.'$ ,ersi yan direkomendasikan adalah 74#lipse -lassi#8. %ada tutorial ini$ kita akan menunakan 4#lipse. 5idak direkomendasikan menunakan 4#lipse ;.< 2elios karena ada sedikit masalah denan A05 pluin. &unakan 4#lipse ;.= &anymede atau ;.' &alileo. %astikan .ua 4#lipse memiliki +a,a 0e,elopment 5ools (+05)$ biasanya +05 sudah terdapat pada kebanyakan paket 4#lipse. +0> bersi*at !a.ib. +94 sa.a tidak men#ukupi. +0> dapat diunduh dari http:66.a,a.sun.#om6.a,ase6do!nloads6inde)..sp. 2 Menginstall Android SDK !nduh Android SDK starter package dari http"##dl.google.com#android#android$ sdk%r&'$(indo(s.)ip Kemudian un)ip. Android S0> starter pa#kae belum merupakan linkunan penembanan (development environment) yan lenkap. "a hanya berisi alat1alat (tools) utama sa.a. 0enan Android S0> starter pa#kae inilah nantinya kita akan menunduh alat yan lainnya. 16' Setelah membonkar (unzip)$ simpan direktori di tempat yan nyaman$ misalkan C:\Program Files\android-sdk-windows. >ita perlu untuk meru.uk kembali alamat direktori ini nanti. 3 Menginstall ADT untuk Eclipse 1. *uka Eclipse, klik Help + Install New Software. 2. ,ada dialog Available So-t(are .ang terbuka klik Add... ;. ,ada dialog Add Site .ang muncul, masukan nama remote site /contoh" Android ,lugin0 pada 1ame -ield. ,ada 2ocation -ield, masukkan !32 berikut" https"##dl$ ssl.google.com#android#eclipse#. Klik OK dan tunggu sampai 4pending5 selesai. =. Kembali ke Available So-t(are vie(, seharusn.a kita bisa melihat 4Developer 6ools5 tertambah pada da-tar. 7entang checkbo8 pada Developer Tools .ang secara otomatis mencentang pula Android DD9S dan Android Development 6ools. Klik Next dan tunggu sebentar. '. ,ada dialog :nstall Detail .ang muncul, Android DD9S and Android Development 6ools -eatures seharusn.a terda-tar. Klik I accept ... untuk men.etu;ui per;an;ian lisensi kemudian klik Finish. 6unggu sampai proses fetching selesai. <. 9ulai ulang /restart0 Eclipse. +ika anda menalami masalah saat menunduh pluin pada lankah nomor ;$ #oba anti https denan http. +ika mun#ul !arnin pada lankah '$ klik bah!a kita memper#ayai paket yan diunduh. 4 Menambahkan Platorm Android <. *uka Android SDK and A=D 9anager /Android SDK.e8e pada direktori SDK starter package0. 2. ,ada bagian Available ,ackage, centang SDK Platform Android . API !. ;. Klik Install Selected untuk mengunduh dan menginstall. Setidaknya anda harus meninstall 1 plat*orm aar dapat menembankan aplikasi Android. 5erantun untuk Android ,eri berapa anda inin menembankan aplikasi. Anda dapat men#entan plat*orm lain dan komponen lain (0o#umentation$ Samples$ :S? 0ri,er$ &oole A%"s) untuk diunduh. Meskipun hal ini direkomendasikan$ namun tidak !a.ib. +ika tersedia A%" yan lebih baru dari le,el @$ set nilainya ke yan palin baru. ?iasanya A%" yan le,elnya lebih tini mendukun A%" yan di ba!ahnya namun belum tentu sebaliknya. %ada satu dua kasus sa.a (denan kata lain .aran sekali)$ #o#ok ke ba!ah (backward compatible) tidak dipertahankan. +ika kotak 7-hoose %a#kae to "nstall8 mun#ul se#ara automatis$ pastikan anda men#entan hanya yan anda perlukan. Anapannya (default1nya)$ semua plat*orm akan ter#entan. Menunduh semua plat*orm akan memakan !aktu yan lama. 26' ! Membuat A"D 1. ,ada Eclipse, pilih "indow + Preferences. 2. 9asukkan ;alur /path0 dimana anda mengeksrak Android SDK pada langkah no > di atas. Klik ?K ;. ,ada Eclipse, pilih "indow + Android SDK and A#D $ana%er. =. ,ilih #irt&al Devices di panel kiri. '. Klik New. Dialgo 7reate 1e( A=D muncul. 6. Ketik nama A=D, misal @avd%sa.a@. '. ,ilih sebuah target plat-orm /versi Android SDK, misal >.>0 .ang ingin anda ;alankan pada emulator. Anda dapat mengacuhkan -ield .ang lain untuk saat ini. @. Klik 'reate A#D. %ada tutorial ini$ kita akan men.alankan aplikasi pada 4mulator Android. Sebelum kita dapat men.alankan 4mulator$ kita harus membuat Android /irtual 0e,i#e (A/0). A/0 mende*inisikan system image dan settin device yan diunakan 4mulator. # Membuat Pro$ek Android %aru 1. Dari Eclipse, pilih File + New + Pro(ect. 2. ,ilih Android Pro(ect dan klik Next. 3. :sikan -ield$-ield dengan nilai berikut" ,ro;ect name " AelloBorld Application name " Aello, Borld ,ackage name " com.e8ample.hello(orld /atau namespace pribadi anda0 7reateActivit. " AelloBorld =. 7entang versi plat-orm pada )&ild Tar%et, misal" Android >.> '. Klik Finish. %ilihan Android %ro.e#t pada lankah nomor 2 hanya ada bila pluin A05 untuk 4#lipse terpasan denan sukses. ?erikut pen.elasan dari masin1masin isian: Project Name "ni adalah nama proyek 4#lipse: nama direktori yan akan berisi berkas1berkas proyek. Application Name "ni adalah .udul aplikasi anda: nama yan akan mun#ul pada perankat Android. Package Name "ni adalah namespace paket (menikuti aturan yan sama untuk paket dalam bahasa pemroraman +a,a) dimana semua kode sumber (source code) anda diletakkan. Aama ini .ua men.adi nama paket di mana stub A#ti,ity akan dihasilkan. Aama paket Anda harus unik terhadap semua paket yan terinstal pada sistem Android$ oleh karena itu$ pentin untuk menunakan aya penulisan yan sesuai standar untuk aplikasi Anda. -ontoh di atas menunakan B#om.e)ampleB namespace$ dimana namespace di#adankan untuk dokumentasi #ontoh. >etika Anda menembankan aplikasi sendiri$ Anda biasanya menunakan namespace sesuai denan ;6' nama perusahaan6oranisasi Anda. Create Activity "ni adalah nama untuk class stub yan akan dihasilkan oleh pluin. "ni akan men.adi sebuah sub kelas dari kelas Android A#ti,ity. Sebuah A#ti,ity adalah sebuah kelas yan dapat men.alankan dan melakukan peker.aan. A#ti,ity dapat membuat :" .ika mau$ tetapi tidak diharuskan. A#ti,ity hampir selalu diunakan sebaai dasar untuk aplikasi sebaaimana direkomendasikan oleh #he#kbo)$ tetapi bersi*at optional. Min SDK Version Ailai ini menentukan tinkat A%" minimum yan dibutuhkan oleh aplikasi Anda. ?iasanya A%" yan le,elnya lebih tini mendukun A%" yan di ba!ahnya namun belum tentu sebaliknya. %ada satu dua kasus sa.a (denan kata lain .aran sekali)$ #o#ok ke ba!ah (backward compatible) tidak dipertahankan. Oleh karena itu$ anda dian.urkan untuk mempela.ari tentan A%" (e,el pada Android. & Menulis Program 'ello(orld <. *uka berkas AelloBorld.;ava .ang terletak pada AelloBorld + src + com.e8ample.hello(orld >. Canti isi AelloBorld.;ava .ang ada dengan kode berikut" package com.example.helloworld; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloWorld extends Activity !"" #alled when the activity is $irst created. "! %&verride public void on#reate'Bundle saved(nstance)tate* super.on#reate'saved(nstance)tate*; TextView tv + new TextView'this*; tv.setText',Hello- World.,*; set#ontentView'tv*; / / %erhatikan bah!a kelas HelloWorld adalah turunan dari kelas Activity. Sebuah Activity adalah sebuah entiti aplikasi yan diunakan untuk melakukan serankaian aksi. Sebuah aplikasi dapat terdiri dari banyak a#ti,ity$ namun penuna berinteraksi denan satu a#ti,ity pada satu !aktu. Method onCreate() akan dipanil oleh sistem Android ketika a#ti,ity di.alankan pertama kali. 0i sini lah tempat anda melakukan semua inisialisasi dan menyiapkan :". Sebuah a#ti,ity biasanya memiliki user interface$ tetapi tidak harus. User interface Android terdiri dari hierarki hierarki ob.ek yan disebut Views. Sebuah View adalah sebuah drawable object yan diunakan sebaai sebuah elemen pada layout :" seperti tombol$ ambar$ atau Cdalam #ontoh iniD label teks. Setiap ob.ek1ob.ek tersebut adalah sub kelas dari kelas View dan sub kelas yan menanani teks adalah TetView. %ada #ontoh di atas$ kita membuat sebuah TetView denan kelas constructor yan menerima =6' instance Contet sebaai parameternya. Contet adalah sebuah handle ke sistem. Contet menyediakan layanan1layanan seperti menurus resource$ mendapatkan akses ke basis data dan preferences$ dll. >elas Activity adalah turunan dari Contet$ karena aplikasi di atas adalah sub kelas dari Activity$ ia .ua men.adi sub kelas dari Contet. Oleh karena itu$ kita dapat melemparkan t!is sebaai re*erensi Contet ke TetView. 5erakhir$ kita melemparkan TetView ke setContentView() untuk menampilkannya sebaai konten untuk Activity :". +ika aplikasi tidak memanil method ini$ tidak akan ada :" yan ditampilkan dan aplikasi hanya akan menampilkan layar koson. ) Men*alankan Program <. Klik *&n + *&n >. ,ilih 4Android Application5 %luin 4#lipse akan se#ara otomatis membuat kon*iurasi untuk proyek anda dan men.alankan 4mulator Android. 4mulator biasanya butuh !aktu beberapa menit untuk booting$ .adi yan sabar ya... :) '6'