Mobile Programming TI PDF
Mobile Programming TI PDF
Mobile
Programming
Konsep Dasar Pemrograman
Mobile
01
Fakultas Ilmu Teknik Informatika 87036 Tim Dosen.
Komputer
Abstract Kompetensi
Konsep Dasar Pemrograman Mobile Mahasiswa mampu menjelaskan
konsep dasar pemrograman mobile
dan mampu membuat program java
Tahun 2002, Microsoft pertama Windows CE (Pocket PC) pada smartphone . Masih pada tahun
2002, Blackberry merilis smartphone pertamanya. 3 tahun kemudian, tahun 2005 Nokia
memperkenalkan Maemo OS pada tablet internet pertama Nokia N770. Lalu tahun 2007, Apple
iPhone dengan iOS diperkenalkan sebagai iPhone “mobile phone” dan “internet communicator”.
Setahun kemudian, tahun 2008 OHA yang dibentuk oleh Google merilis Android 1.0 dengan HTC
Dream (T-Mobile G1) sebagai ponselAndroid yang pertama.
Mobile Computing
Mobile Computing adalah suatu istilah yang digunakan untuk menggambarkan aplikasi pada piranti
berukuran kecil, portable, dan wireless serta mendukung komunikasi.
Pengenalan Android
Android adalah sistem operasi untuk telepon seluler yang berbasis Linux.Android menyediakan platform
yang bersifat open source bagi para pengembang untuk menciptakan sebuah aplikasi.Awalnya, Google
Inc. mengakuisi Android Inc. yang mengembangkan software untuk ponsel yang berada di Palo Alto,
California Amerika Serikat. Kemudian untuk mengembangkan Android, dibentuklah Open Handset
Alliance, yaitu konsorsium dari 34 perusahaan hardware, software, dan telekomunikasi, termasuk
Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.
Sebuah Activity biasanya ditampilkan dalam satu screen sebagai bagian komponen dari View (yang
terdiri dari komponen UI, widget atau control), yang bertugas melakukan interaksi dengan user untuk
melakukan sebuah task tunggal (misalnya, melihat informasi, mengedit data, atau memasukkan data).
Sebuah aplikasi Android biasanya memiliki satu atau lebih Activity. Salah satu Activity ditandai sebagai
startup activity, yang pada gilirannya memulai activity berikutnya, melalui sebuah intent. Untuk
Kita bisa mengatur konten view dari activity secara bahasa pemrograman java atau juga bisa melalui
kode layout file XML Daur hidup sebuah activity diatur melalui method call-back, yang di definisikan
pada class dasar Activity pada gambar 1.1. tentang siklus hidup android.
Android versi 1.0 dikeluarkan tanggal 23 September 2008. Versi 1.1 adalah versi yang pertama kali
digunakan di mobile phone disusul versi 1.5 (Cupcake), 1.6 (Donut) dst. Versi Android terakhir adalah:
• 2.2 (Froyo), mempercepat kinerja dengan Just In Time compiler dan Chrome V8 JavaScript engine,
Wi-Fi hotspot tethering dan suppport Adobe Flash.
• 2.3 (Gingerbread), memperbaiki user interface, soft keyboard, copy/paste features dan support
Near Field Communication (NFC).
• 3.0 (Honeycomb), diperuntukkan untuk tablet yang menggunakan layar lebih besar, multicore
processors dan hardware acceleration untuk grafis.
• 4.0 (Ice-cream sandwich), kombinasi Gingerbread and 3.0 Honeycomb. Integrasi antara platform
untuk tablet dan smartphone.
• 4.1 & 4.2 (Jelly-Bean), user interface yang lebih halus (project butter).
• 4.4 (Kit-Kat),
• Lolipob
• Marshmallow
Untuk mengembangkan aplikasi di Android, bahasa utama yang digunakan adalah Java, tetapi bukan
dalam platform J2ME yang memiliki banyak keterbatasan. Platform yang digunakan di Android setara
dengan J2SE, dan ini merupakan kelebihan utama Android.
Terdapat beberapa alasan mengapa Android berkembang dengan pesat dan kenapa developer
sebaiknya membangun Aplikasi Android.
Market Share
Developer memiliki kesempatan untuk mengembangkan aplikasi untuk pasar yang relative baru dan
sedang berkembang pesat. Keberadaan Android Market akan menempatkan aplikasi yang dibuat oleh
developer langsung kepada pengguna. Pengguna tidak perlu mencari melalui internet untuk menemukan
dan meng-install aplikasi yang dibuat oleh developer. Pengguna cukup membuka Android Market yang
sudah ter-install di perangkat android pengguna dan mengakses aplikasi yang pengguna butuhkan dan
menginstall kedalam perangkat android pengguna.
Time to Market
Terdapat Android APIs (Application Programming Interfaces) yang memudahkan developer untuk
membangun aplikasi dengan mudah dan waktu yang singkat.
Open Platform
Sistem operasi Android merupakan platform terbuka.Sehingga tidak merujuk pada suatu perusahaan
hardwareatau suatu provider. Platform terbuka android memungkinkan perkembangan marketdengan
sangat cepat, karena semua perusahaan hardware dan providerdapat membuat dan menjual perangkat
android.Source code android dapat di akses melalui at http://source.android.com, untuk digunakan dan
dimodifikasi sesuai kebutuhan perusahaan hardware, provider atau developeraplikasi.
Cross Compatibility
Android dapat berjalan di berbagai perangkat dengan ukuran dan resolusi layar yang berbeda.Android
memiliki fitur yang membantu developeruntuk mengembangkan aplikasi yang compatibleuntuk berbagai
perangkat (cross-compatibleapplication). Google memiliki feature detectionyang mengatur agar aplikasi
yang dikembangkan oleh developerhanya berjalan di perangkat yang compatible. Sebagai contoh, jika
suatu aplikasi membutuhkan kamera depan (front-facing camera) maka hanya perangkat android
dengan kamera depan yang akan dapat melihat aplikasi tersebut di Android Market. Suatu perangkat
android harus mengikuti suatu aturan untuk mendapatkan sertifikat kesesuaian terhadap Android
Mashup Capability
Mashup Capability merupakan kemampuan untuk mengkombinasikan dua atau lebih layanan untuk
mengembangkan suatu aplikasi.Sebagai contoh, developerdapat membuat mashupdengan
menggunakan kamera dan GPS, sehingga terbangun aplikasi pengambilan photo dengan dilengkapi
secara tepat lokasi pengambilannya.
Linux Kernel
Android dibangun di atas kernel Linux 2.6. Namun secara keseluruhan android bukanlah linux,
karena dalam android tidak terdapat paket standar yang dimiliki oleh linux lainnya. Linux
merupakan sistem operasi terbuka yang handal dalam manajemen memori dan proses. Oleh
karenanya pada android hanya terdapat beberapa servis yang diperlukan seperti keamanan,
manajemen memori, manajemen proses, jaringan dan driver. Kernel linux menyediakan driver layar,
kamera, keypad, WiFi, Flash Memory, audio, dan IPC (Interprocess Communication) untuk mengatur
aplikasi dan lubang keamanan.
Libraries
Android Runtime
Pada android tertanam paket pustaka inti yang menyediakan sebagian besar fungsi android. Inilah
yang membedakan Android dibandingkan dengan sistem operasi lain yang juga
mengimplementasikan Linux. Android Runtime merupakan mesin virtual yang membuat aplikasi
android menjadi lebih tangguh dengan paket pustaka yang telah ada. Dalam Android Runtime
terdapat 2 bagian utama, diantaranya:
Application Framework
Kerangka aplikasi menyediakan kelas-kelas yang dapat digunakan untuk mengembangkan aplikasi
android. Selain itu, juga menyediakan abstraksi generik untuk mengakses perangkat, serta
mengatur tampilan user interface dan sumber daya aplikasi. Bagian terpenting dalam kerangka
aplikasi android adalah sebagai berikut [Hello Android 2nd Edition]:
1. Activity Manager, berfungsi untuk mengontrol siklus hidup aplikasi dan menjaga keadaan
”Backstack“ untuk navigasi penggunaan.
2. Content Providers, berfungsi untuk merangkum data yang memungkinkan digunakan oleh
aplikasi lainnya, seperti daftar nama.
3. Resuource Manager, untuk mengatur sumber daya yang ada dalam program. Serta
menyediakan akses sumber daya diluar kode program, seperti karakter, grafik, dan file
layout.
4. Location Manager, berfungsi untuk memberikan informasi detail mengenai lokasi perangkat
android berada.
Application Layer
Puncak dari diagram arsitektur android adalah lapisan aplikasi dan widget. Lapisan aplikasi
merupakan lapisan yang paling tampak pada pengguna ketika menjalankan program. Pengguna
hanya akan melihat program ketika digunakan tanpa mengetahui proses yang terjadi dibalik lapisan
aplikasi. Lapisan ini berjalan dalam Android runtime dengan menggunakan kelas dan service yang
tersedia pada framework aplikasi. Lapisan aplikasi android sangat berbeda dibandingkan dengan
sistem operasi lainnya. Pada android semua aplikasi, baik aplikasi inti (native) maupun aplikasi pihak
ketiga berjalan diatas lapisan aplikasi dengan menggunakan pustaka API (Application Programming
Interface) yang sama.
Daftar Pustaka
1. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
2. Cinar, O. (2012). Android Apps with Eclipse (1 ed.). Appress.
3. Murphy, M. L. (2010). Android Programming Tutorials. United States of America:
CommonsWare, LLC.
4. Modul Mobile Programming Susanto Hariyanto, S.Kom.
5. Modul Mobile Programming, Sekolah Tinggi Manajemen Informatika & Komputer Indonesia,
6. Modul Praktikum Pemrograman Mobile, Teknik Informatika, Fakultas teknik Industri, Institut
Sains Dan Teknologi AKPRIND, Yogyakarta, 2014
Mobile
Programming
Petunjuk Instalasi dan
Pengenalan Editor
02
Ilmu Komputer Teknik Informatika 87036 Tim Dosen
penerbit Modul
Abstract Kompetensi
Mahasiswa memahami konsep aplikasi
dalam android, serta mampu membuat
aplikasi sederhana.
XML (eXtensible Markup Language)
XML kependekan dari eXtensible Markup Language, dikembangkan mulai tahun 1996 dan
mendapatkan pengakuan dari W3C pada bulan Februari 1998. Teknologi yang digunakan pada XML
sebenarnya bukan teknologi baru, tapi merupakan turunan dari SGML yang telah dikembangkan
pada awal 80-an dan telah banyak digunakan pada dokumentasi teknis proyek-proyek berskala
besar. Ketika HTML dikembangkan pada tahun 1990, para penggagas XML mengadopsi bagian
paling penting pada SGML dan dengan berpedoman pada pengembangan HTML menghasilkan
markup language yang tidak kalah hebatnya dengan SGML.
Seperti halnya HTML, XML juga menggunakan elemen yang ditandai dengan tag pembuka (diawali
dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut
elemen(parameter yang dinyatakan dalam tag pembuka misal <form name=”isidata”>). Hanya
bedanya, HTML medefinisikan dari awal tag dan atribut yang dipakai didalamnya, sedangkan pada
XML kita bisa menggunakan tag dan atribut sesuai kehendak kita. Pada eclipse XML biasanya
digunaka untuk mengatur layout pada layar gadget.
Eclipse selalu dilengkapi dengan JDT(Java Development Tools), yaitu sebuah plugin yang memebuat
Eclipse dapat dipakai untuk mengembangkan program java,serta dilengkapi dengan PDE(Plugin
Development Environment) yang bisa dipaki untuk membuat plugin baru. Ada beberapa versi
eclipse yang sudah release , pada modul praktikum ini menggunakan versi dengan kode nama Juno.
File bisa didownload di http://www.mediafire.com/download/owef6j4gc35e3ig/adt-bundle-
windows-x86-20130717.zip .format file Zip. Pastikan PC anda sudah terinstal JDK (Java development
Kit). Setelah download selesai berikut adalah cara mengkonfigurasi eclipse. Jika di komputer belum
terinstal java, maka lakukan intalasi terlebih dahulu.
Sebelum membangun aplikasi android, diperlukan tiga buah file yang harus diinstal. Ketiga buah file
tersebut dapat diunduh di http://developer.android.com/sdk/index.html
1. Eclipse
2. ADT Plugin
3. SDK Manager
Ketiga file tersebut sudah include didalam satu folder. Saat mendownload silahkan sesuaikan dengan
tipe sistem operasi komputer. Kemudian install JDK (Java Development Kit) minimal versi 7 dan install di
komputer. Berikut ini adalah langkah-langkah instalasi :
2. Selanjutnya kita akan membuat Android Virtual Device pada gambar 1.3. Masuk ke folder adt-
bundle, kemudian klik SDK manager.exe. jika terdapat pemberitahuan error, abaikan saja.
4. Selanjutnya adalah proses konfigurasi emulator android pada gambar 1.5, klik New
5. Isi sesuai dengan gambar 1.6. Untuk Internal Storage ubah nilainya menjadi 500MiB. Kemudian
Klik OK
Isi seperti gambar dibawah, jangan lupa ganti nama package. Package name harus unik, aturan yang
biasa digunakan adalah menggunakan nama website organisasi anda (dalam urutan yang dibalik),
ditambah dengan nama applikasi. Misalkan nama website organisasi anda adalah yuliadi.com, maka
nama package adalah: com.yuliadi.namapp. Jika nama web organisasinya cs.upi.edu, maka nama
packagenya: edu.upi.cs.yudiwbs.namaapp.
Dapat dilihat pada gambar di bawah bahwa minimum required SDK diset dengan API11 Android 3.0
(HoneyComb) karena versi ini telah mendukung ActionBar.
Terlihat ADT telah menyiapkan komponen user interface activity utama (untuk sekarang, anggap activity
adalah semacam Form).
Pertama yang kita lihat adalah graphical layout berisi rendering layout dan fasilitas untuk mengedit
layout. Lihat ke tab bagian bawah, pilih activity_main.xml untuk melihat format XML-nya. Komponen
user interface dalam Android didefinisikan didalam XML. Jadi anda dapat mengubah elemen tampilan
dengan dua cara: melalui graphical layout atau langsung mengedit file xml-nya.
Sekarang coba buka source code. Lihat package explorer, buka src, package dan klik MainActivity.java
Perhatikan tab console dibagian bawah. Tab ini penting untuk melihat apa yang terjadi.
Pertama, melalui project explorer kembali pilih activity_main.xml yang berada di res/layout (gambar
bawah).
Komponen-komponen user interface yang berada di bagian kiri, sering disebut “widget” atau “view”.
Pertama pilih widget TextField, pilih yang paling atas (plain text), lalu drag ke dalam form.
Lalu drag button di Form Widget, dan letakkan disebelah kanan text field.
Coba run (ctrl-F11) untuk melihat hasil tampilan dari program ini. Jangan lupa, jangan tutup
emulatornya, supaya tidak menunggu lama saat run berikutnya. Sekarang kita akan menambahkan aksi
yang akan dijalankan saat button diklik.
Sekarang karena kita akan membuat code yang saat button di-klik menangkap apa yang diketikkan
pengguna dan menuliskannya di TextView. Untuk itu setiap komponen perlu diberi nama.
Kembali ke activity_main.xml. Klik Button kemudian lihat window properties yang berada di sebelah
kanan, ganti Text dengan “Sapa” dan id dengan “bSapa”
Saat id diganti maka ada pesan untuk mengupdate semua kemunculan id, jawab ini dengan “Yes”.
Kemudian muncul window “Rename Resource” dan jawab ini juga dengan OK. Cara ini akan membuat
semua kemunculan id ini di activity_main akan otomatis diganti. Ini akan lebih mudah dibandingkan
harus mengganti secara manual file xml.
Coba lihat XML-nya, maka semua Id telah diganti (gambar bawah). Ini kelebihan mengganti nama id
menggunakan property.
Sekarang kita akan mengeset agar saat button diklik, method yang diinginkan akan dipanggil. Set atribut
android.onClik pada button dengan nama method yang akan menangani event tersebut (bSapaClick).
Sekarang kita perlu menambahkan code agar saat tombol diklik app akan mengeluarkan respon.
Kemudian buat satu method baru bSapaClick. Pastikan nama method sama dengan yang dicantumkan
di activity_main.XML. Nama yang tidak sama akan menyebakan error saat program dijalankan.
Tip: Jika id tidak dikenali seperti R.id.etNama, R.id.tvSalam dan seterusnya, buka kembali
activity_main.xml lalu tekan ctrl-S (save)
Jalankan program (ctrl-F11), perhatikan tab Console di bagian bawah untuk memonitor proses emulasi.
Isi teks dan tekan tombol.
Cara ini paling sederhana, tetapi programmer harus memastikan nama method pada XML sama dengan
nama method di program. Jika nama method tidak sama, tidak akan muncul kesalahan pada saat
program dicompile, tapi akan menyebabkan kesalahan pada saat runtime (saat button diklik). Alternatif
lain adalah dengan menggunakan listener seperti code dibawah.
Latihan
2015 Mobile Programming Pusat Bahan Ajar dan eLearning
17 Tim Dosen http://www.mercubuana.ac.id
Buatlah program untuk menghitung luas sebuah persegi panjang. Input adalah panjang dan lebar (dua
edit text). Output adalah luasnya (panjang kali lebar). Gunakan method berikut untuk mengubah tipe
string ke double.
Catatan: input dari method setText bertipe teks, sehingga nilai luas yang bertipe double harus
dikonversi terlebih dulu menjadi teks. Gunakan String.valueOf(dblLuas) untuk mengkoversi
double menjadi teks.
Daftar Pustaka
Mobile
Programming
03
Ilmu Komputer Teknik Informatika 87036 Tim Dosen.
penerbit Modul
Abstract Kompetensi
. Mahasiswa memahami konsep aplikasi
dalam android, serta mampu membuat
aplikasi sederhana.
Widget
Komponen user interface pada eclipe ini disebut widget. Beberapa widget dasar adalah: TextView,
Button, Image, EditText, CheckBox, RadioButton, ListView. Setiap widget memiliki property atau
atribut yang mengatur bagaimana widget itu ditampilkan, seperti tinggi dan lebar widget. Property
ini dapat diset melalui xml layout, property editor atau melalui program. Beberapa widget memiliki
beberapa event yang ter-trigger berdasarkan aksi dari pengguna, misalnya event click pada button.
Berikut adalah contoh pengaplikasian widget. Untuk menampilkan cukup drag icon ke layar kerja.
Text View
TextView digunakan untuk menampilkan label teks. View ini sudah kita gunakan Beberapa contoh
property dari TextView adalah android:textSize, android:textStyle, android:textColor. Coba tambahkan
textview standard dengan atribut dibawah.
Hasilnya:
Button
Button merupakan turunan dari TextView sehingga yang berlaku di textView juga berlaku di button.
Tambahan property yang penting adalah onClick
Catatan: dp yang digunakan sebagai satuan panjang merupakan singkatan dari density-independen pixel.
Nilai pixel untuk 1 dp berubah-ubah sesuai dengan resolusi. 1 dp pada resolusi 160 pixel berarti 1 pixel.
Jika resolusinya 320 pixel, maka 1 dp = 2 pixel demikian seterusnya.
Image View
Contoh:
dan hasilnya
EditText
EditText digunakan untuk menerima input dari pengguna. Pada palette telah disediakan berbagai jenis
EditText, silahkan dicoba satu persatu dan perhatikan XML yang dihasilkan.
User dapat memilih lebih dari satu pilihan dengan checkbox. Pada palette, Checkbox ada di bagian
FormWidgets.
Coba tambahkan dua checkboxs lalu set atribut id dan text melalui window property:
Sehingga hasilnya
Sedangkan contoh program untuk mendapatkan nilai suatu checkbox di check atau tidak adalah sebagai
berikut.
Tambahkan Button dan TextView di form untuk menampilkan hasil pilihan user. Sehingga tampilannya
akan seperti ini.
Sedangkan XML-nya akan seperti ini, anda dapat langsung mengedit file XML ataupun melalui window
property. Jangan lupa atribut onClick:
Buat soal berikut yang penggunanya dapat memilih lebih dari satu:
--------------------------------------------------------------------------------
1. Manakah kota dibawah ini yang merupakan ibu kota propinsi?
Bandung ini button
Bogor
Banjarmasin
Bontang
Periksa Nilai
Catatan: input dari method setText adalah teks, sehingga nilai integer harus dikonversi
terlebih dulu menjadi teks. Gunakan Integer.toString(intNilai).
Pada radioButton, hanya satu pilihan yang boleh aktif (mutual exclusive) di dalam satu group yang
disebut radioGroup. Modifikasi program checkbox diatas, tambahkan radio group (bukan radiobutton)
yang ada di Form Widget
Hasilnya:
Tambahkan button dan textview, lalu gunakan property untuk mengedit sehingga hasilnya seperti
berikut. Ganti id RadioGroup dengan rgJenisKel, radiobutton dengan rbLaki dan
rbPerempuan dan id TextView dengan tvHasilRadio. Tambahkan property onClick pada
button dengan nama klikHasilRadio
Catatan: Anda dapat mengeset atribut android:orientation pada RadioGroup menjadi horizontal agar
radio button tersusun secara mendatar.
Periksa Nilai
Nilai anda: [ditampilkan setelah tombol periksa nilai diklik]
--------------------------------------------------------------------------------
Jawaban yang benar adalah “Kendari”. Jika pengguna memilih pilihan yang benar akan
mendapat nilai 10, sedangkan jika menjawab salah maka akan mendapat nilai -2
Mobile
Programming
ListView dalam Android
04
Ilmu Komputer Teknik Informatika 87036 Tim Dosen.
penerbit Modul
Abstract Kompetensi
Kita akan mulai dengan membuat list sederhana seperti gambar di bawah:
1. Pertama, buat project baru lalu pilih Composite dan tambahkan ListView di activity_main.xml
4. Coba jalankan.
Untuk mengupdate data pada contoh diatas, nilai array dapat langsung diubah lalu panggil method
adapter.notifyDataSetChanged()untuk merefresh tampilan. Sebagai contoh, kita akan membuat
button yang saat diklik akan mengubah item pertama:
Untuk membuatnya, pertama buat project baru. Tambahkan ListView seperti pada contoh sebelumnya.
Ganti id dengan listJudul.
Kemudian kita akan buat layout untuk setiap baris pada ListView yang berisi judul dan keterangan. Pilih
project pada project explorer, lalu klik kanan Android Tools New Resources File (gambar bawah)
Pilih resource type “Layout”. Beri nama file row.xml, pilih root element LinearLayout, XML akan dibuat di
dalam direktori /res/layout. File row.xml ini akan menentukan layout dari setiap baris pada listview.
Pada row.xml yang baru digenerate tambahkan widget LargeText dan TextView (gambar bawah). Ganti
Id kedua komponen itu. LargeText dengan tvJudul dan TextView dengan tvKeterangan.
Pada contoh di atas hanya digunakan dua widget (LargeText dan TextView), tapi sebenarnya apapun
dapat dimasukkan di dalam layout ini. Misalnya Button, ImageView dan lainnya. Ini memungkinkan kita
membuat ListView dengan isi yang kompleks.
Sekarang buat class untuk yang menampung data judul dan keterangan. Pada project explorer, pilih
/src/[package], klik kanan new Class
Berikut isi dari DataList. Class ini akan berisi data yang akan muncul di setiap baris.
Selanjutnya kita akan buat adapter untuk list. Fungsinya untuk “mengisi” setiap row dengan isi objek
DataList.
Buat class dengan cara yang sama dengan sebelumnya (klik /src/[package], klik kanan, new class), beri
nama DataAdapter, jadikan class ini turunan dari kelas ArrayAdapter.
Klik browse di dialog saat membuat class di bagian superclass (gambar bawahh)
Ketik Array…, maka akan muncul ArrayAdapter, pilih item tersebut (gambar bawah)
Isi class DataAdapter adalah sebagai berikut. Pada method getView, parameter pos adalah indeks baris.
Perhatikan pengisian tvJudul dan tvKeterangan dengan data sesuai indeks.
Buat program dengan tampilan seperti berikut, saat tombol diklik, maka isi list akan
bertambah sesuai dengan nim dan nama. Tip: gunakan
adapter.notifyDataSetChanged() untuk merefresh data.
Contoh berikut akan menampilkan dialog singkat jika baris ditekan, judul pada baris juga akan berubah
menjadi warna merah. Berdasarkan kode pada contoh listview sebelumnya, tambahkan kode berikut
(bagian yang dilingkari). Penjelasan tentang Toast ada di sub bab berikutnya.
Mobile
Programming
05
Ilmu Komputer Teknik Informatika 87036 Tim Dosen.
penerbit Modul
Abstract Kompetensi
Menggunakan Toast, Dialog, Log, dan Mahasiswa memahami dan mampu
Intent untuk membuka aplikasi. menggunakan Toast atau Dialog.
Mahasiswa mampu menerapkan proses
logging untuk mencatat perilaku
aplikasi. Mahasiswa mampu memanggil
activity baru dengan Intent.
Toast, List Dialog dan Alert Dialog
Pada pertemuan kelima kita akan membuat kotak dialog sebagai sarana interaktif antara
aplikasi dengan pengguna. Pada aplikasi ini kita akan mengimplementasikan 3 macam dialog,
antara lain :
• Toast
• List dialog
• Alert dialog
Toast
Toast digunakan untuk menampilkan pesan yang kemudian akan menghilang dengan sendirinya tanpa
interaksi dengan pengguna. Fokus juga tetap pada aplikasi dan tidak berpindah ke Toast. Kelebihan
Toast adalah mudah untuk dibuat, sedangkan kelemahannya adalah pengguna dapat saja tidak melihat
pesan yang dikandung Toast.
Untuk mencobanya, buat project baru, tambahkan satu button, beri label “Toast” dan kode berikut
adalah event saat button diklik:
AlertDialog
Jika yang diinginkan adalah dialog yang muncul dan harus ditutup secara manual oleh pengguna maka
dapat digunakan AlertDialog. AlertDialog dapat menampilkan tiga button.
Tambahkan button pada program sebelumnya, beri label “AlertDialog”. Tambahkan code berikut untuk
event onClick.
Selain setMessage dan setPositiveButton, dapat digunakan method setTitle, setIcon untuk mengeset
judul dan icon message dan SetNeutralButton (button tengah) dan SetNegativeButton (button kanan).
Berikut contohnya
Mobile
Programming
06
Ilmu Komputer Teknik Informatika 87036 Tim Dosen.
penerbit Modul
Abstract Kompetensi
Activity dan Intent
Dalam materi sebelumnya, selalu digunakan satu activity. Tentu saja sebuah applikasi sering
membutuhkan lebih dari satu activity. Activity adalah komponen terkecil penyusun Android App yang
berisi satu kegiatan yang dapat dilakukan oleh pengguna.
Untuk menghubungkan antar activity dapat digunakan intent. Intent adalah fasilitas untuk
menghubungkan satu activity ke activity yang lain, baik untuk app yang sama maupun app yang
berbeda. Intent juga digunakan untuk notifikasi event misalnya SD card dimasukkan, SMS masuk dan
lain-lain.
Untuk lebih memahami activity dan intent, sekarang coba buka salah satu app android yang telah dibuat
sebelumnya, lalu pada project explorer pilih AndroidManifest.xml. File XML ini berisi property aplikasi,
termasuk di dalamnya activity dan intent.
Lihat tag activity, dapat dilihat ada satu activity dengan property nama dan label.
Selain itu ada tag intent-filter yang digunakan untuk memfilter intent yang dapat dihandle activity.
android.intent.categori.LAUNCHER menyatakan activity ini adalah initial activity yang dapat dipanggil
langsung oleh launcher sedangkan intent.action.MAIN menyatakan activity ini adalah initial activity
tanpa data input dan tidak menghasilkan output.
Pertama buat project baru. Kemudian langsung buat activity kedua, caranya buat class baru: di project
explorer klik package, klik kanan New Class. Beri nama class ini ActivityDua dan pastikan
superclass kelas ini adalah android.app.Activity (gambar bawah)
Sekarang kita perlu menambahkan activity ini di AndroidManifest.xml. Isi atribut name dengan nama
class lengkap dengan nama package dan label.
Penting: Tanpa menambahkan activity ke dalam AndroidManifest.xml, akan terjadi force close saat
program dijalankan.
Dari kode diatas dapat dilihat bahwa intent merupakan struktur data (objek) yang ‘dilempar’ sebagai
paramater ke method startActivity.
Jika program dijalankan hasilnya akan seperti ini. Terlihat label pada ActivityDua yang disimpan di dalam
AndroidManifest.xml akan menjadi title.
Terlihat ActivityDua masih polos tanpa layout. Sekarang kita akan membuat layout untuk activity
tersebut. Ini mirip saat membuat layout baris pada ListView.
Untuk membuat file layout, pilih project di project explorer, klik kanan, AndroidTools New Resources
File. Pilih resource type “Layout”. Beri nama file activity_dua.xml, pilih root element LinearLayout
(gambar bawah)
Sekarang kita perlu meload layout ini saat activity kedua dijalankan. Buka class ActivityDua dan
tambahkan kode dibawah dan coba jalankan.
Pada MainActivity, ubah kode sebagai berikut, perhatikan method putExtra untuk menambahkan data
yang akan dikirim.
Sebagai contoh, kita akan membuat activity yang memanggil activity lain, pengguna mengisi data pada
activity tersebut dan mengirimkannya kembali ke activity utama. Kita akan memodifikasi program
sebelumnya.
Catatan: jika anda mau program sebelumnya tidak hilang anda dapat menduplikasi project dengan
mencopy-paste project tersebut pada package explorer.
Sekarang kita kembali ke activity utama MainActivity, gunakan method putExtra untuk menambahkan
data ke intent. Pada startActivityForResult terdapat parameter angka 99 (silahkan ganti dengan angka
atau konstanta apapun). Paremeter ini diperlukan karena satu activity bisa mengirimkan banyak intent
dan diperlukan cara untuk membedakan antara satu intent dengan intent yang lain.
Method onActivityResult akan dipanggil saat activity yang dipanggil telah selesai.
Sekarang kita akan membuat kode di activitydua yang akan mengisi editText dengan data yang dikirim
dari activity utama dan setelah button ditekan mengirimkan hasil update ke activity utama. Buka file
ActivityDua.java dan tambahkan kode berikut:
Menggunakan listview (layar1), tampilkan daftar nama mahasiswa. Pengguna dapat men-tap nama
(baris), dan kemudian app akan menampilkan informasi yang lebih detil berisi NIM, NAMA, ALAMAT dan
NOHP (layar2). Pada layar informasi detil (layar2) tersebut ada button “EDIT” yang jika diklik akan
membawa ke layar ketiga yang berisi editText untuk mengupdate data. Hasil update akan muncul baik di
layar1 dan layar2.
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
Layout di Android
07
Ilmu Komputer Teknik Informatika 87036 Tim Dosen.
penerbit Modul
Abstract Kompetensi
Memahami layout untuk penempatan Mahasiswa memahami dan mampu
objek dalam aplikasi android menggunakan layout untuk
membangun aplikasi android yang lebih
rapi.
Layout
Kategori komponen pertama adalah layout. Komponen - komponen di kategori ini menentukan
struktur visual untuk antarmuka pengguna, seperti Ul untuk activity atau widget. Mendeklarasikan
layout di XML juga memudahkan anda memvisualisaikan struktur dari antar muka.
Untuk meletakan komponen (view) pada layar, android menggunakan layout manager. Karena ukuran
layar device Android sangat beragam, tidak ada peletakan posisi widget secara eksak per pixel.
Terdapat empat jenis layout manager yang memiliki fungsi masing-masing. LinearLayout, TableLayout,
RelativeLayout dan FrameLayout. Berikut akan dibahas lebih rinci untuk setiap layout.
RelativeLayout
RelativeLayout mengatur posisi secara relatif berdasarkan posisi widget yang lain atau parentnya.
Sebagai contoh, dua widget pada gambar di bawah. EditText posisinya relatif terhadap textView nama.
Perhatikan penggunaan atribut layout_toRightOf yang menyatakan bahwa EditText berada disebelah
kanan label. Sedangkan atribut layout_baseLine digunakan agar TextView dan EditText aligned. Jika
layout_baseLine dihapus efeknya akan sebagai berikut (Text View terlalu tinggi posisinya):
Beberapa atribut lain yang mengatur posisi widget dibandingkan dengan widget lain adalah:
• android:layout_above
• android:layout_below
• android:layout_toLeftOf
Contoh jika kita ingin menambahkan button sehingga posisinya sebagai berikut:
Widget juga dapat diatur berdasarkan gravity android:layout_gravity ada beberapa pilihan untuk gravity
ini: left, right, center_horizontal, center_vertical, bottom, top. Gravity ini juga berlaku untuk layout
manager yang lain. Berikut adalah contohnya:
TableLayout
Untuk memilih layout manager, selain dengan cara manual dapat juga ditentukan membuat layout (File
New Other Android XML Layout File). Saat muncul dialog berikut, pilih Root Element sebagai
TableLayout.
Kolom 0 Kolom 1
Misalnya kita ingin agar EditText sampai ke bagian belakang, maka tambahkan
android:stretchColumns="1" pada TableLayout. Maka kolom 1 akan terisi penuh.
Untuk menambahkan widget di kolom terntentu, gunakan aandroid:layout_column. Misalnya kita akan
menambahkan TextView di kolom 1 (ingat kolom dimulai dari 0). Ini bisa dilakukan dengan
menggunakan atribut android:layout_column. Tanpa atribut ini, TextView akan muncul di kolom 0
Frame Layout
Framelayout digunakan untuk menampilkan satu komponen dalam satu layar. Jika ada lebih dari satu
widget, maka akan ditampilkan secara bertumpuk, walaupun posisi widget dapat diatur dengan gravity.
Kita bisa menambahkan layout lain sebagai child di dalam frame layout.
Contoh untuk deklarasi berikut menampilkan dua ImageView (pastikan file image telah disimpan di
direktori [project]/res/drawable-hdpi, [project]/res/drawable-ldpi dan [project]/res/drawable-mdpi )
Catatan: layout_weight adalah rasio antara view. Misalnya ada dua widget, widget pertama ukurannya
harus ¾ layar dan sisanya ¼ layar. Maka set layout_weight widget pertama dengan 3 dan widget kedua
dengan 1. Height atau widht perlu diset 0px.
TBD contohnya
LinearLayout
Sesuai dengan namanya, linear layout menyimpan widget dalam satu baris atau satu kolom (tergantung
orientasinya).
Berikut adalah contoh linear layout dengan satu textview dan satu button.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
ScrollView
Dengan scrollview, layout seolah-olah memiliki layar yang lebih luas. Pengguna dapat melakukan scroll.
Scrollview hanya mempunyai satu child dan umumnya adalah LinearLayout. Scrollview hanya dapat
melakukan vertical scrolling, gunakan HorizontalScrollView untuk layout yang dapat discroll secara
horizontal.
Jangan gunakan Listview bersama layout ini karena listview telah memiliki mekanisme scrolling
tersendiri.
Berikut adalah contoh scrollview yang menghasilkan layout seperti ini yang dapat discroll. Dua button
teratas menggunakan RelativeLayout yang disisipkan dalam ScrollView. Ini adalah contoh penggabungan
antara dua layout.
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scroller"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<LinearLayout
android:id="@+id/linearlayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
RelativeLayout didalam
LinearLayout. Didalamnya
<RelativeLayout ada dua button.
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/button1"
android:text="Button" />
</RelativeLayout>
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<Button
android:id="@+id/button6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
android:id="@+id/button7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<Button
android:id="@+id/button8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<Button
android:id="@+id/button9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<Button
android:id="@+id/button10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
</ScrollView>
Kombinasi Layout
Kita bisa mengkombinasikan beberapa layout dalam satu activity. Contoh berikut menggunakan
linearlayout yang memiliki dua anak yaitu relativelayout dan tablelayout.
TableLayout
dengan tiga kolom
dan tiga baris
Latihan Layout
Berdasarkan hasil latihan activity-intent, pada layar2 dan layar3, tambahkan layout
yang tepat agar tampilan widget rapi.
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
Aplikasi Map
08
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
2. Karena kita akan menggunakan library Google Maps yang bukan library standar
Android, maka kita harus mendeklarasikan library tersebut dalam
AndroidManifest.xml sebagai child element dari elemen <application>.
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
SMS
09
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
Bisa dilihat, kode di atas sangatlah simple, kita hanya perlu memanggil satu method
sendTextMessage(), dan kemudian memberikan parameter berupa nomor telepon
Dengan menggunakan Intent SENDTO, kita akan mengirim SMS menggunakan aplikasi
eksternal. Apabila terdapat lebih dari 1 aplikasi SMS pada handphone (misal, Hangouts,
SMS), maka kita akan diberikan pilihan aplikasi yang digunakan untuk mengirim SMS.
Namun apabila hanya ada satu aplikasi SMS di HP, maka kita akan langsung masuk ke
default SMS aplikasi di Android dan mengirim SMS dari sana
3. Menggunakan VIEW Intent
Cara yang ketiga adalah menggunakan VIEW Intent, hampir sama dengan cara nomor 2.
Hanya saja dengan menggunakan View Intent kita akan langsung diarahkan ke aplikasi
SMS default kepunyaan Android, dan kemudian mengirim SMS dari situ.
01 public void sendSmsByVIntent() {
02
03 Intent smsVIntent = new Intent(Intent.ACTION_VIEW);
04 // hanya akan membuka aplikasi SMS/MMS default di Android
05 smsVIntent.setType("vnd.android-dir/mms-sms");
06
07 // menambahkan nomor telepon dan isi SMS otomatis
Praktikum
Untuk contoh aplikasinya, kita bisa memulai dengan membuat project Android di Android
Studio terlebih dahulu. Kemudian pada kelas MainActivity.java atau kelas utama di project
kalian, replace dengan kode berikut:
001 package id.web.twoh.smssampleapp;
002
003 import android.app.Activity;
import android.content.Intent;
004
import android.net.Uri;
005
import android.os.Bundle;
006 import android.telephony.SmsManager;
007 import android.view.View;
008 import android.view.View.OnClickListener;
009 import android.widget.Button;
010 import android.widget.EditText;
011 import android.widget.Toast;
012
013 public class MainActivity extends Activity {
014
015 private EditText phoneNumber;
016 private EditText smsBody;
017 private Button smsManagerBtn;
018 private Button smsSendToBtn;
019 private Button smsViewBtn;
020
021 @Override
022 public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
023
setContentView(R.layout.activity_main);
024
025 phoneNumber = (EditText) findViewById(R.id.phoneNumber);
026 smsBody = (EditText) findViewById(R.id.smsBody);
027 smsManagerBtn = (Button) findViewById(R.id.smsManager);
028 smsSendToBtn = (Button) findViewById(R.id.smsSIntent);
029 smsViewBtn = (Button) findViewById(R.id.smsVIntent);
030
031 smsManagerBtn.setOnClickListener(new OnClickListener() {
2012 Mobile Programming Pusat Bahan Ajar dan eLearning
4 Tim Dosen. http://www.mercubuana.ac.id
032 public void onClick(View view) {
033 sendSmsByManager();
034 }
035 });
036
037 smsSendToBtn.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
038
sendSmsBySIntent();
039
}
040 });
041
042 smsViewBtn.setOnClickListener(new OnClickListener() {
043 public void onClick(View view) {
044 sendSmsByVIntent();
045 }
046 });
047
048 }
049
050 public void sendSmsByManager() {
051 try {
052 // Get the default instance of the SmsManager
053 SmsManager smsManager = SmsManager.getDefault();
054 smsManager.sendTextMessage(phoneNumber.getText().toString(),
055 null,
smsBody.getText().toString(),
056
null,
057
null);
058 Toast.makeText(getApplicationContext(), "SMS Berhasil Dikirim!",
059 Toast.LENGTH_LONG).show();
060 } catch (Exception ex) {
061 Toast.makeText(getApplicationContext(),"Pengiriman SMS Gagal...",
062 Toast.LENGTH_LONG).show();
063 ex.printStackTrace();
064 }
065 }
066
067 public void sendSmsBySIntent() {
068 // add the phone number in the data
069 Uri uri = Uri.parse("smsto:" + phoneNumber.getText().toString());
070
071 Intent smsSIntent = new Intent(Intent.ACTION_SENDTO, uri);
072 // add the message at the sms_body extra field
073 smsSIntent.putExtra("sms_body", smsBody.getText().toString());
try{
074
startActivity(smsSIntent);
075 } catch (Exception ex) {
076 Toast.makeText(MainActivity.this, "Pengiriman SMS Gagal...",
077 Toast.LENGTH_LONG).show();
078 ex.printStackTrace();
079 }
080 }
081
082 public void sendSmsByVIntent() {
083
084 Intent smsVIntent = new Intent(Intent.ACTION_VIEW);
2012 Mobile Programming Pusat Bahan Ajar dan eLearning
5 Tim Dosen. http://www.mercubuana.ac.id
085 // hanya akan membuka aplikasi SMS/MMS default di Android
086 smsVIntent.setType("vnd.android-dir/mms-sms");
087
088 // menambahkan nomor telepon dan isi SMS otomatis
089 smsVIntent.putExtra("address", phoneNumber.getText().toString());
090 smsVIntent.putExtra("sms_body", smsBody.getText().toString());
try{
091
startActivity(smsVIntent);
092
} catch (Exception ex) {
093 Toast.makeText(MainActivity.this, "Pengiriman SMS Gagal...",
094 Toast.LENGTH_LONG).show();
095 ex.printStackTrace();
096 }
097
098 }
099 }
100
101
102
103
104
105
Kalian bisa mengganti nama package-nya sesuai dengan nama package pada aplikasi kalian.
Setelah itu, untuk layout-nya masukkan kode berikut pada file activity_main.xml :
01 <?xml version="1.0" encoding="utf-8"?>
02 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
03 android:id="@+id/linearLayout1"
04 android:layout_width="fill_parent"
05 android:layout_height="fill_parent"
06 android:background="@drawable/bg_main"
07 android:orientation="vertical" >
08
09 <TextView
10 android:id="@+id/text"
11 android:layout_width="fill_parent"
android:layout_height="wrap_content"
12
android:text="Lengkapi isian di bawah untuk mengirim SMS"
13 android:textAppearance="?android:attr/textAppearanceMedium" />
14
15 <EditText
16 android:id="@+id/phoneNumber"
17 android:layout_width="fill_parent"
18 android:layout_height="wrap_content"
19 android:ems="10"
20 android:hint="contoh: 082132312123"
21 android:inputType="phone" />
22
23 <EditText
24 android:id="@+id/smsBody"
25 android:layout_width="fill_parent"
26 android:layout_height="80dp"
27 android:layout_marginBottom="30dp"
2012 Mobile Programming Pusat Bahan Ajar dan eLearning
6 Tim Dosen. http://www.mercubuana.ac.id
28 android:hint="Isi SMS..." />
29
30 <Button
31 android:id="@+id/smsManager"
32 android:layout_width="fill_parent"
33 android:layout_height="wrap_content"
android:text="Kirim SMS lewat SMS Manager" />
34
35
<Button
36
android:id="@+id/smsSIntent"
37 android:layout_width="fill_parent"
38 android:layout_height="wrap_content"
39 android:text="Kirim SMS lewat SENDTO" />
40
41 <Button
42 android:id="@+id/smsVIntent"
43 android:layout_width="fill_parent"
44 android:layout_height="wrap_content"
45 android:text="Kirim SMS lewat VIEW" />
46
47 </LinearLayout>
48
49
Yang terakhir, jangan lupa menambahkan permission berikut pada Android Manifest.
1 <uses-permission android:name="android.permission.SEND_SMS" />
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
SQLite Database
10
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
2. SQLiteOpenHelper
SQLiteOpenHelper adalah subclass yang memiliki beberapa method seperti
• onCreate() dijalankan jika sebelumnya belum ada database
• onUpgrade() dijalankan jika sebelumnya sudah ditemukan database yang
sama namun beda versi. Method ini bisa dimanfaatkan untuk mengubah
skema database.
• onOpen() dijalankan jika database sudah dalam keadaan open
• getWritableDatabase() memanggil database agar bisa dimasuki data
• getReadableDatabase() memanggil database agar bisa membaca datanya
3. Cursor
Membuat database
Kita akan membuat database hobi seseorang. Data dimasukkan melalui 2 buah edittext,
kemudian tombol add dipakai untuk menyimpan data kedalam database sekaligus
mengupdate tabel jika data berhasil disimpan.
Method ambilSemuaBaris digunakan untuk membaca seluruh isi database. Data yang
terbaca kemudian disimpan kedalam array bertingkat. Output dari method ini adalah data
[_id,nama,hobi].
Pada method simpKamuta(), kita memakai method addRow() milik class DatabaseManager
untuk menambahkan data ke dalam database. Sedangkan didalam method updateTable()
kita memanggil method ambilSemuaBaris()untuk menampilkan data ke tabel. Method
kosongkanField() dipakai untuk mengosongkan editteks kembali.
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
SQLite Database Lanjutan
11
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
5. Setelah selesai membuat layoutnya kini mengisi kode untuk menjalankannya. Buat
class baru beri nama SQLHelper.java isikan code berikut. Code ini membuat
databse dan table.
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
Android, PHP dan MySQL
12
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
Membuat aplikasi android dengan PHP Mahasiswa mampu membuat aplikasi
dan MySQL android dengan PHP dan MySQL
Latihan
Buat Tabel baru di database MySQL Perpustakaan:
NAMA TABEL : BUKU
kodepetugas nama
P01 Akhdan
P02 Zaafarani
P03 Azzam
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
CRUD Android, PHP dan MySQL
13
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
Membuat aplikasi android dengan PHP Mahasiswa mampu membuat aplikasi
dan MySQL android dengan PHP dan MySQL
Berfungsi sebagai script untu membuat koneksi kedatabase sehingga untuk setiap php
yang ingin connect database cukup dengan mengincludekan file ini.
b. list_phone.php
berfungsi untuk mendapatkan data dari table tbl_phone untuk ditampilkan dalam
listview di android.
Berfungsi untuk menyimpan data kedatabase termasuk memasukkan data abaru atau
mengupdate nilai dari data yang lama
d. delete_phone.php
e. index.php
4. Buat NewProject dengan nama “HargaHPOnline”, dan beri package name nya : net.
agusharyanto.hargahponline
5. Buat Package net.agusharyanto.hargahponline.model, didalam package tersebut
buatlah class Handphone.java untuk Object Handphone
6. Lalu pada class tersebut ketikan code berikut package net.agusharyanto.hargahponline
9. Buat layout baru dengan nama list_row.xml lalu ketikan kode berikut
layout ini digunakan untuk menggambar data yang akan ditampilkan di listview
2012 Mobile Programming Pusat Bahan Ajar dan eLearning
10 Tim Dosen. http://www.mercubuana.ac.id
10. Buat Package net.agusharyanto.hargahponline.adapter lalu pada package tersebut
buat class ListAdapaterHandphone.java
c. form_handphone.xml
14. Pada directory res buat layout baru dengan nama activity_detail_handphone.xml
Untuk menambah data bisa sentuh tombol Add pada Action Bar.Untuk Cari data sentuh
tombol search pada Action Bar.Untuk Edit / Delete data bisa sentuh salah satu baris
daftar handphone.
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.
Mobile
Programming
REVIEW MATERI DAN TUGAS
14
Ilmu Komputer Teknik Informatika [kode] Tim Dosen.
penerbit Modul
Abstract Kompetensi
Membuat aplikasi android dengan PHP Mahasiswa mampu membuat aplikasi
dan MySQL android dengan PHP dan MySQL
Tugas
Buat aplikasi database berbasis android dengan tema :
1. Aplikasi akademik
2. Aplikasi perpustakaan
3. Aplikasi Online Shop
4. Aplikasi Rental Mobil
5. Dll
2. Burd, B. (2012). Android Application Development All-in-One For Dummies. For Dummies.