androidloginandregistration v2
TRANSCRIPT
-
7/25/2019 AndroidLoginAndRegistration v2
1/45
Advertise Here
Advertise Here
Tweet1.1kLikeLike
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
2/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
3/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
4/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
5/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
6/45
create databaseandroid_api /** Creating Database**/
use android_api /** Selecting Database**/
create tableusers(id int(11) primary keyauto_increment,
unique_id varchar(23) not null unique,name varchar(50) not null,email varchar(100) not null unique,encrypted_password varchar(80) not null,salt varchar(10) not null,created_at datetime,updated_at datetime null
); /** Creating Users Table**/
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
7/45
CONFIG.PHP
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
8/45
DB_CONNECT.PHP
-
7/25/2019 AndroidLoginAndRegistration v2
9/45
// destructorfunction__destruct() {
}
/**
* Storing new user* returns user details*/
public functionstoreUser($name, $email, $password) {$uuid= uniqid('', true);$hash= $this->hashSSHA($password);$encrypted_password= $hash["encrypted"]; // encrypted password$salt= $hash["salt"]; // salt
$stmt= $this->conn->prepare("INSERT INTO users(unique_id, name, email,$stmt->bind_param("sssss", $uuid, $name, $email, $encrypted_password, $s$result= $stmt->execute();
$stmt->close();
// check for successful storeif($result) {
$stmt= $this->conn->prepare("SELECT * FROM users WHERE email = ?");$stmt->bind_param("s", $email);$stmt->execute();$user= $stmt->get_result()->fetch_assoc();$stmt->close();
return$user;} else{
returnfalse;}}
/*** Get user by email and password*/
public functiongetUserByEmailAndPassword($email, $password) {
$stmt= $this->conn->prepare("SELECT * FROM users WHERE email = ?");
$stmt->bind_param("s", $email);
if($stmt->execute()) {$user= $stmt->get_result()->fetch_assoc();$stmt->close();return$user;
} else{returnNULL;
}}
/*** Check user is existed or not
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
5 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
10/45
$stmt->bind_param("s", $email);
$stmt->execute();
$stmt->store_result();
if($stmt->num_rows > 0) {// user existed$stmt->close();returntrue;
} else{// user not existed$stmt->close();returnfalse;
}}
/*** Encrypting password* @param password* returns salt and encrypted password*/
public functionhashSSHA($password) {
$salt= sha1(rand());$salt= substr($salt, 0, 10);$encrypted= base64_encode(sha1($password. $salt, true) . $salt);$hash= array("salt"=> $salt, "encrypted"=> $encrypted);return$hash;
}
/*** Decrypting password* @param salt, password* returns hash string*/
public functioncheckhashSSHA($salt, $password) {
$hash= base64_encode(sha1($password. $salt, true) . $salt);
return$hash;}
}
?>
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
11/45
REGISTER.PHP
-
7/25/2019 AndroidLoginAndRegistration v2
12/45
LOGIN.PHP
-
7/25/2019 AndroidLoginAndRegistration v2
13/45
{"error": false,"uid": "55fa7220a2c187.50984590","user": {
"name": "Ravi Tamada","email": "[email protected]","created_at": "2015-09-17 13:26:16","updated_at": null
}}
{"error": 1,"error_msg": "Unknown error occurred in registration!"
}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
14/45
,"error_msg": "User already existed with [email protected]"
}
{"error": false,"uid": "55fa7220a2c187.50984590","user": {
"name": "Ravi Tamada","email": "[email protected]","created_at": "2015-09-17 13:26:16","updated_at": null
}}
{"tag": "login","success": 0,"error": 1,"error_msg": "Login credentials are incorrect. Please try again!"
}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
15/45
BUILD.GRADLE
dependencies {compile 'com.android.support:appcompat-v7:21.0.3'compile 'com.android.support:support-v4:21.0.3'compile 'com.mcxiaoke.volley:library-aar:1.0.0'
}
STRINGS.XML
Android Login and RegistrationEmailPasswordFullnameLOGINREGISTERNot a member? Sign up now.Already registred! Login Me.WelcomeLOGOUTFullname
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
16/45
.
#26ae90#2e3237#428bca
#ffffff#222222#999999#888888#3b4148#5e6266#26ae90#eceef1#333333#ff6861
APPCONFIG.JAVA
packageinfo.androidhive.loginandregistration.app;
public classAppConfig {// Server user login urlpublic staticString URL_LOGIN = "http://192.168.0.102:8888/android_login_ap
// Server user register urlpublic staticString URL_REGISTER = "http://192.168.0.102:8888/android_login
}
APPCONTROLLER.JAVA
packageinfo.androidhive.loginandregistration.app;
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
17/45
mportcom.andro d.volley.Request;importcom.android.volley.RequestQueue;importcom.android.volley.toolbox.Volley;
public classAppController extendsApplication {
public static finalString TAG = AppController.class.getSimpleName();
privateRequestQueue mRequestQueue;
private staticAppController mInstance;
@Overridepublic voidonCreate() {
super.onCreate();mInstance = this;
}
public static synchronizedAppController getInstance() {returnmInstance;
}
publicRequestQueue getRequestQueue() {if(mRequestQueue == null) {
mRequestQueue = Volley.newRequestQueue(getApplicationContext());}
returnmRequestQueue;}
public voidaddToRequestQueue(Request req, String tag) {req.setTag(TextUtils.isEmpty(tag) ? TAG : tag);getRequestQueue().add(req);
}
public voidaddToRequestQueue(Request req) {req.setTag(TAG);getRequestQueue().add(req);
}
public voidcancelPendingRequests(Object tag) {if(mRequestQueue != null) {
mRequestQueue.cancelAll(tag);
}}
}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
18/45
ANDROIDMANIFEST.XML
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
19/45
SESSIONMANAGER.JAVA
packageinfo.androidhive.loginandregistration.helper;
importandroid.content.Context;importandroid.content.SharedPreferences;importandroid.content.SharedPreferences.Editor;importandroid.util.Log;
public classSessionManager {// LogCat tagprivate staticString TAG = SessionManager.class.getSimpleName();
// Shared PreferencesSharedPreferences pref;
Editor editor;Context _context;
// Shared pref modeintPRIVATE_MODE = 0;
// Shared preferences file nameprivate static finalString PREF_NAME = "AndroidHiveLogin";
private static finalString KEY_IS_LOGGEDIN = "isLoggedIn";
publicSessionManager(Context context) {this._context = context;pref = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE);editor = pref.edit();
}
public voidsetLogin(booleanisLoggedIn) {
editor.putBoolean(KEY_IS_LOGGEDIN, isLoggedIn);
// commit changeseditor.commit();
Log.d(TAG, "User login session modified!");
}
public booleanisLoggedIn(){returnpref.getBoolean(KEY_IS_LOGGEDIN, false);
}}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
20/45
SQLITEHANDLER.JAVA
/*** Author: Ravi Tamada
* URL: www.androidhive.info* twitter: http://twitter.com/ravitamada* */
packageinfo.androidhive.loginandregistration.helper;
importandroid.content.ContentValues;importandroid.content.Context;importandroid.database.Cursor;importandroid.database.sqlite.SQLiteDatabase;importandroid.database.sqlite.SQLiteOpenHelper;importandroid.util.Log;
importjava.util.HashMap;
public classSQLiteHandler extendsSQLiteOpenHelper {
private static finalString TAG = SQLiteHandler.class.getSimpleName();
// All Static variables// Database Versionprivate static final intDATABASE_VERSION = 1;
// Database Nameprivate static finalString DATABASE_NAME = "android_api";
// Login table nameprivate static finalString TABLE_USER = "user";
// Login Table Columns namesprivate static finalString KEY_ID = "id";private static finalString KEY_NAME = "name";private static finalString KEY_EMAIL = "email";private static finalString KEY_UID = "uid";private static finalString KEY_CREATED_AT = "created_at";
publicSQLiteHandler(Context context) {super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
// Creating Tables@Overridepublic voidonCreate(SQLiteDatabase db) {
String CREATE_LOGIN_TABLE = "CREATE TABLE "+ TABLE_USER + "("+ KEY_ID + " INTEGER PRIMARY KEY,"+ KEY_NAME + " TEXT,"+ KEY_EMAIL + " TEXT UNIQUE,"+ KEY_UID + " TEXT,"+ KEY_CREATED_AT + " TEXT"+ ")";
db.execSQL(CREATE_LOGIN_TABLE);
Log.d(TAG, "Database tables created");
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
21/45
Overr depublic voidonUpgrade(SQLiteDatabase db, intoldVersion, intnewVersion) {
// Drop older table if existeddb.execSQL("DROP TABLE IF EXISTS "+ TABLE_USER);
// Create tables again
onCreate(db);}
/*** Storing user details in database* */
public voidaddUser(String name, String email, String uid, String created_atSQLiteDatabase db = this.getWritableDatabase();
ContentValues values = newContentValues();values.put(KEY_NAME, name); // Namevalues.put(KEY_EMAIL, email); // Email
values.put(KEY_UID, uid); // Emailvalues.put(KEY_CREATED_AT, created_at); // Created At
// Inserting Rowlongid = db.insert(TABLE_USER, null, values);db.close(); // Closing database connection
Log.d(TAG, "New user inserted into sqlite: "+ id);}
/*** Getting user data from database
* */publicHashMap getUserDetails() {HashMap user = newHashMap();String selectQuery = "SELECT * FROM "+ TABLE_USER;
SQLiteDatabase db = this.getReadableDatabase();Cursor cursor = db.rawQuery(selectQuery, null);// Move to first rowcursor.moveToFirst();if(cursor.getCount() > 0) {
user.put("name", cursor.getString(1));user.put("email", cursor.getString(2));user.put("uid", cursor.getString(3));
user.put("created_at", cursor.getString(4));}cursor.close();db.close();// return userLog.d(TAG, "Fetching user from Sqlite: "+ user.toString());
returnuser;}
/**
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
22/45
SQL teDatabase db = th s.getWr tableDatabase ;// Delete All Rowsdb.delete(TABLE_USER, null, null);db.close();
Log.d(TAG, "Deleted all user info from sqlite");
}
}
ACTIVITY_LOGIN.XML
-
7/25/2019 AndroidLoginAndRegistration v2
23/45
andro d: d=" + d/password"android:layout_width="fill_parent"android:layout_height="wrap_content"android:layout_marginBottom="10dp"android:background="@color/white"android:hint="@string/hint_password"
android:inputType="textPassword"android:padding="10dp"android:singleLine="true"android:textColor="@color/input_login"android:textColorHint="@color/input_login_hint"/>
LOGINACTIVITY.JAVA
/*** Author: Ravi Tamada* URL: www.androidhive.info* twitter: http://twitter.com/ravitamada
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
24/45
mportandro d.app.Act v ty;importandroid.app.ProgressDialog;importandroid.content.Intent;importandroid.os.Bundle;importandroid.util.Log;importandroid.view.View;
importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.Toast;
importcom.android.volley.Request.Method;importcom.android.volley.Response;importcom.android.volley.VolleyError;importcom.android.volley.toolbox.StringRequest;
importorg.json.JSONException;importorg.json.JSONObject;
importjava.util.HashMap;importjava.util.Map;
importinfo.androidhive.loginandregistration.R;importinfo.androidhive.loginandregistration.app.AppConfig;importinfo.androidhive.loginandregistration.app.AppController;importinfo.androidhive.loginandregistration.helper.SQLiteHandler;importinfo.androidhive.loginandregistration.helper.SessionManager;
public classLoginActivity extendsActivity {private static finalString TAG = RegisterActivity.class.getSimpleName();privateButton btnLogin;
privateButton btnLinkToRegister;privateEditText inputEmail;privateEditText inputPassword;privateProgressDialog pDialog;privateSessionManager session;privateSQLiteHandler db;
@Overridepublic voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);setContentView(R.layout.activity_login);
inputEmail = (EditText) findViewById(R.id.email);
inputPassword = (EditText) findViewById(R.id.password);btnLogin = (Button) findViewById(R.id.btnLogin);btnLinkToRegister = (Button) findViewById(R.id.btnLinkToRegisterScreen);
// Progress dialogpDialog = newProgressDialog(this);pDialog.setCancelable(false);
// SQLite database handlerdb = newSQLiteHandler(getApplicationContext());
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
25/45
// Check user s already logged n or notif(session.isLoggedIn()) {
// User is already logged in. Take him to main activityIntent intent = newIntent(LoginActivity.this, MainActivity.class);startActivity(intent);finish();
}
// Login button Click EventbtnLogin.setOnClickListener(newView.OnClickListener() {
public voidonClick(View view) {String email = inputEmail.getText().toString().trim();String password = inputPassword.getText().toString().trim();
// Check for empty data in the formif(!email.isEmpty() && !password.isEmpty()) {
// login user
checkLogin(email, password);} else{
// Prompt user to enter credentialsToast.makeText(getApplicationContext(),
"Please enter the credentials!", Toast.LENGTH_LONG).show();
}}
});
// Link to Register Screen
btnLinkToRegister.setOnClickListener(newView.OnClickListener() {
public voidonClick(View view) {Intent i = newIntent(getApplicationContext(),
RegisterActivity.class);startActivity(i);finish();
}});
}
/**
* function to verify login details in mysql db* */
private voidcheckLogin(finalString email, finalString password) {// Tag used to cancel the requestString tag_string_req = "req_login";
pDialog.setMessage("Logging in ...");showDialog();
StringRequest strReq = newStringRequest(Method.POST,AppConfig.URL_LOGIN, newResponse.Listener() {
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
26/45
Log.d TAG, "Log n Response: "+ response.toStr ng ;hideDialog();
try{JSONObject jObj = newJSONObject(response);booleanerror = jObj.getBoolean("error");
// Check for error node in jsonif(!error) {
// user successfully logged in// Create login sessionsession.setLogin(true);
// Now store the user in SQLiteString uid = jObj.getString("uid");
JSONObject user = jObj.getJSONObject("user");String name = user.getString("name");
String email = user.getString("email");String created_at = user
.getString("created_at");
// Inserting row in users tabledb.addUser(name, email, uid, created_at);
// Launch main activityIntent intent = newIntent(LoginActivity.this,
MainActivity.class);startActivity(intent);finish();
} else{// Error in login. Get the error messageString errorMsg = jObj.getString("error_msg");Toast.makeText(getApplicationContext(),
errorMsg, Toast.LENGTH_LONG).show();}
} catch(JSONException e) {// JSON errore.printStackTrace();Toast.makeText(getApplicationContext(), "Json error: "+ e.g
}
}
}, newResponse.ErrorListener() {
@Overridepublic voidonErrorResponse(VolleyError error) {
Log.e(TAG, "Login Error: "+ error.getMessage());Toast.makeText(getApplicationContext(),
error.getMessage(), Toast.LENGTH_LONG).show();hideDialog();
}}) {
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
27/45
Map params = newHashMap ;params.put("email", email);params.put("password", password);
returnparams;}
};
// Adding request to request queueAppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}
private voidshowDialog() {if(!pDialog.isShowing())
pDialog.show();}
private voidhideDialog() {if(pDialog.isShowing())
pDialog.dismiss();}
}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
28/45
ACTIVITY_REGISTER.XML
-
7/25/2019 AndroidLoginAndRegistration v2
29/45
andro d:padd ng="10dp">
-
7/25/2019 AndroidLoginAndRegistration v2
30/45
andro d:text=" str ng/btn_reg ster"android:textColor="@color/white"/>
REGISTERACTIVITY.JAVA
/*** Author: Ravi Tamada* URL: www.androidhive.info* twitter: http://twitter.com/ravitamada*/
packageinfo.androidhive.loginandregistration.activity;
importandroid.app.Activity;importandroid.app.ProgressDialog;
importandroid.content.Intent;importandroid.os.Bundle;importandroid.util.Log;importandroid.view.View;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.Toast;
importcom.android.volley.Request.Method;importcom.android.volley.Response;importcom.android.volley.VolleyError;importcom.android.volley.toolbox.StringRequest;
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
31/45
importjava.util.HashMap;importjava.util.Map;
importinfo.androidhive.loginandregistration.R;importinfo.androidhive.loginandregistration.app.AppConfig;
importinfo.androidhive.loginandregistration.app.AppController;importinfo.androidhive.loginandregistration.helper.SQLiteHandler;importinfo.androidhive.loginandregistration.helper.SessionManager;
public classRegisterActivity extendsActivity {private static finalString TAG = RegisterActivity.class.getSimpleName();privateButton btnRegister;privateButton btnLinkToLogin;privateEditText inputFullName;privateEditText inputEmail;privateEditText inputPassword;privateProgressDialog pDialog;
privateSessionManager session;privateSQLiteHandler db;
@Overridepublic voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);setContentView(R.layout.activity_register);
inputFullName = (EditText) findViewById(R.id.name);inputEmail = (EditText) findViewById(R.id.email);inputPassword = (EditText) findViewById(R.id.password);btnRegister = (Button) findViewById(R.id.btnRegister);
btnLinkToLogin = (Button) findViewById(R.id.btnLinkToLoginScreen);
// Progress dialogpDialog = newProgressDialog(this);pDialog.setCancelable(false);
// Session managersession = newSessionManager(getApplicationContext());
// SQLite database handlerdb = newSQLiteHandler(getApplicationContext());
// Check if user is already logged in or not
if(session.isLoggedIn()) {// User is already logged in. Take him to main activityIntent intent = newIntent(RegisterActivity.this,
MainActivity.class);startActivity(intent);finish();
}
// Register Button Click eventbtnRegister.setOnClickListener(newView.OnClickListener() {
public voidonClick(View view) {
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
32/45
if(!name.isEmpty() && !email.isEmpty() && !password.isEmpty())registerUser(name, email, password);
} else{Toast.makeText(getApplicationContext(),
"Please enter your details!", Toast.LENGTH_LONG)
.show();}
}});
// Link to Login ScreenbtnLinkToLogin.setOnClickListener(newView.OnClickListener() {
public voidonClick(View view) {Intent i = newIntent(getApplicationContext(),
LoginActivity.class);startActivity(i);
finish();}
});
}
/*** Function to store user in MySQL database will post params(tag, name,* email, password) to register url* */
private voidregisterUser(finalString name, finalString email,finalString password) {
// Tag used to cancel the requestString tag_string_req = "req_register";
pDialog.setMessage("Registering ...");showDialog();
StringRequest strReq = newStringRequest(Method.POST,AppConfig.URL_REGISTER, newResponse.Listener() {
@Overridepublic voidonResponse(String response) {
Log.d(TAG, "Register Response: "+ response.toString());hideDialog();
try{JSONObject jObj = newJSONObject(response);booleanerror = jObj.getBoolean("error");if(!error) {
// User successfully stored in MySQL// Now store the user in sqliteString uid = jObj.getString("uid");
JSONObject user = jObj.getJSONObject("user");String name = user.getString("name");
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
33/45
// Inserting row in users tabledb.addUser(name, email, uid, created_at);
Toast.makeText(getApplicationContext(), "User successful
// Launch login activityIntent intent = newIntent(
RegisterActivity.this,LoginActivity.class);
startActivity(intent);finish();
} else{
// Error occurred in registration. Get the error// messageString errorMsg = jObj.getString("error_msg");Toast.makeText(getApplicationContext(),
errorMsg, Toast.LENGTH_LONG).show();}
} catch(JSONException e) {e.printStackTrace();
}
}}, newResponse.ErrorListener() {
@Overridepublic voidonErrorResponse(VolleyError error) {
Log.e(TAG, "Registration Error: "+ error.getMessage());
Toast.makeText(getApplicationContext(),error.getMessage(), Toast.LENGTH_LONG).show();hideDialog();
}}) {
@OverrideprotectedMap getParams() {
// Posting params to register urlMap params = newHashMap();params.put("name", name);params.put("email", email);params.put("password", password);
returnparams;}
};
// Adding request to request queueAppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}
private voidshowDialog() {
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
34/45
private voidhideDialog() {if(pDialog.isShowing())
pDialog.dismiss();}
}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
35/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
36/45
. .xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="${relativePackage}.${activityClass}">
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
37/45
MAINACTIVITY.JAVA
packageinfo.androidhive.loginandregistration;
importinfo.androidhive.loginandregistration.helper.SQLiteHandler;importinfo.androidhive.loginandregistration.helper.SessionManager;
importjava.util.HashMap;
importandroid.app.Activity;importandroid.content.Intent;importandroid.os.Bundle;importandroid.view.View;importandroid.widget.Button;importandroid.widget.TextView;
public classMainActivity extendsActivity {
privateTextView txtName;privateTextView txtEmail;privateButton btnLogout;
privateSQLiteHandler db;privateSessionManager session;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);
txtName = (TextView) findViewById(R.id.name);txtEmail = (TextView) findViewById(R.id.email);btnLogout = (Button) findViewById(R.id.btnLogout);
// SqLite database handlerdb = newSQLiteHandler(getApplicationContext());
// session managersession = newSessionManager(getApplicationContext());
if(!session.isLoggedIn()) {
logoutUser();}
// Fetching user details from sqliteHashMap user = db.getUserDetails();
String name = user.get("name");String email = user.get("email");
// Displaying the user details on the screentxtName.setText(name);txtEmail.setText(email);
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
38/45
@Overridepublic voidonClick(View v) {
logoutUser();}
});
}
/*** Logging out the user. Will set isLoggedIn flag to false in shared* preferences Clears the user data from sqlite users table* */
private voidlogoutUser() {session.setLogin(false);
db.deleteUsers();
// Launching the login activity
Intent intent = newIntent(MainActivity.this, LoginActivity.class);startActivity(intent);finish();
}}
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
39/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
40/45
Tweet1.1k
LikeLike
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
41/45
Advertise Here
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
42/45
Be the first of your friends to like this
AndroidHive34,171 likes
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
43/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
44/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra
45 1/14/2016
-
7/25/2019 AndroidLoginAndRegistration v2
45/45
oid Login and Registration with PHP, MySQL and SQLite http://www.androidhive.info/2012/01/android-login-and-registra