Let’s create the view. first. But I’m not going to show it in the post. Just two text boxes for username and password, two buttons for login and register.
DBHelper.java
- package com.my.members;
- import android.content.Context;
- import android.database.sqlite.SQLiteDatabase;
- import android.database.sqlite.SQLiteOpenHelper;
- public class DBHelper extends SQLiteOpenHelper {
- private static final String DATABASE_NAME = "membersdb";
- private static final int DATABASE_VERSION = 1;
- private static final String DATABASE_CREATE = "CREATE TABLE (_id integer primary key autoincrement,username text not null,password text not null);";
- public DBHelper(Context context) {
- super(context, DATABASE_NAME, null, DATABASE_VERSION);
- }
- @Override
- public void onCreate(SQLiteDatabase db) {
- db.execSQL(DATABASE_CREATE);
- }
- @Override
- public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) {
- db.execSQL("DROP TABLE IF EXISTS members");
- onCreate(db);
- }
- }
DBAdapter.java
- package com.my.members;
- import android.content.ContentValues;
- import android.content.Context;
- import android.database.Cursor;
- import android.database.SQLException;
- import android.database.sqlite.SQLiteDatabase;
- public class DBAdapter
- {
- private static final String DATABASE_TABLE = "members";
- public static final String KEY_ROW_ID = "_id";
- public static final String KEY_USERNAME = "username";
- public static final String KEY_PASSWORD = "password";
- SQLiteDatabase mDb;
- Context mCtx;
- DBHelper mDbHelper;
- public DBAdapter(Context context)
- {
- this.mCtx = context;
- }
- public DBAdapter open() throws SQLException
- {
- mDbHelper = new DBHelper(mCtx);
- mDb = mDbHelper.getWritableDatabase();
- return this;
- }
- public void close()
- {
- mDbHelper.close();
- }
- public long register(String user,String pw)
- {
- ContentValues initialValues = new ContentValues();
- initialValues.put(KEY_USERNAME, user);
- initialValues.put(KEY_PASSWORD, pw);
- return mDb.insert(DATABASE_TABLE, null, initialValues);
- }
- public boolean Login(String username, String password) throws SQLException
- {
- Cursor mCursor = mDb.rawQuery("SELECT * FROM " + DATABASE_TABLE + " WHERE username=? AND password=?", new String[]{username,password});
- if (mCursor != null) {
- if(mCursor.getCount() > 0)
- {
- return true;
- }
- }
- return false;
- }
- }
MembersActivity
- package com.my.members;
- import android.app.Activity;
- import android.content.Context;
- import android.database.SQLException;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.view.inputmethod.InputMethodManager;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Toast;
- public class MembersActivity extends Activity {
- DBAdapter dbAdapter;
- EditText txtUserName;
- EditText txtPassword;
- Button btnLogin;
- Button btnRegister;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- txtUserName = (EditText) findViewById(R.id.et_user);
- txtPassword = (EditText) findViewById(R.id.et_pw);
- btnLogin = (Button) findViewById(R.id.btn_login);
- btnRegister = (Button) findViewById(R.id.btn_reg);
- dbAdapter = new DBAdapter(this);
- dbAdapter.open();
- btnLogin.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
- imm.hideSoftInputFromWindow(txtUserName.getWindowToken(), 0);
- imm.hideSoftInputFromWindow(txtPassword.getWindowToken(), 0);
- String username = txtUserName.getText().toString();
- String password = txtPassword.getText().toString();
- if (username.length() > 0 && password.length() > 0) {
- try {
- if (dbAdapter.Login(username, password)) {
- Toast.makeText(MembersActivity.this,
- "Successfully Logged In", Toast.LENGTH_LONG)
- .show();
- } else {
- Toast.makeText(MembersActivity.this,
- "Invalid username or password",
- Toast.LENGTH_LONG).show();
- }
- } catch (Exception e) {
- Toast.makeText(MembersActivity.this, "Some problem occurred",
- Toast.LENGTH_LONG).show();
- }
- } else {
- Toast.makeText(MembersActivity.this,
- "Username or Password is empty", Toast.LENGTH_LONG).show();
- }
- }
- });
- btnRegister.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
- imm.hideSoftInputFromWindow(txtUserName.getWindowToken(), 0);
- imm.hideSoftInputFromWindow(txtPassword.getWindowToken(), 0);
- try {
- String username = txtUserName.getText().toString();
- String password = txtPassword.getText().toString();
- long i = dbAdapter.register(username, password);
- if(i != -1)
- Toast.makeText(MembersActivity.this, "You have successfully registered",Toast.LENGTH_LONG).show();
- } catch (SQLException e) {
- Toast.makeText(MembersActivity.this, "Some problem occurred",
- Toast.LENGTH_LONG).show();
- }
- }
- });
- }
- }
No comments:
Post a Comment