Pada artikel sebelumnya sudah dijelaskan tentang persiapan yang diperlukan untuk membuat aplikasi android dan menambahkan library volley untuk mengambil data dari database MySQL. Silahkan teman-teman yang belum mengetahui cara dan persiapannya bisa mempelajarinya terlebih dahulu di link berikut
Tutorial Pembuatan Aplikasi Android Menggunakan Volley Library
Pada tutorial kai kali ini saya akan mencoba membuat aplikasi android untuk menampilkan spesifikasi handphone. Data handphone telah tersimpan di database MySQL dan untuk mengirimkannya ke aplikasi android menggunakan file PHP sebagai server. Nantinya data yang ada di MySQL diambil oleh file PHP kemudian diolah menjadi bentuk JSON, nah JSON ini yang akan diambil oleh aplikasi kemudian diolah dan ditampilkan di layar aplikasi. Saya kira alurnya seperti itu gan, saya agak bingung ya 😅 tenang dan renungkan sendiri
Oke mari kita buat aplikasi android kita, langkah-langkahnya adalah sebagai berikut
Persiapkan Databasenya
Untuk data yang akan kita simpan di database MySQL, silahkan install aplikasi web server seperti XAMPP dan aplikasi sejenis. Jika anda sudah membuat database dengan nama app_blogvolley, maka buatlah tabel baru dengan nama hape, untuk strukturnya sebagai berikut
Jika database sudah ada, sekarang di folder htdocs, buat folder baru dengan nama app_blogvolley, lalu tambahkan folder baru dengan nama img di dalamnya
Agar dapat terkoneksi ke database, kita buat file php sebagai koneksi utama, untuk membuatnya silahkan buka aplikasi text editor dan buat file baru dengan nama koneksi tersebut. php. Untuk kodenya sebagai berikut
Setelah bisa terkoneksi ke database, sekarang kita sudah bisa mengambil data dari database menggunakan file yang berisi query untuk menampilkan datanya, silahkan buat file baru dengan nama getdata. php dan salin kodenya sebagai berikut
_Nah, sekarang simpan semua file tersebut, kemudian buka aplikasi browser sobat dan coba akses file getdata tersebut. php yang baru saja dibuat. Kurang lebih jika diakses hasilnya akan seperti berikut
Buat Proyek Baru
Silahkan buat project baru dengan nama volley, untuk jenis aktivitas pilih aktivitas yang kosong
Menginstal Perpustakaan
Untuk mengambil data dari server, kita memerlukan library bernama Volley, untuk menggunakannya kita harus menginstall library tersebut di file build. grandle
Selanjutnya kita akan menampilkan gambar dari database ke dalam komponen ImageView aplikasi. Karena gambar yang akan kita tampilkan berasal dari server atau url, maka kita membutuhkan library sebagai penampil gambar [Image Loader]. Disini kita akan menggunakan library sebagai pemuat gambar yaitu library Glide. Untuk lebih lengkapnya tentang Glide, Anda bisa membacanya di link berikut
Pustaka Meluncur
Setelah saya searching, saya menemukan library yang merupakan gabungan dari volley dan glide. Library ini dapat digunakan seperti library biasa, silahkan install library tersebut di build. grandle [Proyek], kodenya adalah sebagai berikut
compile 'com.github.bumptech.glide:volley-integration:1.4.0'
Setelah menambahkan library, jangan lupa pilih Sync Now untuk menyinkronkan project
Membuat Tampilan
Untuk tampilan nanti akan kami tampilkan gambar dan spesifikasinya. Nah untuk membuatnya silahkan masuk ke file activity_main. xml tambahkan satu komponen ImageView dan tiga komponen TextView, untuk kode speerti berikut
Membuat Logika Java
Setelah membuat tampilan, selanjutnya buat logika program pada file java. Buka file MainActivity. java, kemudian buat kodenya sebagai berikut
package com.aji.voley1;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import com.bumptech.glide.Glide;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
public class MainActivity extends AppCompatActivity {
private ImageView imghp;
private TextView txtmerk, txttipe, txtketerangan;
private RequestQueue requestQueue;
private StringRequest stringRequest;
ArrayList list_data;
@Override
protected void onCreate[Bundle savedInstanceState] {
super.onCreate[savedInstanceState];
setContentView[R.layout.activity_main];
String url = "//192.168.95.91/app_blogvolley/getdata.php";
imghp = [ImageView]findViewById[R.id.imghp];
txtmerk = [TextView]findViewById[R.id.txtmerk];
txttipe = [TextView]findViewById[R.id.txttipe];
txtketerangan = [TextView]findViewById[R.id.txtketerangan];
requestQueue = Volley.newRequestQueue[MainActivity.this];
list_data = new ArrayList[];
stringRequest = new StringRequest[Request.Method.GET, url, new Response.Listener[] {
@Override
public void onResponse[String response] {
try {
JSONObject jsonObject = new JSONObject[response];
JSONArray jsonArray = jsonObject.getJSONArray["handphone"];
for [int a = 0; a < jsonArray.length[]; a ++]{
JSONObject json = jsonArray.getJSONObject[a];
HashMap map = new HashMap[];
map.put["id", json.getString["idhp"]];
map.put["merk", json.getString["merk"]];
map.put["tipe", json.getString["tipe"]];
map.put["gambar", json.getString["gambar"]];
map.put["keterangan", json.getString["keterangan"]];
list_data.add[map];
}
Glide.with[getApplicationContext[]]
.load["//192.168.95.91/app_blogvolley/img/" + list_data.get[0].get["gambar"]]
.crossFade[]
.placeholder[R.mipmap.ic_launcher]
.into[imghp];
txtmerk.setText[list_data.get[0].get["merk"]];
txttipe.setText[list_data.get[0].get["tipe"]];
txtketerangan.setText[list_data.get[0].get["keterangan"]];
} catch [JSONException e] {
e.printStackTrace[];
}
}
}, new Response.ErrorListener[] {
@Override
public void onErrorResponse[VolleyError error] {
Toast.makeText[MainActivity.this, error.getMessage[], Toast.LENGTH_SHORT].show[];
}
}];
requestQueue.add[stringRequest];
}
}
_Pada kode di atas, terlebih dahulu kita mendeklarasikan variabel dari masing-masing komponen yang akan digunakan. Kemudian pada metode onCreate, kita menginisialisasi variabel yang telah dideklarasikan. Selanjutnya buat metode untuk mengambil data pada StringRequest dengan memasukkan url atau alamat server
Akan ada 2 metode lagi didalamnya yaitu onRespon dan Error. Pendengar. Pada metode onRespon, aplikasi akan mengambil data berupa json kemudian disimpan pada variabel response, kemudian dimasukkan ke dalam JSONObject dan di-parse menggunakan JSONArray. Data yang telah disimpan diambil berdasarkan field dan index dengan perulangan for, kemudian masing-masing data disortir dan dimasukkan ke dalam HashMap kemudian ke dalam ArrayList
Baca Juga "Membuat Notifikasi Aplikasi Android di Android Studio"
Setelah data dimasukkan ke dalam ArrayList, data dapat diambil dan kemudian ditampilkan ke setiap komponen. Pada metode Kesalahan. Listener kita bisa menampilkan perintah ketika terjadi error, disini saya membuat toast yang menampilkan teks error tersebut
Pemberian Izin Akses Internet
Agar aplikasi bisa mengambil data pada server, aplikasi membutuhkan izin utnuk mengakses internet. Untuk menambahkanya, silahkan buka AndroidManifest.xml dan tambahkan kode di bawah ini tepat di atas tag
Jalankan programnya
Jika semuanya sudah selesai, kini aplikasi sudah bisa dijalankan dengan memilih Run-app. Tampilan aplikasinya kira-kira akan seperti ini gan 👇👇
Nah seperti itu gan cara mengambil data dari database ke dalam aplikasi android cukup mudah bukan. Sekian artikel kali ini, semoga membantu dan bermanfaat. Silakan bagikan artikel ini jika Anda menyukai artikel ini. Anda juga bisa memberikan kritik, saran atau mengajukan pertanyaan dengan mengisi kolom komentar di bawah ini. Sampai jumpa di artikel selanjutnya. 😁
Tutorial lebih lanjut "Menampilkan Banyak Data MySQL dengan RecyclerView menggunakan Volley Library"
- Menciak
- Membagikan
- Membagikan
- Membagikan
- Membagikan
Tentang Aji Setya
Ingin berbagi ilmu yang telah dipelajari dan dimiliki sehingga bisa menjadi ilmu yang bermanfaat bagi orang lain. Teruslah belajar dan berbagi