PEMROGRAMAN SMART PHONE MENGGUNAKAN SDK ANDROID DAN HACKING ANDROID Oleh : Prof. Jazi Eko Istiyanto, Ph.D. Edisi Pertama Cetakan Pertama, 2013 Hak Cipta 2013 pada penulis, Hak Cipta dilindungi undang-undang. Dilarang memperbanyak atau memindahkan sebagian atau seluruh isi buku ini dalam bentuk apa pun, secara elektronis maupun mekanis, termasuk memfotokopi, merekam, atau dengan teknik perekaman lainnya, tanpa izin tertulis dari penerbit. Ruko Jambusari No. 7A Yogyakarta 55283 Telp. : 0274-889836; 0274-889398 Fax. : 0274-889057 E-mail : info@grahailmu.co.id Istiyanto, Jazi Eko, Prof., Ph.D. PEMROGRAMAN SMART PHONE MENGGUNAKAN SDK ANDROID DAN HACKING ANDROID/ Prof. Jazi Eko Istiyanto, Ph.D. - Edisi Pertama Yogyakarta; Graha Ilmu, 2013 x + 478 hlm, 1 Jil. : 23 cm. ISBN: 978-979-756-889-4 1. Komputer I. Judul
Kata Pengantar Alhamdulillah buku Pemrograman Smart Phone Menggunakan SDK Android dan Hacking Android telah dapat terselesaikan. Buku ini memuat dasar-dasar pemrograman java pada platform Android. Pembaca juga akan mempelajari bagaimana kita dapat mengakses sensor dan perangkat keras yang tertanam pada smartphone berbasis Android. Seluruh aplikasi pada buku ini telah diujikan pada perangkat Samsung Galaxy i5503 (atau dikenal sebagai Galaxy 5), meskipun demikian aplikasi smart phone Android menggunakan plaform bahasa Java yang bersifat WORA (Write Once Run Anywhere) maka dapat lupa berjalan pada perangkat dari berbagai tipe dan produsen lainnya seperti Sony Ericcsson, HTC, LG, Asus, Huawei, dan lain sebagainya. Sebaik-baiknya contoh-contoh tidak hanya untuk dijalankan saja tetapi harus diperlukan pemahaman agar pembaca dapat menjadi pengembang aplikasi Android profesional. Ucapan terima kasih kepada Mochamad Sofyan M, S.Si. yang telah mencoba dan menguji program-program pada buku ini.
Ucapan terima kasih juga saya sampaikan kepada Jurusan Ilmu Komputer dan Elektronika FMIPA UGM yang telah mendanai penelitian memanfaatkan Android, Arduino, yang telah memberikan pengalaman bagi penulis sehingga sebagian hasilnya dituangkan ke dalam buku ini. Ucapan terima kasih juga penulis haturkan kepada penerbit Graha Ilmu yang telah sangat kooperatif sehingga buku ini dapat terbit. Yogyakarta, November 2011 Prof. Jazi Eko Istiyanto, Ph.D. vi Pemrograman Smart Phone Menggunakan SDK Android dan Hacking Android
Daftar Isi KATA PENGANTAR DAFTAR ISI BAB 1 TEKNOLOGI SMART PHONE 1 Latar Belakang Android 4 Perangkat Mobile Berbasis Android 6 Distribusi Aplikasi Android 14 Fragmentasi Android 16 Popularitas Aplikasi Mobile 16 BAB 2 SOFTWARE STACK ANDROID 19 Kernel Android 22 Filesystem Android 23 Standar Lisensi Android 25 Konsep dan Fungsi Level API pada Aplikasi Android 25 Fungsi Level API pada Aplikasi Android 28 BAB 3 INSTALASI JDK, SDK ANDROID DAN ADT 29 Android SDK Manager dan Spesifikasi Hardware 29 v vii
Instalasi JDK dan Eclipse 34 Instalasi SDK Android 37 Instalasi Package SDK Android 42 URL Repositori Add-on 50 Instalasi dan Update ADT 51 Konfigurasi Variabel Environment Windows XP dan 7 55 BAB 4 INSTALASI KIES DAN KONFIGURASI PERANGKAT ANDROID 59 Instalasi Plugin, Runtime, dan NET Framework 60 Instalasi Kies 64 Konfigurasi Smartphone Android 68 BAB 5 DASAR-DASAR SDK ANDROID 71 Android Virtual Device (AVD) 71 Proses Pembuatan AVD 72 Emulator Android 77 Kontrol Emulator Android 78 Opsi Startup Emulator Berbasis Konsol 79 Image Disk Emulator 86 Image Runtime Data dan SD Card 86 Image Data User 87 Image Temporary 87 Shell Emulator atau Perangkat Android 88 Emulasi Geo-location 91 Emulasi Event Hardware 93 Emulasi Perubahan Level Baterai Perangkat Android 94 Pemantauan Status Jaringan 94 Keterbatasan Emulator 95 Instalasi Aplikasi Android 96 Uninstall Aplikasi Android 98 Emulasi SD Card pada Emulator 99 Membuat dan Modifikasi Image SD Card 99 Membuat dan Modifikasi File Image Disk 100 Monitoring Aplikasi Android 101 Command Tool ADB 101 Dalvik Debug Monitor Server (DDMS) 105 Fitur DDMS 108 BAB 6 DASAR PEMROGRAMAN ANDROID 117 Package Core Android 118 Tipe Data Primitive pada Android 120 Komponen Dasar Penyusun Aplikasi Android 120 viii Pemrograman Smart Phone Menggunakan SDK Android dan Hacking Android
Komponen Aplikasi (Application Component) 121 User Interface 127 Intent (Component Aktif) 129 Shutdown Component 129 Activity dan Task 130 Siklus (Lifecycle) Component 132 Siklus Activity 132 Penyimpanan State Activity 136 Siklus Service 137 Siklus Broadcast Receiver 139 Hierarki Proses dan Siklus 139 Project Aplikasi Android 140 Direktori Project Android 141 File Manifest 142 Filter Intent 146 Konfigurasi AndroidManifest.xml 148 Direktori Resource 151 Direktori Binary 158 Direktori Assets 158 Direktori Gen 158 Direktori Source 159 Android.jar dan Maps.jar 159 BAB 7 PROJECT DASAR APLIKASI ANDROID 161 Aplikasi HaloAndroid (UI Tanpa Layout XML) 161 Modifikasi UI dengan layout XML 166 WaktuSaatIni - Aplikasi penerapan Widget Android 170 BAB 8 LOCATION SERVICE DAN GOOGLE MAPS 181 Project CariLokasi Penerapan Intent Google Maps 181 Implementasi API Geocoder 186 Geocode Implementasi API Geocoder 188 Teknologi Geo Location 198 Fungsi Geo-Lokasi pada Aplikasi Android 202 Konfigurasi Geo-Location 205 Registrasi API Map 207 Project CekLokasi - Implementasi API Google Maps dan Geo-Location 208 BAB 9 APLIKASI RSS FEED 229 RSS Feed Informasi Cuaca 230 Proses Parsing Berkas XML 233 Daftar Isi ix