Nama : Wira Dwi Susanto
NIM : 17.01.53.0053
Kelas : C1
Mata Kuliah : Web Service
Modul Implementasi
Web Service Berbasis REST API ke Android Studio & Web Rest Client
A. Persiapan
2.
Aplikasi Android Studio untuk
menjalankan sisi Rest Client. Pastikan sudah diinstal komponen penting lainnya,
seperti Gradle, SDK, NDK, JDK yang terupdate agar berjalan lancar.
3.
Sudah menginstal emulator Android agar dapat
menjalankan APK nantinya. Emulator dapat didownload dan diinstal di menu Tools
-> AVD Manager.
4.
Download
source code modul PHP dan modul
Android melalui link di bawah ini.
Contohnya, di sini adalah program pemesanan makanan dan minuman untuk restoran.
B. Langkah-langkah
Membuat REST API
1.
Silakan login ke hosting Anda. Di
sini, menggunakan layanan hosting gratis 000webhost untuk percobaan ini. Untuk login 000webhost, silakan akses di:
2.
Anda akan diarahkan ke halaman ini.
3.
Silakan buat situs baru dengan klik “Buat
Situs Baru”.
4.
Isikan data-data yang diperlukan dan
tunggu proses pembuatan situs selesai.
5.
Klik “Kelola Website” untuk mengatur
website Anda.
6.
Buatlah database baru dengan cara masuk ke Tools -> Database Manager.
7.
Untuk membuat database baru, klik “Database Baru”.
8.
Isilah bagian field yang ada. Harap catat nama, username, dan password database yang berhasil dibuat karena
nantinya akan diperlukan saat koneksi database
menggunakan PHP & MySQL.
9.
Kemudian saatnya mengimport database
melalui PhpMyAdmin. Caranya klik Kelola -> PhpMyAdmin.
10. Klik
pada database Anda yang telah dibuat tadi.
11. Cari
file restoran.sql dari source code
web service modul PHP yang telah Anda download
di Github tadi.
12. Tunggu
import database selesai.
13. Waktunya
import file PHP ke hosting.
Pertama-tama, silakan zip terlebih dahulu.
14. Upload file
zip ke file manager di hosting Anda. Kemudian masuk ke folder
public_html.
15. Buatlah
folder baru. Di sini, contohnya “web_service”
tanpa tanda kutip.
16. Masuk
ke folder web_service di public_html. Klik upload files dan carilah file
zip tadi.
17. Tunggu
upload selesai. Jika sudah, klik
kanan file zip yang ter-upload, kemudian extract.
18. Edit
file koneksi.php. Edit bagian nama, username, dan password database.
Sesuaikan seperti gambar di bawah ini.
19. Klik
“Save & Close”.
20. Di
luar folder public_html. Silakan buat file
.htaccess jika belum ada. Masukkan kode di bawah ini untuk mengizinkan CORS di web server. Kemudian klik “Save &
Close”.
21. Sampai
di sini implementasi REST API ke hosting
telah selesai. Saatnya melakukan pengujian. Terdapat dua methods pengiriman request
HTTP di sini, yaitu GET dan POST. GET biasa digunakan untuk mengambil resource data dari server, sedangkan POST biasa digunakan untuk mengirimkan data ke server tanpa menampilkan query pada URL. Data yang ditampung pada
metod POST ditempatkan di Request Body
atau dapat juga disebut dengan Payload.
* Contoh pengujian endpoint login user dengan CURL di PHP:
POST https://wirawebservice.000webhostapp.com/web_service/login.php
<?php
$payload =
"username=www3&password=www";
$url =
"https://wirawebservice.000webhostapp.com/web_service/login.php";
$ch1 = curl_init($url);
curl_setopt($ch1,
CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch1,
CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch1,
CURLOPT_POST, 1);
curl_setopt($ch1,
CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch1,
CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch1,
CURLOPT_FOLLOWLOCATION, 1);
//curl_setopt($ch1,
CURLOPT_HEADER, 1);
curl_setopt($ch1,
CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
$result =
curl_exec($ch1);
echo $result;
curl_close($ch1);
?>
Jika sukses, maka akan
menghasilkan output response “success”.
* Contoh pengujian endpoint get all makanan dengan CURL di PHP:
GET https://wirawebservice.000webhostapp.com/web_service/Makanan/get_all_makanan.php
<?php
$url =
"https://wirawebservice.000webhostapp.com/web_service/Makanan/get_all_makanan.php";
$ch1 = curl_init($url);
curl_setopt($ch1, CURLOPT_SSL_VERIFYHOST,
0);
curl_setopt($ch1,
CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch1,
CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch1,
CURLOPT_FOLLOWLOCATION, 1);
//curl_setopt($ch1, CURLOPT_HEADER, 1);
curl_setopt($ch1, CURLOPT_HTTPHEADER,
array('Content-Type: application/x-www-form-urlencoded'));
$result = curl_exec($ch1);
echo $result;
curl_close($ch1);
?>
Jika sukses, maka akan menghasilkan output response seperti gambar di bawah
ini.
C. Langkah-langkah Implementasi REST API ke Web REST Client
- Buat folder baru di hosting Anda tepatnya di dalam public_html, di sini contohnya restoran.
- Upload semua file yang Anda download tadi di poin A ke dalam folder restoran.
- Ganti masing-masing endpoint url pada setiap file HTML yang ada sesuai endpoint REST API yang telah Anda buat di poin B di atas.
- Sekedar informasi bahwa Request HTTP untuk masing-masing endpoint url dibuat menggunakan JQuery Ajax pada source code tersebut. Lalu bagaimana cara mencobanya?
- Silakan akses domain hosting Anda dan directory-nya. Misalnya, di sini menggunakan 000webhost, maka seperti berikut: https://wirawebservice.000webhostapp.com/restoran
- Selesai.
D. Langkah-langkah Implementasi REST API ke REST Client ke Android Studio
1. Import source code
Android Studio dengan cara klik File -> Open.
2. Carilah
di mana Anda menaruh source code
tersebut -> Arahkan ke App -> lalu OK
3. Pada
masing-masing file Java. Silakan
ganti masing-masing Endpoint REST API
seperti gambar contoh di bawah ini.
4. Jika
semuanya sudah dirasa benar. Klik File -> Save All.
5. Lakukan
pengujian dengan klik Run -> Run ‘app’. Pastikan Anda telah menginstal Emulator. Di sini, sebagai contoh
menggunakan API 29 (Android 10).
6. Sekarang
jika semua sudah benar. Waktunya Build
menjadi APK. Caranya klik Build -> Generate Signed Bundle / APK.
7. Centang
APK lalu Next.
8. Jika
belum mempunyai key, silakan Create New. Pada bagian keystore dan key tidak boleh sama (dan minimal 6 karakter). Lalu OK.
9. Pastikan
key store dan key password sudah benar. Lalu klik Next.
10. Pilih
“release”. Pada signature versions,
silakan centang semuanya. Lalu Finish.
11. Tunggu
proses build sukses. Jika sukses,
maka akan tampil notifikasi seperti di bawah ini.
12. Klik
Locate, maka Anda akan diarahkan ke folder “release” di Windows Explorer.
13. Sekarang
cobalah APK-nya di perangkat smartphone Android.
E.
Hasil Coba APK di Smarthone Android.