Praktikum 13 Dasar Pemprograman Android

dokumen-dokumen yang mirip
Praktikum 8 Dasar Pemprograman Android

Praktikum 9 Pemprograman Android GUI 2 Layar

Struktur & Pemakaian Teknologi Game Pembuatan Activity

Gambar 1. Perangkat mobile Android

Modul Pengembangan Aplikasi Android Berbasis Client- Server Aplikasi sederhana android Versi 1.0

MODUL 10 KOMPONEN GUI ANDROID

PENGENALAN ANDROID AHMAD ZAINUDIN. Politeknik Elektronika Negeri Surabaya

Pertemuan 2. Pemrograman Mobile. 3 SKS Semester 7 S1 Sistem Informasi. Nizar Rabbi Radliya

Tutorial Membuat Aplikasi Web View Android pada Eclipse

MODUL 13 KOMPONEN GUI ANDROID

KUMPULAN APLIKASI JAVA J2ME

Modul Aplikasi Mobile. Pertemuan ke-2. Pengenalan environment android pada eclipse

[Pelatihan Pemrograman Android]

Praktikum I Pengenalan Android

Membuat project Android di Eclipse Struktur project pada eclipse Mengenal Tag Layout User Interface

Struktur & Pemakaian Teknologi Game Struktur Project Android

Percobaan 9 Basic Widget

Location Based Services

SOFTWARE DEVELOMENT KIT (SDK) & DASAR PENGEMBANGAN APLIKASI MOBILE

TUTORIAL PEMBUATAN APLIKASI SEDERHANA TOUCH AND GESTURE PADA ANDROID

UNIVERSITAS KOMPUTER INDONESIA

Persiapan. 2.1 Hardware

MODUL 14 INTERKONEKSI CLIENT-SERVER ANDROID

Membuat Chating Messager Di Android

PAPB-C. Yang harus dipersiapkan: 1. Eclipse 2. AVD/GenieMotion 3. JDK Membuat Android Application Project Baru

BAB II TINJAUAN PUSTAKA

UNIVERSITAS KOMPUTER INDONESIA

INTERFACING APLIKASI PENGHITUNGAN LUAS SEGITIGA DI ANDROID. Dibuat Oleh : Nama : Zunar Fitrianto NIM : Kelas : 13.5B.11

BAB 2. Siklus Hidup Aplikasi Android

Ijin Akses Agar program kita dapat mengakses GPS, kita harus menambahkan permission pada AndroidManifest.xml sebagai berikut:

BAB II LANDASAN TEORI. komponen yang berguna melakukan pengolahan data meupun kegiatan-kegiatan. seperti pembuatan dokumen atau pengolahan data.

Custom Button pada Android Februari 2012 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.3, Eclipse

BAB II DASAR TEORI DAN TINJAUAN PUSTAKA. Judul Platform Deskripsi

Membuat Aplikasi Sederhana Hello World untuk Android

BAB II TINJAUAN PUSTAKA

BAB V IMPLEMENTASI DAN PEMBAHASAN

Class yang dipakai Untuk membuat tampilan map pada Android, kita bisa memanfaatkan MapView sebagai berikut:

BAB IV IMPLEMENTASI DAN ANALISA

ANDROID Sejarah, Arsitektur,Platform Android By Si_pit

Stuktur Folder Project Di Android Studio

Tutorial Aplikasi Android Sederhana dengan Action Button

Mobile Programming. Rendra Gustriansyah, S.T., M.Kom., MCP

First Cup Android. TripleLands Tutorial

Latihan 1 Menghitung Luas Persegi Panjang

BAB II LANDASAN TEORI

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Menampilkan Map. B. Menambahkan referensi library google-play-service.jar ke dalam project

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Membuat list dengan RecylerView dan dependency injection ButterKniffe

BAB 4 IMPLEMENTASI DAN EVALUASI. Adalah kebutuhan yang dibutuhkan dalam memenuhi kebutuhan spesifikasi

BAB II. KAJIAN PUSTAKA

Dapat memahami mekanisme kerja component dalam sistem operasi android. Dapat menggunakan component secara efektif dalam membuat aplikasi android

Pemrograman Android dengan Eclipse

Praktikum IV Komponen UI (Radio Button, CheckBox dll)

Membuat Alert Dialog Pada Android

Instalasi Android SDK Maret 2012 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Windows XP, Eclipse

Program Database Sederhana di Android Desember 2011 Tingkat: Oleh : Feri Djuandi Pemula Menengah Mahir Platform : Android 2.

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB IV IMPLEMENTASI DAN PENGUJIAN APLIKASI

Modul. Android Programming. Dyah Fajar Nur Rohmah

BAB IV TESTING DAN IMPLEMENTASI SISTEM

PRAKTIKUM 6 SPINNER. 1. Aktifkanlah project baru, File New Project Android Application Project. Modul 6 Spinner Page 1

Membuat preferensi atau pengaturan pada aplikasi android

Mengenal Pemograman Android Menggunakan Eclipse

PERTEMUAN KE 1 Pengenalan Aplikasi Mobile. Mahasiswa diharapkan dapat memahami dan mengetahui tentang aplikasi mobile.

Pembuatan Aplikasi Android Sederhana dengan Eclipse

MODUL 1 INSTALASI PAKET JAVA DAN PROGRAM SEDERHANA

PENGEMBANGAN APLIKASI PERANGKAT BERGERAK (MOBILE)

BAB IV HASIL DAN UJI COBA

Praktikum VI Activity dan Intent

Pertama tama install terlebih dahulu java versi terbaru pada. atau didalam

Menulis Aplikasi untuk Android Bagian I

DAPATKAN SEGERAA!!!!! PERSEDIAAN TERBATASS!

Variabel dan tipe data

BAB IV IMPLEMENTASI DAN EVALUASI. Untuk mengimplementasikan dan menjalankan Aplikasi Mobile Simulasi

Instalasi SDK dan AVD

BAB II LANDASAN TEORI. Istilah aplikasi berasal dari bahasa inggris "application" yang berarti

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI

PEMROGRAMAN SMART PHONE MENGGUNAKAN SDK ANDROID DAN HACKING ANDROID : Prof. Jazi Eko Istiyanto, Ph.D.

1 BAB II LANDASAN TEORI. metode yang dipakai untuk kegiatan pengembangan terhadap sistem sendiri. kebutuhan akan beberapa aktivitas (Buyens, 2001).

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM. program. Pada awal bagian ini dijabarkan spesifikasi perangkat keras dan lunak pada

Copyright Laboratorium Pemrograman P.S. Sistem Informasi - Universitas Jember

Praktikum VI Activity dan Intent

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB 3 XML LAYOUT, BASIC WIDGET DAN SELECTION WIDGET

BAB 1 Pengenalan Aplikasi Perangkat Bergerak

Workshop Struktur dan Pemakaian Teknologi Game BAB 4. Menu

3 SKS Semester 7 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

BAB II KAJIAN PUSTAKA. bimbingan kepada dosen pembimbing tugas akhir, kartu konsultasi digunakan

Ada Apa dengan Android?

PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Pemrograman Berorientasi Objek 3 (Mobile And Web Programming)

APLIKASI PENGHITUNGAN PELURUHAN RADIONUKLIDA BERBASIS ANDROID

BAB II LANDASAN TEORI. masuk ke universitas di Amerika atau negara-negara lain di dunia. Ujian ini

BAB II LANDASAN TEORI

3 SKS Semester 7 S1 Sistem Informasi UNIKOM 2015 Nizar Rabbi Radliya

DAPATKAN SEGERAA!!!!! PERSEDIAAN TERBATASS!

APLIKASI MOBILE INFORMASI KERETA API LISTRIK (KRL) JABODETABEK BERBASIS ANDROID

BAB 3 PERANCANGAN SISTEM. 3.1 Gambaran Umum Perancangan Aplikasi

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Transkripsi:

Praktikum 13 Dasar Pemprograman Android Dosen : Ir. Nanang Syahroni M.Kom Pokok Bahasan Konsep Pemprograman Bahasa Java pada Android Deklarasi Pemprograman Java pada Android Penggunaan import, resource, Button, RadioButton, dan Textfield. Tujuan Belajar Mengetahui cara instalasi Java JDK, Eclipse IDE, dan Android SDK. Mengenal tentang konsep pemrograman Java untuk Android Mengenal tentang komponen pemprograman Android Mengetahui perbedaan fungsi antara file main.xml dan string.xml Pendahuluan Android merupakan adalah perangkat lunak terdiri dari OS beserta tool dan library lainnhya yang dikembangankan oleh perusahaan Google, dan bersifat Open Source. Saat ini disediakan Android Software Development Kit (SDK) sebagai alat bantu dan API diperlukan untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java, sehingga mudah digunakan untuk belajar membuat aplikasi. Fitur-fitur Android antara lain: Mesin virtual Dalvik dioptimalkan untuk perangkat mobile Integrated browser berdasarkan engine open source WebKit Grafis yang dioptimalkan dan didukung oleh perpustakaan grafis 2D, grafis 3D berdasarkan spesifikasi opengl ES 1,0 (Opsional akselerasi hardware) SQLite untuk penyimpanan data Media Support yang mendukung audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) Bluetooth, EDGE, 3G, dan WiFi (tergantung hardware) Kamera, GPS, kompas, dan accelerometer (hardware tergantung) Lingkungan Development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin. 1

Framework Aplikasi Pengembang memiliki akses penuh framwork API yang sama yang digunakan oleh aplikasi inti. Arsitektur aplikasi dirancang agar komponen dapat digunakan kembali (reuse) dengan mudah. Setiap aplikasi dapat memanfaatkan kemampuan ini dan aplikasi yang lain mungkin akan memanfaatkan kemampuan ini (sesuai dengan batasan keamanan yang didefinisikan oleh framework). Mekanisme yang sama memungkinkan komponen untuk diganti oleh pengguna. Semua aplikasi yang merupakan rangkaian layanan dan sistem, termasuk: o View Set kaya dan extensible yang dapat digunakan untuk membangun aplikasi, termasuk daftar, grids, kotak teks, tombol, dan bahkan sebuah embeddable web. o Content Provider yang memungkinkan aplikasi untuk mengakses data (seperti dari daftar kontak telp) atau dari data mereka sendiri. o Resource Manager, yang menyediakan akses ke kode sumber non-lokal seperti string, gambar, dan tata letak file o Notifikasi Manager yang memungkinkan semua kustom aplikasi untuk ditampilkan dalam alert status bar o Activity Manager yang mengelola siklus hidup aplikasi dan menyediakan navigasi umum backstack Android Runtime Android terdiri dari satu set core libraries yang menyediakan sebagian besar fungsi yang tersedia dalam core libraries dari bahasa pemrograman Java. Setiap menjalankan aplikasi Android sendiri dalam proses, dengan masingmasing instance dari mesin virtual Dalvik (Dalvik VM). Dalvik dirancang agar perangkat dapat menjalankan multiple VMs secara efisien. Mesin Virtual Dalvik dieksekusi dalam Dalvik executable (.dex), sebuah format yang dioptimalkan untuk memori yang kecil. Dalvik VM berbasis, berjalan dan dikompilasi oleh compiler bahasa Java yang telah ditransformasikan ke dalam.dex format yang disertakan oleh tool "dx". Dalvik VM bergantung pada kernel Linux untuk berfungsi, seperti threading dan manajemen memori tingkat rendahnya. 2

Linux Kernel Android bergantung pada Linux Versi 2.6 untuk inti sistem pelayanan seperti keamanan, manajemen memori, proses manajemen, susunan jaringan, dan driver model. Kernel juga bertindak sebagai lapisan yang abstak antara hardware dan software stacknya. Android ADT Android Development Tools (ADT) merupakan plugin untuk Eclipse IDE yang didesain dengan kemampuan yang lengkap dan terintegrasi untuk membangun aplikasi Android. ADT dapat meningkatkan kemampuan yang dimiliki Eclipse to agar dapat digunakan untuk membuat project aplikasi, membuat uer interface, menambahkan beberapa package yang berkaitan untuk membangun aplikasi dengan framework application user interface (API) pada Android. Disamping itu kita bias melakuka debug menggunakan Android SDK tools, meskipun sudah dalam bentuk file aplikasi yang telah jadi.apk dalam rangka menggunakan aplikasi Android yang telah dibuat. Komponen Siklus Hidup Android Dalam pengembangan aplikasi Android, ada beberapa hal yang harus diperhatikan, antara lain: Konsep yang dipakai adalah memisahkan coding untuk logic aplikasi (algoritma) dan coding untuk tampilan aplikasi (user interface). Untuk coding logic (algoritma), android menggunakan bahasa pemrograman Java. Sedangkan untuk pengaturan tampilan, Android menggunakan XML. Android memiliki 4 komponen yang memiliki peran yang berbeda-beda dan berdiri sendiri meskipun terkadang salah satu komponen bergantung pada komponenen lainnya. Masing-masing komponen memiliki daur hidup sendiri-sendiri yang mengatur kapan komponen dibuat dan bagaimana komponen dihapus. 3

Berikut ini adalah 4 tipe komponen dalam aplikasi android: a. Activity Aplikasi yang kita buat bisa memiliki satu activity, atau juga banyak activity. Setiap activity yang didefinisikan memiliki daur hidup tersendiri, jika saat ini activity sedang running, mungkin selanjutnya aplikasi kita berhenti sebentar (pause) atau memang benar-benar dimusnahkan, hilang dari memori (destroy). Kita melakukan pengaturan tindakan saat activity berada di state tertentu dengan cara melakukan override terhadap method di dalam class Activity. Pada waktunya, Android akan memanggil method yang bersesuaian dengan state activity. Sebagai contoh, sebuah aplikasi email mungkin memiliki satu activity untuk menunjukan email baru, satu lagi activity untuk menulis surat, dan satu lagi activity untuk membaca email. Meskipun activity-activity bekerja bersamaan untuk membentuk sebuah aplikasi email yang bagus, setiap activity tidak bergantung kepada yang lainnya. Misalnya aplikasi lain bisa menggunakan satu dari beberapa activity tersebut jika aplikasi email memperbolehkannya. Beberapa tahapan (state) yang terjadi dalam class Activity bisa dilihat gambar berikut ini : 4

Penjelasan state method pada class Activity : 1. oncreate(), method ini dipanggil ketika aktifitas pertama kali dimulai. Kita dapat menggunakan method ini untuk melakukan inisialiasi awal seperti menentukan antar muka (user interface), method oncreate() yang memiliki satu parameter yang dapat bernilai null atau bernilai informasi dari state sebelumnya yang dijalankan oleh method onsaveinstancestate(). 2. onstart(), method ini mengindikasikan aktifitas yang siap ditampilkan ke user. 3. onresume(), method ini dipanggil ketika aktifitas anda dinyatakan siap ber interaksi dengan user. Ini adalah aktifitas yang paling tepat untuk menyertakan animasi dan music pada aplikasi. 4. onpause(), method ini dijalankan ketika aktifitas akan dijalankan di background, biasanya terjadi ketika aktifitas berjalan di atas aktifitas ini. Pada state ini sebaiknya anda implementasi persistent data pada program anda, seperti ketika sebuah database sedang dilakukan proses edit. 5. onstop(), method ini dipanggil saat aktifitas anda tidak bisa dilihat lagi oleh user dan tidak dibutuhkan untuk sementara waktu. Jika memori dalam keadaan parah (karena banyak resource berjalan) maka method onstop() tidak pernah akan dipanggil (system mungkin akan mematikan prosesnya) 6. onrestart(), jika method ini dipanggil, berarti aktifitas anda sedang di tampilkan ulang (redisplay) oleh user dari sebelumnya distop. 7. ondestroy(), method ini dipanggil sebelum sebuah aktifitas di matikan (didestroy). Jika resource memory ketat method ondestroty() tidak pernah akan dipanggil (system mungkin akan mematikan prosesnya). 8. onstateinstancestate() 9. onrestoreinstancestate() b. Service Service adalah komponen yang berjalan dibalik layar. Sebuah service tidak memiliki user interface. Sebagai contoh, sebuah service bisa memainkan musik, sementara user sedang menjalankan aplikasi lain. Atau service juga bisa mengirimkan data melalui internet tanpa harus menghentikan interaksi user dengan sebuah activity. Komponen lain, misalnya activity bisa memulai service dan menjalankannya atau terikat ke service tersebut untuk berinteraksi dengan service tersebut. c. Content provider Sebuah content provider mengatur sekumpulan data aplikasi yang terbagi (shared). Kita bisa menyimpan data di filesystem, sebuah database SQLite, di web, atau di metode penyimpanan data lainnya yang bisa diakses oleh aplikasi kita. Melalui content provider, aplikasi lain bisa memberikan query atau bahkan bisa memodifikasi, tentunya jika content provider mengijinkan aksesnya. Sebagai contoh, sistem android menyediakan content provider yang mengatur informasi kontak user. Misalnya, aplikasi apa saja yang memiliki ijin bisa memberikan 5

query kepada sebagian data untuk membaca dan menulis informasi tentang orang tertentu. Content provider juga bisa digunakan untuk menulis dan membaca data pribadi yang tidak dibagikan (tidak di shared). d. Broadcast receivers Broadcast receiver adalah komponen yang merespon terhadap siaran (broadcast) pengumuman yang dikeluarkan oleh sistem. Banyak siaran broadcast yang aslinya berasal dari sistem. Misalnya broadcast yang memberitahukan bahwa layar sudah mati, battery lemah, atau gambar sudah diambil. Aplikasi juga bisa memulai broadcast, misalnya memberitahukan aplikasi lain bahwa beberapa data sudah selesai didwonload dan bisa digunakan. Meskipun broadcast receiver tidak menampilkan user interface, broadcast receiver bisa membuat notifikasi di status bar untuk memberitahukan user sedang terjadi broadcast. Secara umum, broadcast receiver hanyalah sebuah "gerbang" kepada komponen lain dan ditujukan untuk melakukan perkerjaan yang sangat minimal. Tiga dari empat tipe komponen (activity, service dan broadcast receiver) diaktifkan oleh sebuah pesan tidak sinkron yang disebut intent. Intent mengikat beberapa komponen-komponen indiviual menjadi satu pada saat runtime. Sebuah intent dibuat dengan objek Intent, yang mendefinisikan sebuah pesan untuk mengaktifkan sebuah komponen khusus atau sebuah tipe komponen (sebuah intent bisa merupakan komponen implisit atau eksplisit). Untuk activity dan service, sebuah intent mendefinisikan aksi apa yang harus dilakukan oleh keduanya, misalnya untuk melihat atau mengirim sesuatu. Bagi broadcast receiver, intent hanyalah mendefinisikan pengumuman yang dibroadcast. Misalnya sebuah broadcast untuk mengindikasikan batery perangkat sudah lemah hanya terdiri dari sebuah action string yang bernilai "Battery lemah". Komponen tipe lain, content provider, tidak diaktifkan oleh intent. Akan tetapi, content provider diaktifkan ketika menjadi target permintaan dari sebuah content resolver. Content resolver meng-handle semua transaksi langsung dengan content provider sehingga komponen yang ingin bertransaksi dengan content provider cukup memanggil method di objek content resolver. Ada beberapa metode terpisah yang bisa digunakan untuk mengaktifkan setiap tipe komponen: 6

Kita bisa memulai sebuah activity atau memberikannya sesuatu yang baru untuk dilakukan dengan mengirimkan sebuah Intent ke startactivity() atau startactivityforresult() jika kita ingin activity agar mengembalikan sebuah hasil. Kita bisa memulai service atau memberikan instruksi baru kepada service yang berjalan dengan memberikan Intent ke startservice(). Atau kita bisa terikat ke service dengan memberikan Intent ke bindservice(). Kita juga bisa menginisiasi sebuah broadcast dengan memberikan sebuah Intent ke beberapa method seperti sendbroadcast(), sendorderedbroadcast(), atau sendstickybroadcast(). Kita bisa melakukan query ke content provider dengan memanggil query() dalam sebuah Contentresolver. Praktek 1: Instalasi Java JDK, Eclipse IDE, dan Android SDK 1. Periksa PC masing-masing, dan pastikan telah bekerja dengan baik. 2. Periksa apakah beberapa perangkat lunak yang diperlukansudah tersedia antara lain: o OS Windows XP/7 o Eclipse IDE for Java (122 MB) o JDK 6 atau 7 ( kalau sudah ada gak perlu install lg) 70 MB o Android Development Tool Plugin (4,8 MB) o Android SDK (34 MB) Berikut adalah cara instalasi Android: 1. Instal JDK, apabila sudah pernah menginstall maka tidak perlu menginstall lagi. 2. Extrak Eclipse IDE yang sudah di download. Kemudian ekstract pada directory yang mudah diakses. Jika telah siap maka jalankan Eclipse, dan akan ditampilkan logo seperti berikut: 7

3. Kemudian pilih menu Help > Install New Software 4. Klik tombol Add di kiri atas, lalu muncul Add Repository, disini kita bisa masukkan ADTnya secara online dengan memasukan alamat repository Android (https://dl-ssl.google.com/android/eclipse/). 5. Jika secara offline dengan menekan tombol Archive dan arahkan ke file yang telah kita download sebelumnya, seperti betikut: Jika terdapat Warning seperti gambar dibawah maka tekan OK. 6. Setelah proses diatas selesai dilakukan, maka selanjutnya jalankan eclipse dan tentukan directori Workspace, seperti contoh dibawah. 8

7. Setelah proses diatas selesai dilakukan, maka selanjutnya pilih Window > Preferences > Android, lalu browse ke folder SDK Android lalu tekan Apply, tunggu beberapa saat, lalu tekan OK. 8. Pilih lagi Window > Android SDK and AVD Manager, nah disini kita harus mendownload lagi file yang kita butuhkan, misalnya ingin buat aplikasi yang berjalan di Android 2.1, maka download lah SDK Platform Android 2.1, lebih baik kita download sama Sample dan Documentation agar memudahkan kita untuk mencari dokumentasi dan belajar dari source code yang sudah ada. 9. Bila langkah-langkah diatas telah dilakukan dengan benar maka dapat dikatakan selesai instalasinya, Selanjutnya langsung bisa memulai membuat aplikasi dengan memilih File > New >Android Project. 10. Pada contoh ini akan membuat Android Project dengan nama CobaHello1. 9

11. Kemudian pilih Android Target sesuai dengan HP yang dimiliki. 12. Kemudian pilih minimum SDK yang sesuai dengan HP yang dimiliki. 10

13. Kemudian periksa project yang telah dibuat dengan menampilkan Graphical Layout dari main.xml sepeti gambar dibawah: 14. Lalu tambahkan gambar icon seperti berikut ini: 15. Jika telah selesai maka click button Run dan akan ditampilkan menu seperti berikut, lalu pilih Android Application. 16. Jika tidak ada kesalahan maka akan ditampilkan pada emulator seperti terlihat dibawah ini: 11

Praktek 2: Program Konverter Suhu 1. Pertama-tama butlah project baru, misalnya dengan nama KonverterSuhu. Selanjutnya pada Package Explorer akan terlihat susunan seperti berikut: 2. Langkah kerja aplikasi Android pertama kali akan memeriksa file AndroidManifest.xml pada project kita. Dalam file tersebut, sistem android akan 12

mencari sebuah element <activity> yang ditetapkan sebagai LAUNCHER, ditandai dengan memiliki elemen <category> dengan atribut android:name="android.intent.category.launcher". 3. Kita lihat file AndroidManifest.xml dalam aplikasi KonverterSuhu, seperti berikut. <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="konverter.suhu" android:versioncode="1" android:versionname="1.0" > <uses-sdk android:minsdkversion="7" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name="konverter.suhu.konvertersuhuactivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> </application> </manifest> 4. Kemudian edit file KonverterSuhuActivity.java seperti contoh dibawah ini. File inilah yang mengatur logic dari aplikasi, berdasarkan informasi yang ada di AndroidManifest.xml, maka file inilah yang akan dijalankan pertama kali ketika user ingin menjalankan aplikasi. package konverter.suhu; import konverter.suhu.r; import android.app.activity; import android.os.bundle; import android.view.view; import android.widget.edittext; import android.widget.radiobutton; import android.widget.toast; public class KonverterSuhuActivity extends Activity { private EditText text; @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); text = (EditText) findviewbyid(r.id.edittext1); } // method untuk click button public void myclickhandler(view view) { switch (view.getid()) { case R.id.button1: RadioButton celsiusbutton = (RadioButton) findviewbyid(r.id.radio0); RadioButton fahrenheitbutton = (RadioButton) findviewbyid(r.id.radio1); 13

if (text.gettext().length() == 0) { Toast.makeText(this,"Input salah!", Toast.LENGTH_LONG).show(); return; } float inputvalue = Float.parseFloat(text.getText().toString()); if (celsiusbutton.ischecked()) { text.settext(string.valueof(konversifahrenheittocelsius(i nputvalue))); celsiusbutton.setchecked(false); fahrenheitbutton.setchecked(true); } else { text.settext(string.valueof(konversicelsiustofahrenheit(i nputvalue))); fahrenheitbutton.setchecked(false); celsiusbutton.setchecked(true); } break; } } // konversi ke celsius private float konversifahrenheittocelsius(float fahrenheit) { return ((fahrenheit - 32) * 5 / 9); } { } // konversi ke fahrenheit private float konversicelsiustofahrenheit(float celsius) } return ((celsius * 9) / 5) + 32; 5. Class KonverterSuhuActivity diatas merupakan sebuah class turunan dari class Activity. Metode oncreate pada class diatas akan dipanggil ketika activity ini ingin dijalankan (ditampilkan di layar). Yang perlu kita perhatikan disini adalah pada baris setcontentview(r.layout.main);. Artinya, file xml yang akan digunakan menjadi tampilan activity ini adalah pada file dengan nama main.xml dalam folder res/layout/ pada project kita. 6. Kemudian edit file main.xml seperti contoh dibawah. File inilah yang mengatur tampilan, sesuai dengan parameter yang diberikan ke metode setcontentview(). <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/mycolor" android:orientation="vertical" > <TextView 14

android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <EditText android:id="@+id/edittext1" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputtype="numberdecimal numbersigned" > </EditText> <RadioGroup android:id="@+id/radiogroup1" android:layout_width="match_parent" android:layout_height="wrap_content" > <RadioButton android:id="@+id/radio0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="@string/celsius" > </RadioButton> <RadioButton android:id="@+id/radio1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/fahrenheit" > </RadioButton> </RadioGroup> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onclick="myclickhandler" android:text="@string/calc" > </Button> </LinearLayout> 7. LinearLayout merupakan format layout yang paling sering digunakan dalam aplikasi Android. Format ini menempatkan menampilkan komponen UI (button, textview, dll) secara berurutan berdasarkan penulisannya. Seperti namanya, TextView digunakan untuk menampilkan text. Text yang ditampilkan langsung ditulis atau merupakan referensi ke variable string dalam res/values/strings.xml. Dalam contoh di atas, text yang akan ditampilkan adalah string dengan nama "hello". 8. Pada Graphical Layout file main.xml akan terlihat seperti contoh berikut: 15

9. Kemudian edit file string.xml tempat mendeklarasikan beberapa string, seperti contoh berikut: <?xml version="1.0" encoding="utf-8"?> <resources> <color name="mycolor">#aa55cc</color> <string name="app_name">konvertersuhu</string> <string name="hello">isilah suhu pada kolom dibawah</string> <string name="myclickhandler">myclickhandler</string> <string name="celsius">ke Celsius</string> <string name="fahrenheit">ke Fahrenheit</string> <string name="calc">konversi</string> </resources> 10. Jika proses edit telah selesai semua, maka click Run, lalu tunggu beberapa saat, maka pada emulator akan terlihat seperti contoh berikut: 16

Cara kerja aplikasi diatas adalah sebagai berikut: 1. Ketika pertama kali aplikasi dijalankan (activity dibuat), method oncreate() dieksekusi. Di dalam method ini, terdapat pengaturan tampilan layar dan pengambilan ID dari text field. 2. Dalam Android, tampilan text field direpresentasikan oleh class edittext1. Setelah method oncreate() dieksekusi, selanjutnya Android mengeksekusi method onresume(). 3. Karena activity baru diluncurkan pertama kalinya, belum ada nilai yang tersimpan di inputvalue sehingga variabel text bernilai null, dan jika akan diisi dengan cara meng-click didalam textfield maka akan ditampilkan keypad Android pada sisi bawah. 4. Ketika aplikasi akan dieksekusi dengan memilih radio button ke Fahrenheit, maka nilai yang diisikan kedalam text akan dikonversikan ke Fahrenheit. Selanjutnya dengan meng-click button konversi maka inilah saat yang pas untuk menyimpan nilai dari textfield atau menyimpan konten dari textfield. 5. Jika kita lihat kode di dalam KonverterSuhuActivity.java, maka kita akan melihat proses penyimpanan konten text dan diberikan ke method konversicelsiustofahrenheit() untuk dikonversikan. Selanjutnya hasil kalkulasi akan disimpan dalam text sebagai nilai hasil kalkulasi, dan nilai text inilah yang selanjutnya ditampilkan ke textfield. 17