· 6 years ago · Mar 06, 2019, 03:08 PM
1lsLogin.setOnClickListener (new OnClickListener() {
2
3 @Override
4 public void onClick(View v) {
5 //check login
6 String username = lsUsername.getText().toString();
7 String password = lsPassword.getText().toString();
8 try{
9 if(LoginDB.Login(username,password)) {
10 Intent goToNextActivity = new Intent(getApplicationContext(), menu.class);
11 startActivity(goToNextActivity);
12
13 Toast.makeText(LoginScrExample.this,"Login Sucessful",Toast.LENGTH_LONG).show();
14 }else{
15 Toast.makeText(LoginScrExample.this,"Invalid Username/Password",Toast.LENGTH_LONG).show();
16 }
17 }
18 catch(Exception err)
19 {
20 Toast.makeText(LoginScrExample.this," Something is wrong " + err.getMessage(),Toast.LENGTH_LONG).show();
21 }
22
23public LoginDB(Context context) {
24 super(context, DATABASE_NAME, null, DATABASE_VERSION);
25 // TODO Auto-generated constructor stub
26 }
27
28 @Override
29 public void onCreate(SQLiteDatabase db) {
30 // TODO Auto-generated method stub
31
32 String sqlDataStore = "create table if not exists " +
33 TABLE_NAME_CREDENTIALS + " ("+ BaseColumns._ID + " integer primary key autoincrement,"
34
35 + COLUMN_NAME_USERNAME + " text not null,"
36 + COLUMN_NAME_PASSWORD + " text not null);";
37
38 db.execSQL(sqlDataStore);
39 }
40
41 @Override
42 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
43 // TODO Auto-generated method stub
44 if(oldVersion == 1 && newVersion == 2){
45 //Upgrade the database
46 }
47
48}
49
50 public static boolean Login(String username, String password) {
51 Cursor c = DBHelper.getReadableDatabase().rawQuery(
52 "SELECT * FROM " + TABLE_NAME_CREDENTIALS + " WHERE "
53 + COLUMN_NAME_USERNAME + "='" + username +"'AND "+COLUMN_NAME_PASSWORD+"='"+ password +"'" , null);
54 if (c.getCount()>0)
55 return true;
56 return false;
57 }
58
59 public void open() {
60 // TODO Auto-generated method stub
61 db = DBHelper.getWritableDatabase();
62 }
63 public void close() {
64 DBHelper.close();
65 }
66
67public static boolean Login(String username, String password) throws SQLException
68 {
69 Cursor mCursor = db.rawQuery("SELECT * FROM " + TABLE_NAME_CREDENTIALS + " WHERE username=? AND password=?",
70 new String[]{username,password});
71 if(mCursor !=null) {
72 if(mCursor.getCount()>0)
73 {
74 return true;
75 }
76 }
77 return false;
78 }
79
8008-23 13:38:24.034: W/System.err(1027): java.lang.NullPointerException
81 08-23 13:38:24.034: W/System.err(1027): at com.LoginScr.Example.LoginDB.Login(LoginDB.java:58)
82 08-23 13:38:24.043: W/System.err(1027): at com.LoginScr.Example.LoginScrExample$1.onClick(LoginScrExample.java:50)
83 08-23 13:38:24.043: W/System.err(1027): at android.view.View.performClick(View.java:3511)
84 08-23 13:38:24.043: W/System.err(1027): at android.view.View$PerformClick.run(View.java:14105)
85 08-23 13:38:24.054: W/System.err(1027): at android.os.Handler.handleCallback(Handler.java:605)
86 08-23 13:38:24.054: W/System.err(1027): at android.os.Handler.dispatchMessage(Handler.java:92)
87 08-23 13:38:24.054: W/System.err(1027): at android.os.Looper.loop(Looper.java:137)
88 08-23 13:38:24.054: W/System.err(1027): at android.app.ActivityThread.main(ActivityThread.java:4424)
89 08-23 13:38:24.083: W/System.err(1027): at java.lang.reflect.Method.invokeNative(Native Method)
90 08-23 13:38:24.083: W/System.err(1027): at java.lang.reflect.Method.invoke(Method.java:511)
91 08-23 13:38:24.094: W/System.err(1027): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
92 08-23 13:38:24.094: W/System.err(1027): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
93 08-23 13:38:24.094: W/System.err(1027): at dalvik.system.NativeStart.main(Native Method)
94
95"SELECT * FROM " + TABLE_NAME_CREDENTIALS + " WHERE "
96 + COLUMN_NAME_USERNAME + "='" + username +"'AND "+
97
98DBHelper.getReadableDatabase().rawQuery(
99 "SELECT * FROM " + TABLE_NAME_CREDENTIALS + " WHERE "
100 + COLUMN_NAME_USERNAME + " = '" + username +"' AND "+COLUMN_NAME_PASSWORD+" = '"+ password +"'" , null);