Posting kali ini, kita mencoba membuat aplikasi client server berbasis Android dan menghubungkan dengan database MySQL. Client-server ? Ya…. Kita akan membuat aplikasi Android yang datanya akan disimpan pada sebuah server. Bisa local (localhost) atau di internet.
Mengapa kita harus menympan data di database, bukankah di Android memiliki database untuk menyimpan data ?. Sebenarnya Android memiliki fasilitas untuk menyimpan data yaitu:
Shared preferences. Terdiri dari key dan value data. Model ini biasanya untuk menyimpan settingan (pengaturan) sebuah aplikasi.
File. Fasilitas ini juga dapat menyimpan data sama halnya dengan Shared Preferences, hanya saja data disimpan ke dalam bentuk file. Misalnya: txt, xml atau bentuk file lainnya
SQLite Database. Fasilitas ini cukup idel untuk menyimpan data yang lumayan banyak. Berbeda halnya dengan no 1 dan 2 di atas yang biasanya untuk menyimpan data yang sedikit seperti pengaturan. Dengan SQLite, kita dapat melakukan query dan table-table seperti halnya database pada umumnya.
Ketiga fasilitas di atas menyimpan data pada ponsel pengguna (client). Nah, bagaimana jika ingin data itu selalu update dan dapat mengaksesnya siapa saja dan dimana saja (anyone, anytime and anywhere)?. Itulah alasanya mengapa kita memerlukan sebuah server dalam hal ini MySQL.
Jadi, akan ada tiga hal yang harus kita lakukan:
OK….. langsung saja
1. Membuat database MySQL
Database: latihan_android
Table: mahasiswa (id, nim, nama, telp, alamat)
2. Membuat script PHP
Database sudah selesai, selanjutnya adalah membuat script server side. Koq kita butuh script server side, Kita kan belajar Android (Java) ? … Sebenarnya Android tidak dapat berkomunikasi langsung dengan MySQL untuk memanipulasi database. Untuk itu, kita membutuhkan script server side misalnya ASP, JSP atau PHP untuk bisa menjadi “jembatan” antara Android dengan MySQL. Jadi, Android hanya memberika perintah (request) ke PHP dan PHP lah yang akan melaksanakan query ke MySQL.
Pada posting ini, kita membuat 5 (lima) file PHP.
1. index.php : sebagai file index dan hanya berisi HTML
2. connection.php: sebagai file koneksi ke database
3. select_all.php: untuk melakukan query select all, mengabil seluruh data dari table Mahasiswa
4. submit_mahasiswa.php : untuk memproses simpan dan update
5. delete_mahasiswa.php: untuk menghapus (delete) data mahasiswa
Semua file di atas diletakkan dalam direktori “android”. c:/xampp/htdocs/android. (sesuaikan dengan direktori server Anda).
Script PHP sudah selesai dan selanjutnya membuat aplikasi inti yaitu Android. Ada baiknya, sebelum membuat aplikasi android, kita test dulu apakah script PHP sudah bisa diakses dari emulator.
a. Membuat object Mahasiswa
Yang pertama kita lakukan adalah membuat object Mahasiswa. Yha…. Mahasiswa, karena table yang dibuat sebelumnya adalah mahasiswa. Class Mahasiswa sangat membantu kita memanipulasi object. Salah satunya adalah konsep Object Relational Mapping (ORM) yang menggunakan object yang sama untuk memetakan table pada database.
b. Membuat class ServerRequest
Class ini akan kita gunakan berkomunikasi / melakukan request ke server. Pada class ini, kita membuat dua buah request, yaitu GET dan POST.
MainActivity akan kita gunakan untuk menampilkan ListView nama mahasiswa dan NIM. Seperti berikut:
ListView
c. Ubah layout activity_main.xml
d. Tambahkan layout baru list_row.xml
Layout ini adalah custom ListView agar dapat menampilhan Nama dan NIM mahasiswa dalam ListView.
e. Membuat List Adapter
Untuk menampilkan custom ListView, kita membutuhkan sebuah adapter yang inherit kepada BaseAdapter. ListAdapterMahasiswa juga meng-implements Filterable yang berguna saat melakukan pencarian.
f. Edit MainActivity.java
MainActivity adalah class utama memiliki fitur:
– Menampilkan custom ListView
– Memiliki Option Menu yang ditampilkan pada Action Bar (Search dan New)
– Search View untuk melakukan filter (pencarian)
– ListView yang dapat diklik (clickable ListView)
– ListView yang dapat di long-click. Long clik akan menampilkan Contextual Action Bar (CAB) untuk Edit dan Delete.
Pada saat MainActivity dijalankan, Activity akan melakukan request ke server melalui AsyncTask.
Response JSON ini akan diproses sesuai dengan object nya. Berdasarkan response JSON di atas, terlihat bahwa object JSON terdiri dari “mahasiswa”. Dan “mahasiswa” memiliki JSON Array.
g. Membuat Form Mahasiswa
Buatlah sebuah activity (FormMahasiswa.java) dengan layout activity_form_mahasiswa.xml. Layout ini terdiri dari TextView dan EditText untuk input data Mahasiswa (nama, nim, telp dan alamat). Form Mahasiswa kita gunakan untuk insert dan delete.
h. Membuat Detail Mahasiswa
Detail Mahasiswa berfungsi untuk menampilkan data lengkap. Karena pada ListView yang ditampilkan hanya NIM dan Nama.
Berikut adalah screenshot aplikasinya:
Main ActivityShow Contextual Action Bar (CAD) on long-press List ViewForm MahasiswaDetail MahasiswaDelete Confirmation
0 komentar: