SlideShare a Scribd company logo
1 of 10
Download to read offline
Belajar Android PHP MySQL Login dengan Volley
Agus Haryanto
agus.superwriter@gmail.com
http://agusharyanto.net
Anda adalah pengguna Aplikasi Android seperti Gojek, Lazada. kalau ia tentunya untuk
menggunakan aplikasi tersebut anda harus mendaftar dulu dan kemudian Login untuk
menggunakan aplikasi tersebut. Tidak hanya Gojek aplikasi facebook, instagram, traveloka pun ada
proses loginnya. Yang suka belanja online dengan Aplikasi Lazada, TokoPedia, Bli,bli, elevenia,
buka lapak mengharuskan anda untuk login agar bisa bertransaksi.
Jadi timbul pertanyaan nih, kenapa harus pakai login ?. Silahkan dijawab adik-adik mahasiswaku
yang pintar-pintar, cantik dan ganteng, serta menjadi kebanggaan orang tua.
Buat yang penasaran ingin tahu pembuatan Aplikasi android yang ada loginnya. Anda berada
ditempat yang tepat karena materi belajar android kita kali ini akan membahas tentang Login
dengan Volley tentu saja disisi servernya mengguanakan Apache sebagai webservernya, php sebagai
server side scriptnya dan MySQL sebagai databasenya. Untuk itu pastikan di PC atau laptop anda
sudah terinstall semuanya.
Persiapan disisi Server
1. Pertama buka phpmyadmin lalu buat database dengan nama “dbcourse”
2. Pilih “dbcourse” lalu buat table dengan nama “users”
CREATE TABLE IF NOT EXISTS `users` (
`id` int(4) NOT NULL,
`username` varchar(32) NOT NULL,
`password` varchar(64) NOT NULL,
`email` varchar(32) NOT NULL,
`accountname` varchar(32) NOT NULL,
`status` int(4) NOT NULL DEFAULT '1'
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
ALTER TABLE `users`
ADD PRIMARY KEY (`id`);
INSERT INTO `users` (`id`, `username`, `password`, `email`, `accountname`, `status`) VALUES
(1, 'admin', 'abcd1234', 'admin@agusharyanto.net', 'Admin', 1);
3. Buat script php untuk login simpan dengan nama “login.php”
<?php
define('HOST','localhost');
define('USER','root');
define('PASS','');
define('DB','dbcourse');
$con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect');
if($_SERVER['REQUEST_METHOD']=='POST'){
//Getting values
$username = $_POST['email'];
$password = $_POST['password'];
//Creating sql query
$sql = "SELECT * FROM users WHERE email='$username' AND password='$password'";
//executing query
$result = mysqli_query($con,$sql);
//fetching result
$check = mysqli_fetch_array($result);
//if we got some result
if(isset($check)){
//displaying success
echo "success";
}else{
//displaying failure
echo "failure";
}
mysqli_close($con);
}
?>
Pengerjaan disisi Android
1. Sekarang mari kita buat project dengan nama “LoginWithVolley”
2. Klik Next lalu pada pilihan Activity pilih “EmptyActivity”
Klik Next sampai Finish. Setelah finish maka otomatis project terbuat.
3. Selanjutnya kita tambahkan library Volley pada dependencies bulid.gradle (modul:app).
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.0'
compile 'com.android.support:design:23.2.0'
compile 'com.mcxiaoke.volley:library-aar:1.0.0'
}
Library Volley ini membantu kita dalam urusan komunikasi ke server. Sebelumnya kita perlu
membuat Assynctask untuk komunikasi ke server. Dengan Volley tidak lagi karena sudah diurus
oleh Volley.
4. Sekarang kita urus layout untuk loginnya, untuk itu buka activity_main.xml lalu ketikkan kode
berikut
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="net.agusharyanto.loginwithvolley.MainActivity">
<ImageView
android:background="@mipmap/ic_launcher"
android:layout_gravity="center_horizontal"
android:layout_width="150dp"
android:layout_height="150dp" />
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp">
<EditText android:id="@+id/editTextEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:hint="Email" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp">
<EditText android:id="@+id/editTextPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="Password"/>
</android.support.design.widget.TextInputLayout>
<android.support.v7.widget.AppCompatButton
android:id="@+id/buttonLogin"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:textColor="@android:color/white"
android:layout_marginTop="24dp"
android:layout_marginBottom="24dp"
android:padding="12dp"
android:text="Login"/>
</LinearLayout>
5. Buat class baru dengan nama AppVar lalu ketikan kode berikut
package net.agusharyanto.loginwithvolley;
/**
* Created by agus on 3/23/16.
*/
public class AppVar {
//URL to our login.php file, url bisa diganti sesuai dengan alamat server
kita
public static final String LOGIN_URL =
"http://192.168.0.101/course/login.php";
//Keys for email and password as defined in our $_POST['key'] in login.php
public static final String KEY_EMAIL = "email";
public static final String KEY_PASSWORD = "password";
//If server response is equal to this that means login is successful
public static final String LOGIN_SUCCESS = "success";
}
6. Sekarang mari kita buka MainActivity.java lalu ketikan kode berikut
package net.agusharyanto.loginwithvolley;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.AppCompatButton;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
//Defining views
private EditText editTextEmail;
private EditText editTextPassword;
private Context context;
private AppCompatButton buttonLogin;
private ProgressDialog pDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
context = MainActivity.this;
//Initializing views
pDialog = new ProgressDialog(context);
editTextEmail = (EditText) findViewById(R.id.editTextEmail);
editTextPassword = (EditText) findViewById(R.id.editTextPassword);
buttonLogin = (AppCompatButton) findViewById(R.id.buttonLogin);
//Adding click listener
buttonLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
login();
}
});
//editTextEmail.setText("admin@agusharyanto.net");
//editTextPassword.setText("abcd1234");
}
private void login() {
//Getting values from edit texts
final String email = editTextEmail.getText().toString().trim();
final String password = editTextPassword.getText().toString().trim();
pDialog.setMessage("Login Process...");
showDialog();
//Creating a string request
StringRequest stringRequest = new StringRequest(Request.Method.POST,
AppVar.LOGIN_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
//If we are getting success from server
if (response.contains(AppVar.LOGIN_SUCCESS)) {
hideDialog();
gotoCourseActivity();
} else {
hideDialog();
//Displaying an error message on toast
Toast.makeText(context, "Invalid username or
password", Toast.LENGTH_LONG).show();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
//You can handle error here if you want
hideDialog();
Toast.makeText(context, "The server unreachable",
Toast.LENGTH_LONG).show();
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
//Adding parameters to request
params.put(AppVar.KEY_EMAIL, email);
params.put(AppVar.KEY_PASSWORD, password);
//returning parameter
return params;
}
};
//Adding the string request to the queue
Volley.newRequestQueue(this).add(stringRequest);
}
private void gotoCourseActivity() {
Intent intent = new Intent(context, CourseActivity.class);
startActivity(intent);
finish();
}
private void showDialog() {
if (!pDialog.isShowing())
pDialog.show();
}
private void hideDialog() {
if (pDialog.isShowing())
pDialog.dismiss();
}
}
Wah kok masih ada error dibagian code yang ada CourseActivity.class tenang itu terjadi
karena kita belum mebuat Activity CourseActivity. Pada code diatas setelah kita sentuh tombol
login maka username/email dan password kita akan dikirim ke server untuk dicek apakah benar
tidak jika benar maka server akan mengirimkan response “success”. Jika login success makan akan
membuka Activty CourseActivty.
7. Buat Activity Baru dengan nama CourseActivity. Caranya klik kanan package
net.agusharyanto.loginwithvolley lalu pilih New > Activity > Empty Activity seperti gambar
dibawah ini.
Isi Activity Name dengan CourseActivity lalu klik Finish. Ini ototamatis juga membuat Layout
activity_course.xml dan langsung terdaftar di AndroidManifest.xml
8. Edit activity_course.xml lalu ketikan kode berikut
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
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=".CourseActivity">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:src="@drawable/agusharyantonet" />
</RelativeLayout>
Kalau ada yang error di android:src="@drawable/agusharyantonet" bisa menggantinya
dengan android:src="@mipmap/ic_launcher"
9. Jangan lupa tambahkan permission Internet pada AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.agusharyanto.loginwithvolley">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".CourseActivity"
android:label="agusharyanto.net"></activity>
</application>
</manifest>
10. Sekarang mari kita run projectnya.
Isi email dengan admin@agusharyanto.net dan
password dengan abcd1234
Bagaimana enakan pakai Volley. Tinggal masukkan address dan parameternya, kita tinggal tangkap
responsenya, kalau ada error tempat response error juga sudah disediakan.
Untuk source codenya bisa dilihat di https://github.com/jatisari/LoginWithVolley
sumber:
https://www.simplifiedcoding.net/
http://androidhive.info

More Related Content

What's hot

Aplikasi Cuaca dan Quiz Android
Aplikasi Cuaca dan Quiz AndroidAplikasi Cuaca dan Quiz Android
Aplikasi Cuaca dan Quiz Androidrivalbamen
 
Live coding andorid
Live coding andoridLive coding andorid
Live coding andoridArif Huda
 
Tutorial Lengkap Cara Membuat Aplikasi Android Sederhana
Tutorial Lengkap Cara Membuat Aplikasi Android SederhanaTutorial Lengkap Cara Membuat Aplikasi Android Sederhana
Tutorial Lengkap Cara Membuat Aplikasi Android Sederhanacreatorb dev
 
Android membuat-aplikasi-sederhana
Android membuat-aplikasi-sederhanaAndroid membuat-aplikasi-sederhana
Android membuat-aplikasi-sederhanaRobby Febrian
 
Menghitung luas persegi panjang dengan android
Menghitung luas persegi panjang dengan androidMenghitung luas persegi panjang dengan android
Menghitung luas persegi panjang dengan androidAgus Haryanto
 
Modul praktikum 17 - Android Sudaryatno
Modul praktikum 17 - Android SudaryatnoModul praktikum 17 - Android Sudaryatno
Modul praktikum 17 - Android SudaryatnoYatno Sudar
 
Modul praktikum 16 - Android Sudaryatno
Modul praktikum 16 - Android SudaryatnoModul praktikum 16 - Android Sudaryatno
Modul praktikum 16 - Android SudaryatnoYatno Sudar
 
Modul praktikum 13 - Android Sudaryatno
Modul praktikum 13 - Android SudaryatnoModul praktikum 13 - Android Sudaryatno
Modul praktikum 13 - Android SudaryatnoYatno Sudar
 
Modul praktikum 11 - Android Sudaryatno
Modul praktikum 11 - Android SudaryatnoModul praktikum 11 - Android Sudaryatno
Modul praktikum 11 - Android SudaryatnoYatno Sudar
 
Tutorial Android Membuat Aplikasi senter Flash light
Tutorial Android Membuat Aplikasi senter Flash lightTutorial Android Membuat Aplikasi senter Flash light
Tutorial Android Membuat Aplikasi senter Flash lightAgus Haryanto
 
Belajar Android Studio - Membuat Aplikasi Android Sederhana
Belajar Android Studio - Membuat Aplikasi Android SederhanaBelajar Android Studio - Membuat Aplikasi Android Sederhana
Belajar Android Studio - Membuat Aplikasi Android SederhanaAgus Haryanto
 
Pemrograman Dasar Android
Pemrograman Dasar AndroidPemrograman Dasar Android
Pemrograman Dasar AndroidAbas Djumadi
 
E commerce dengan php mysql.docx
E commerce dengan php mysql.docxE commerce dengan php mysql.docx
E commerce dengan php mysql.docxCandra Adi Putra
 
Modul praktikum 7 - Android Sudaryatno
Modul praktikum 7 - Android SudaryatnoModul praktikum 7 - Android Sudaryatno
Modul praktikum 7 - Android SudaryatnoYatno Sudar
 
Modul praktikum 15 - Android Sudaryatno
Modul praktikum 15 - Android SudaryatnoModul praktikum 15 - Android Sudaryatno
Modul praktikum 15 - Android SudaryatnoYatno Sudar
 
Modul praktikum 8 - Android Sudaryatno
Modul praktikum 8 - Android SudaryatnoModul praktikum 8 - Android Sudaryatno
Modul praktikum 8 - Android SudaryatnoYatno Sudar
 
Membuat aplikasi sederhana menggunakan java
Membuat aplikasi sederhana menggunakan javaMembuat aplikasi sederhana menggunakan java
Membuat aplikasi sederhana menggunakan javaEko Kurniawan Khannedy
 
Modul praktikum 4 - Android Sudaryatno
Modul praktikum 4 - Android SudaryatnoModul praktikum 4 - Android Sudaryatno
Modul praktikum 4 - Android SudaryatnoYatno Sudar
 

What's hot (20)

Aplikasi Cuaca dan Quiz Android
Aplikasi Cuaca dan Quiz AndroidAplikasi Cuaca dan Quiz Android
Aplikasi Cuaca dan Quiz Android
 
Live coding andorid
Live coding andoridLive coding andorid
Live coding andorid
 
Tutorial Lengkap Cara Membuat Aplikasi Android Sederhana
Tutorial Lengkap Cara Membuat Aplikasi Android SederhanaTutorial Lengkap Cara Membuat Aplikasi Android Sederhana
Tutorial Lengkap Cara Membuat Aplikasi Android Sederhana
 
Android membuat-aplikasi-sederhana
Android membuat-aplikasi-sederhanaAndroid membuat-aplikasi-sederhana
Android membuat-aplikasi-sederhana
 
Menghitung luas persegi panjang dengan android
Menghitung luas persegi panjang dengan androidMenghitung luas persegi panjang dengan android
Menghitung luas persegi panjang dengan android
 
Modul praktikum 17 - Android Sudaryatno
Modul praktikum 17 - Android SudaryatnoModul praktikum 17 - Android Sudaryatno
Modul praktikum 17 - Android Sudaryatno
 
Modul praktikum 16 - Android Sudaryatno
Modul praktikum 16 - Android SudaryatnoModul praktikum 16 - Android Sudaryatno
Modul praktikum 16 - Android Sudaryatno
 
Modul praktikum 13 - Android Sudaryatno
Modul praktikum 13 - Android SudaryatnoModul praktikum 13 - Android Sudaryatno
Modul praktikum 13 - Android Sudaryatno
 
Modul praktikum 11 - Android Sudaryatno
Modul praktikum 11 - Android SudaryatnoModul praktikum 11 - Android Sudaryatno
Modul praktikum 11 - Android Sudaryatno
 
Tutorial Android Membuat Aplikasi senter Flash light
Tutorial Android Membuat Aplikasi senter Flash lightTutorial Android Membuat Aplikasi senter Flash light
Tutorial Android Membuat Aplikasi senter Flash light
 
Belajar Android Studio - Membuat Aplikasi Android Sederhana
Belajar Android Studio - Membuat Aplikasi Android SederhanaBelajar Android Studio - Membuat Aplikasi Android Sederhana
Belajar Android Studio - Membuat Aplikasi Android Sederhana
 
Pemrograman Dasar Android
Pemrograman Dasar AndroidPemrograman Dasar Android
Pemrograman Dasar Android
 
E commerce dengan php mysql.docx
E commerce dengan php mysql.docxE commerce dengan php mysql.docx
E commerce dengan php mysql.docx
 
Modul praktikum 7 - Android Sudaryatno
Modul praktikum 7 - Android SudaryatnoModul praktikum 7 - Android Sudaryatno
Modul praktikum 7 - Android Sudaryatno
 
JQuery
JQueryJQuery
JQuery
 
Modul praktikum 15 - Android Sudaryatno
Modul praktikum 15 - Android SudaryatnoModul praktikum 15 - Android Sudaryatno
Modul praktikum 15 - Android Sudaryatno
 
Modul praktikum 8 - Android Sudaryatno
Modul praktikum 8 - Android SudaryatnoModul praktikum 8 - Android Sudaryatno
Modul praktikum 8 - Android Sudaryatno
 
Membuat aplikasi sederhana menggunakan java
Membuat aplikasi sederhana menggunakan javaMembuat aplikasi sederhana menggunakan java
Membuat aplikasi sederhana menggunakan java
 
My sql dan java database connectivity
My sql dan java database connectivityMy sql dan java database connectivity
My sql dan java database connectivity
 
Modul praktikum 4 - Android Sudaryatno
Modul praktikum 4 - Android SudaryatnoModul praktikum 4 - Android Sudaryatno
Modul praktikum 4 - Android Sudaryatno
 

Similar to Belajar Android PHP MySQL Login dengan Volley

Jamal aplikasicrud
Jamal aplikasicrudJamal aplikasicrud
Jamal aplikasicrudmales Aja
 
54 hal-dasar-dasar-jquery
54 hal-dasar-dasar-jquery54 hal-dasar-dasar-jquery
54 hal-dasar-dasar-jqueryFajar Baskoro
 
Octav android mysql
Octav android mysqlOctav android mysql
Octav android mysqlrikysp
 
F 10011543 fathorazi nur fajri
F 10011543 fathorazi nur fajriF 10011543 fathorazi nur fajri
F 10011543 fathorazi nur fajriSyarif Fudin
 
Membuat form login dengan php mysql
Membuat form login dengan php mysqlMembuat form login dengan php mysql
Membuat form login dengan php mysqlRaja Putra Media
 
Modul pelatihan-django-dasar-possupi-v1
Modul pelatihan-django-dasar-possupi-v1Modul pelatihan-django-dasar-possupi-v1
Modul pelatihan-django-dasar-possupi-v1Ridwan Fadjar
 
Pelatihan j query
Pelatihan j queryPelatihan j query
Pelatihan j queryoratmangun
 
Pocket book window builder eclipse
Pocket book window builder eclipsePocket book window builder eclipse
Pocket book window builder eclipseresarahadian
 
17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sqlSaprudin Eskom
 
CRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLCRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLLusiana Diyan
 
Membuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan phpMembuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan phpCahya Dwiana SN
 
Mengamankan Aplikasi Java EE 6
Mengamankan Aplikasi Java EE 6Mengamankan Aplikasi Java EE 6
Mengamankan Aplikasi Java EE 6Bowo Prasetyo
 
17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sqlSaprudin Eskom
 
Belajar php-dengan-framework-code-igniter1
Belajar php-dengan-framework-code-igniter1Belajar php-dengan-framework-code-igniter1
Belajar php-dengan-framework-code-igniter1Al-dhimas Purnama
 
Modul framework code igniter
Modul framework code igniterModul framework code igniter
Modul framework code igniterFakhir Rizal
 
Speech to text
Speech to textSpeech to text
Speech to textiswan_di
 

Similar to Belajar Android PHP MySQL Login dengan Volley (20)

Jamal aplikasicrud
Jamal aplikasicrudJamal aplikasicrud
Jamal aplikasicrud
 
Jquery id
Jquery idJquery id
Jquery id
 
54 hal-dasar-dasar-jquery
54 hal-dasar-dasar-jquery54 hal-dasar-dasar-jquery
54 hal-dasar-dasar-jquery
 
Octav android mysql
Octav android mysqlOctav android mysql
Octav android mysql
 
Login php mysql
Login php mysqlLogin php mysql
Login php mysql
 
F 10011543 fathorazi nur fajri
F 10011543 fathorazi nur fajriF 10011543 fathorazi nur fajri
F 10011543 fathorazi nur fajri
 
Membuat form login dengan php mysql
Membuat form login dengan php mysqlMembuat form login dengan php mysql
Membuat form login dengan php mysql
 
Tutorial ci
Tutorial ciTutorial ci
Tutorial ci
 
Modul pelatihan-django-dasar-possupi-v1
Modul pelatihan-django-dasar-possupi-v1Modul pelatihan-django-dasar-possupi-v1
Modul pelatihan-django-dasar-possupi-v1
 
Pelatihan j query
Pelatihan j queryPelatihan j query
Pelatihan j query
 
Pocket book window builder eclipse
Pocket book window builder eclipsePocket book window builder eclipse
Pocket book window builder eclipse
 
17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql
 
CRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLCRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQL
 
Membuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan phpMembuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan php
 
Mengamankan Aplikasi Java EE 6
Mengamankan Aplikasi Java EE 6Mengamankan Aplikasi Java EE 6
Mengamankan Aplikasi Java EE 6
 
Mari belajar vue js
Mari belajar vue jsMari belajar vue js
Mari belajar vue js
 
17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql
 
Belajar php-dengan-framework-code-igniter1
Belajar php-dengan-framework-code-igniter1Belajar php-dengan-framework-code-igniter1
Belajar php-dengan-framework-code-igniter1
 
Modul framework code igniter
Modul framework code igniterModul framework code igniter
Modul framework code igniter
 
Speech to text
Speech to textSpeech to text
Speech to text
 

More from Agus Haryanto

Belajar Android Studio CRUD Data Mahasiswa
Belajar Android Studio CRUD Data MahasiswaBelajar Android Studio CRUD Data Mahasiswa
Belajar Android Studio CRUD Data MahasiswaAgus Haryanto
 
Belajar Android Studio Material Design Penggunaan RecyclerView dan Card View
Belajar Android Studio Material Design Penggunaan RecyclerView dan Card ViewBelajar Android Studio Material Design Penggunaan RecyclerView dan Card View
Belajar Android Studio Material Design Penggunaan RecyclerView dan Card ViewAgus Haryanto
 
Panduan Instalasi Android Studio
Panduan Instalasi Android StudioPanduan Instalasi Android Studio
Panduan Instalasi Android StudioAgus Haryanto
 
Android Fast Track CRUD Android PHP MySql
Android Fast Track CRUD Android PHP MySqlAndroid Fast Track CRUD Android PHP MySql
Android Fast Track CRUD Android PHP MySqlAgus Haryanto
 
Sistem Informasi Pelaporan Kebakaran
Sistem Informasi Pelaporan KebakaranSistem Informasi Pelaporan Kebakaran
Sistem Informasi Pelaporan KebakaranAgus Haryanto
 
Seminar Android as your Smart Future
Seminar Android as your Smart FutureSeminar Android as your Smart Future
Seminar Android as your Smart FutureAgus Haryanto
 
Android Sliding Menu dengan Navigation Drawer
Android Sliding Menu dengan Navigation DrawerAndroid Sliding Menu dengan Navigation Drawer
Android Sliding Menu dengan Navigation DrawerAgus Haryanto
 
Langkah-langkah Instalasi software untuk develop aplikasi android
Langkah-langkah Instalasi software untuk develop aplikasi androidLangkah-langkah Instalasi software untuk develop aplikasi android
Langkah-langkah Instalasi software untuk develop aplikasi androidAgus Haryanto
 
Android Radio streaming
Android Radio streamingAndroid Radio streaming
Android Radio streamingAgus Haryanto
 
Android fast track_course
Android fast track_courseAndroid fast track_course
Android fast track_courseAgus Haryanto
 

More from Agus Haryanto (10)

Belajar Android Studio CRUD Data Mahasiswa
Belajar Android Studio CRUD Data MahasiswaBelajar Android Studio CRUD Data Mahasiswa
Belajar Android Studio CRUD Data Mahasiswa
 
Belajar Android Studio Material Design Penggunaan RecyclerView dan Card View
Belajar Android Studio Material Design Penggunaan RecyclerView dan Card ViewBelajar Android Studio Material Design Penggunaan RecyclerView dan Card View
Belajar Android Studio Material Design Penggunaan RecyclerView dan Card View
 
Panduan Instalasi Android Studio
Panduan Instalasi Android StudioPanduan Instalasi Android Studio
Panduan Instalasi Android Studio
 
Android Fast Track CRUD Android PHP MySql
Android Fast Track CRUD Android PHP MySqlAndroid Fast Track CRUD Android PHP MySql
Android Fast Track CRUD Android PHP MySql
 
Sistem Informasi Pelaporan Kebakaran
Sistem Informasi Pelaporan KebakaranSistem Informasi Pelaporan Kebakaran
Sistem Informasi Pelaporan Kebakaran
 
Seminar Android as your Smart Future
Seminar Android as your Smart FutureSeminar Android as your Smart Future
Seminar Android as your Smart Future
 
Android Sliding Menu dengan Navigation Drawer
Android Sliding Menu dengan Navigation DrawerAndroid Sliding Menu dengan Navigation Drawer
Android Sliding Menu dengan Navigation Drawer
 
Langkah-langkah Instalasi software untuk develop aplikasi android
Langkah-langkah Instalasi software untuk develop aplikasi androidLangkah-langkah Instalasi software untuk develop aplikasi android
Langkah-langkah Instalasi software untuk develop aplikasi android
 
Android Radio streaming
Android Radio streamingAndroid Radio streaming
Android Radio streaming
 
Android fast track_course
Android fast track_courseAndroid fast track_course
Android fast track_course
 

Recently uploaded

alat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptxalat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptxRioNahak1
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfCloverash1
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiIntanHanifah4
 
Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxRezaWahyuni6
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxSyaimarChandra1
 
Materi power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .pptMateri power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .pptAcemediadotkoM1
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdfvebronialite32
 
SILABUS MATEMATIKA SMP kurikulum K13.docx
SILABUS MATEMATIKA SMP kurikulum K13.docxSILABUS MATEMATIKA SMP kurikulum K13.docx
SILABUS MATEMATIKA SMP kurikulum K13.docxrahmaamaw03
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxFuzaAnggriana
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKARenoMardhatillahS
 
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxPanduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxsudianaade137
 
Materi Lingkaran kelas 6 terlengkap.pptx
Materi Lingkaran kelas 6 terlengkap.pptxMateri Lingkaran kelas 6 terlengkap.pptx
Materi Lingkaran kelas 6 terlengkap.pptxshafiraramadhani9
 
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...Kanaidi ken
 
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptxTopik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptxsyafnasir
 
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docxModul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docxherisriwahyuni
 
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptxIPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptxErikaPuspita10
 
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxMODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxarnisariningsih98
 
Karakteristik Negara Brazil, Geografi Regional Dunia
Karakteristik Negara Brazil, Geografi Regional DuniaKarakteristik Negara Brazil, Geografi Regional Dunia
Karakteristik Negara Brazil, Geografi Regional DuniaNadia Putri Ayu
 
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmaksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmeunikekambe10
 
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptNabilahKhairunnisa6
 

Recently uploaded (20)

alat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptxalat-alat liturgi dalam Gereja Katolik.pptx
alat-alat liturgi dalam Gereja Katolik.pptx
 
Kelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdfKelompok 1_Karakteristik negara jepang.pdf
Kelompok 1_Karakteristik negara jepang.pdf
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajii
 
Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptx
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
 
Materi power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .pptMateri power point Kepemimpinan leadership .ppt
Materi power point Kepemimpinan leadership .ppt
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdf
 
SILABUS MATEMATIKA SMP kurikulum K13.docx
SILABUS MATEMATIKA SMP kurikulum K13.docxSILABUS MATEMATIKA SMP kurikulum K13.docx
SILABUS MATEMATIKA SMP kurikulum K13.docx
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
 
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxPanduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
 
Materi Lingkaran kelas 6 terlengkap.pptx
Materi Lingkaran kelas 6 terlengkap.pptxMateri Lingkaran kelas 6 terlengkap.pptx
Materi Lingkaran kelas 6 terlengkap.pptx
 
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
 
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptxTopik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
Topik 1 - Pengenalan Penghayatan Etika dan Peradaban Acuan Malaysia.pptx
 
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docxModul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
 
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptxIPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
IPA Kelas 9 BAB 10 - www.ilmuguru.org.pptx
 
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxMODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
 
Karakteristik Negara Brazil, Geografi Regional Dunia
Karakteristik Negara Brazil, Geografi Regional DuniaKarakteristik Negara Brazil, Geografi Regional Dunia
Karakteristik Negara Brazil, Geografi Regional Dunia
 
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmaksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
 
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
 

Belajar Android PHP MySQL Login dengan Volley

  • 1.
  • 2. Belajar Android PHP MySQL Login dengan Volley Agus Haryanto agus.superwriter@gmail.com http://agusharyanto.net Anda adalah pengguna Aplikasi Android seperti Gojek, Lazada. kalau ia tentunya untuk menggunakan aplikasi tersebut anda harus mendaftar dulu dan kemudian Login untuk menggunakan aplikasi tersebut. Tidak hanya Gojek aplikasi facebook, instagram, traveloka pun ada proses loginnya. Yang suka belanja online dengan Aplikasi Lazada, TokoPedia, Bli,bli, elevenia, buka lapak mengharuskan anda untuk login agar bisa bertransaksi. Jadi timbul pertanyaan nih, kenapa harus pakai login ?. Silahkan dijawab adik-adik mahasiswaku yang pintar-pintar, cantik dan ganteng, serta menjadi kebanggaan orang tua. Buat yang penasaran ingin tahu pembuatan Aplikasi android yang ada loginnya. Anda berada ditempat yang tepat karena materi belajar android kita kali ini akan membahas tentang Login dengan Volley tentu saja disisi servernya mengguanakan Apache sebagai webservernya, php sebagai server side scriptnya dan MySQL sebagai databasenya. Untuk itu pastikan di PC atau laptop anda sudah terinstall semuanya. Persiapan disisi Server 1. Pertama buka phpmyadmin lalu buat database dengan nama “dbcourse” 2. Pilih “dbcourse” lalu buat table dengan nama “users” CREATE TABLE IF NOT EXISTS `users` ( `id` int(4) NOT NULL, `username` varchar(32) NOT NULL, `password` varchar(64) NOT NULL, `email` varchar(32) NOT NULL, `accountname` varchar(32) NOT NULL, `status` int(4) NOT NULL DEFAULT '1' ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; ALTER TABLE `users` ADD PRIMARY KEY (`id`); INSERT INTO `users` (`id`, `username`, `password`, `email`, `accountname`, `status`) VALUES (1, 'admin', 'abcd1234', 'admin@agusharyanto.net', 'Admin', 1); 3. Buat script php untuk login simpan dengan nama “login.php” <?php define('HOST','localhost'); define('USER','root'); define('PASS',''); define('DB','dbcourse'); $con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect'); if($_SERVER['REQUEST_METHOD']=='POST'){ //Getting values $username = $_POST['email']; $password = $_POST['password']; //Creating sql query $sql = "SELECT * FROM users WHERE email='$username' AND password='$password'"; //executing query $result = mysqli_query($con,$sql); //fetching result $check = mysqli_fetch_array($result); //if we got some result if(isset($check)){
  • 3. //displaying success echo "success"; }else{ //displaying failure echo "failure"; } mysqli_close($con); } ?> Pengerjaan disisi Android 1. Sekarang mari kita buat project dengan nama “LoginWithVolley” 2. Klik Next lalu pada pilihan Activity pilih “EmptyActivity” Klik Next sampai Finish. Setelah finish maka otomatis project terbuat. 3. Selanjutnya kita tambahkan library Volley pada dependencies bulid.gradle (modul:app). dependencies { compile fileTree(dir: 'libs', include: ['*.jar'])
  • 4. testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.2.0' compile 'com.android.support:design:23.2.0' compile 'com.mcxiaoke.volley:library-aar:1.0.0' } Library Volley ini membantu kita dalam urusan komunikasi ke server. Sebelumnya kita perlu membuat Assynctask untuk komunikasi ke server. Dengan Volley tidak lagi karena sudah diurus oleh Volley. 4. Sekarang kita urus layout untuk loginnya, untuk itu buka activity_main.xml lalu ketikkan kode berikut <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="net.agusharyanto.loginwithvolley.MainActivity"> <ImageView android:background="@mipmap/ic_launcher" android:layout_gravity="center_horizontal" android:layout_width="150dp" android:layout_height="150dp" /> <android.support.design.widget.TextInputLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:layout_marginBottom="8dp"> <EditText android:id="@+id/editTextEmail" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="textEmailAddress" android:hint="Email" /> </android.support.design.widget.TextInputLayout> <android.support.design.widget.TextInputLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:layout_marginBottom="8dp"> <EditText android:id="@+id/editTextPassword" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="textPassword" android:hint="Password"/> </android.support.design.widget.TextInputLayout> <android.support.v7.widget.AppCompatButton android:id="@+id/buttonLogin" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@color/colorPrimary" android:textColor="@android:color/white"
  • 5. android:layout_marginTop="24dp" android:layout_marginBottom="24dp" android:padding="12dp" android:text="Login"/> </LinearLayout> 5. Buat class baru dengan nama AppVar lalu ketikan kode berikut package net.agusharyanto.loginwithvolley; /** * Created by agus on 3/23/16. */ public class AppVar { //URL to our login.php file, url bisa diganti sesuai dengan alamat server kita public static final String LOGIN_URL = "http://192.168.0.101/course/login.php"; //Keys for email and password as defined in our $_POST['key'] in login.php public static final String KEY_EMAIL = "email"; public static final String KEY_PASSWORD = "password"; //If server response is equal to this that means login is successful public static final String LOGIN_SUCCESS = "success"; } 6. Sekarang mari kita buka MainActivity.java lalu ketikan kode berikut package net.agusharyanto.loginwithvolley; import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.AppCompatButton; import android.view.View; import android.widget.EditText; import android.widget.Toast; import com.android.volley.AuthFailureError; import com.android.volley.Request; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.StringRequest; import com.android.volley.toolbox.Volley; import java.util.HashMap; import java.util.Map; public class MainActivity extends AppCompatActivity { //Defining views private EditText editTextEmail; private EditText editTextPassword; private Context context; private AppCompatButton buttonLogin; private ProgressDialog pDialog; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
  • 6. context = MainActivity.this; //Initializing views pDialog = new ProgressDialog(context); editTextEmail = (EditText) findViewById(R.id.editTextEmail); editTextPassword = (EditText) findViewById(R.id.editTextPassword); buttonLogin = (AppCompatButton) findViewById(R.id.buttonLogin); //Adding click listener buttonLogin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { login(); }
  • 7. }); //editTextEmail.setText("admin@agusharyanto.net"); //editTextPassword.setText("abcd1234"); } private void login() { //Getting values from edit texts final String email = editTextEmail.getText().toString().trim(); final String password = editTextPassword.getText().toString().trim(); pDialog.setMessage("Login Process..."); showDialog(); //Creating a string request StringRequest stringRequest = new StringRequest(Request.Method.POST, AppVar.LOGIN_URL, new Response.Listener<String>() { @Override public void onResponse(String response) { //If we are getting success from server if (response.contains(AppVar.LOGIN_SUCCESS)) { hideDialog(); gotoCourseActivity(); } else { hideDialog(); //Displaying an error message on toast Toast.makeText(context, "Invalid username or password", Toast.LENGTH_LONG).show(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { //You can handle error here if you want hideDialog(); Toast.makeText(context, "The server unreachable", Toast.LENGTH_LONG).show(); } }) { @Override protected Map<String, String> getParams() throws AuthFailureError { Map<String, String> params = new HashMap<>(); //Adding parameters to request params.put(AppVar.KEY_EMAIL, email); params.put(AppVar.KEY_PASSWORD, password); //returning parameter return params; } }; //Adding the string request to the queue Volley.newRequestQueue(this).add(stringRequest); } private void gotoCourseActivity() { Intent intent = new Intent(context, CourseActivity.class); startActivity(intent); finish(); } private void showDialog() { if (!pDialog.isShowing()) pDialog.show();
  • 8. } private void hideDialog() { if (pDialog.isShowing()) pDialog.dismiss(); } } Wah kok masih ada error dibagian code yang ada CourseActivity.class tenang itu terjadi karena kita belum mebuat Activity CourseActivity. Pada code diatas setelah kita sentuh tombol login maka username/email dan password kita akan dikirim ke server untuk dicek apakah benar tidak jika benar maka server akan mengirimkan response “success”. Jika login success makan akan membuka Activty CourseActivty. 7. Buat Activity Baru dengan nama CourseActivity. Caranya klik kanan package net.agusharyanto.loginwithvolley lalu pilih New > Activity > Empty Activity seperti gambar dibawah ini. Isi Activity Name dengan CourseActivity lalu klik Finish. Ini ototamatis juga membuat Layout activity_course.xml dan langsung terdaftar di AndroidManifest.xml 8. Edit activity_course.xml lalu ketikan kode berikut <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" 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=".CourseActivity"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageView"
  • 9. android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:src="@drawable/agusharyantonet" /> </RelativeLayout> Kalau ada yang error di android:src="@drawable/agusharyantonet" bisa menggantinya dengan android:src="@mipmap/ic_launcher" 9. Jangan lupa tambahkan permission Internet pada AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="net.agusharyanto.loginwithvolley"> <uses-permission android:name="android.permission.INTERNET" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".CourseActivity" android:label="agusharyanto.net"></activity> </application> </manifest> 10. Sekarang mari kita run projectnya.
  • 10. Isi email dengan admin@agusharyanto.net dan password dengan abcd1234 Bagaimana enakan pakai Volley. Tinggal masukkan address dan parameternya, kita tinggal tangkap responsenya, kalau ada error tempat response error juga sudah disediakan. Untuk source codenya bisa dilihat di https://github.com/jatisari/LoginWithVolley sumber: https://www.simplifiedcoding.net/ http://androidhive.info