· 8 years ago · Mar 14, 2018, 10:10 AM
1import java.util.ArrayList;
2import java.util.List;
3
4import android.content.ContentValues;
5import android.content.Context;
6import android.database.Cursor;
7import android.database.sqlite.SQLiteDatabase;
8import android.database.sqlite.SQLiteOpenHelper;
9
10public class DBHandler extends SQLiteOpenHelper {
11
12 // All Static variables
13 // Database Version
14 private static final int DATABASE_VERSION = 1;
15
16 // Database Name
17 private static final String DATABASE_NAME = "contactsManager.db";
18
19 // Contacts table name
20 private static final String TABLE_CONTACTS = "contacts";
21
22 // Contacts Table Columns names
23 private static final String KEY_ID = "id";
24 private static final String KEY_NAME = "name";
25 private static final String KEY_PH_NO = "phone_number";
26
27 public DBHandler(Context context) {
28 super(context, DATABASE_NAME, null, DATABASE_VERSION);
29 }
30
31 // Creating Tables
32 @Override
33 public void onCreate(SQLiteDatabase db) {
34 String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "("
35 + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
36 + KEY_PH_NO + " TEXT" + ")";
37 db.execSQL(CREATE_CONTACTS_TABLE);
38 }
39
40 // Upgrading database
41 @Override
42 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
43 // Drop older table if existed
44 db.execSQL("DROP TABLE IF EXISTS " + TABLE_CONTACTS);
45
46 // Create tables again
47 onCreate(db);
48 }
49
50 /**
51 * All CRUD(Create, Read, Update, Delete) Operations
52 */
53
54 // Adding new contact
55 void addContact(User contact) {
56 SQLiteDatabase db = this.getWritableDatabase();
57
58 ContentValues values = new ContentValues();
59 values.put(KEY_NAME, contact.getUsername()); // Contact Name
60 values.put(KEY_PH_NO, contact.getPassword()); // Contact Phone
61
62 // Inserting Row
63 db.insert(TABLE_CONTACTS, null, values);
64 db.close(); // Closing database connection
65
66 }
67
68 // Getting single contact
69 User getContact(int id) {
70 SQLiteDatabase db = this.getReadableDatabase();
71
72 Cursor cursor = db.query(TABLE_CONTACTS, new String[] { KEY_ID,
73 KEY_NAME, KEY_PH_NO }, KEY_ID + "=?",
74 new String[] { String.valueOf(id) }, null, null, null, null);
75 if (cursor != null)
76 cursor.moveToFirst();
77
78 User contact = new User(Integer.parseInt(cursor.getString(0)),
79 cursor.getString(1), cursor.getString(2));
80
81 return contact;
82 }
83 public boolean checkUser(String Username, String Password) {
84
85 // array of columns to fetch
86 String[] columns = {
87 KEY_ID
88 };
89 SQLiteDatabase db = this.getReadableDatabase();
90 // selection criteria
91 String selection = KEY_NAME + " = ?" + " AND " + KEY_PH_NO + " = ?";
92
93 // selection arguments
94 String[] selectionArgs = {Username, Password};
95
96 // query user table with conditions
97 /**
98 * Here query function is used to fetch records from user table this function works like we use sql query.
99 * SQL query equivalent to this query function is
100 * SELECT user_id FROM user WHERE user_email = 'jack@androidtutorialshub.com' AND user_password = 'qwerty';
101 */
102 Cursor cursor = db.query(TABLE_CONTACTS, //Table to query
103 columns, //columns to return
104 selection, //columns for the WHERE clause
105 selectionArgs, //The values for the WHERE clause
106 null, //group the rows
107 null, //filter by row groups
108 null); //The sort order
109
110 int cursorCount = cursor.getCount();
111
112 cursor.close();
113 db.close();
114 if (cursorCount > 0) {
115 return true;
116 }
117 else {
118 return false;
119 }
120 }
121
122
123 String getUser(String Username) {
124 SQLiteDatabase db = this.getReadableDatabase();
125
126 Cursor cursor = db.query(TABLE_CONTACTS, new String[] { KEY_ID,
127 KEY_NAME, KEY_PH_NO }, KEY_NAME + "=?",
128 new String[] { String.valueOf(Username) }, null, null, null, null);
129 if (cursor != null)
130 cursor.moveToFirst();
131
132 User contact = new User(Integer.parseInt(cursor.getString(0)),
133 cursor.getString(1), cursor.getString(2));
134
135 return contact.getUsername();
136 }
137
138 // Getting All Contacts
139 public List<User> getAllContacts() {
140 List<User> contactList = new ArrayList<User>();
141 // Select All Query
142 String selectQuery = "SELECT * FROM " + TABLE_CONTACTS;
143
144 SQLiteDatabase db = this.getWritableDatabase();
145 Cursor cursor = db.rawQuery(selectQuery, null);
146
147 // looping through all rows and adding to list
148 if (cursor.moveToFirst()) {
149 do {
150 User contact = new User();
151 contact.setID(Integer.parseInt(cursor.getString(0)));
152 contact.setUsername(cursor.getString(1));
153 contact.setPassword(cursor.getString(2));
154 // Adding contact to list
155 contactList.add(contact);
156 } while (cursor.moveToNext());
157 }
158
159 // return contact list
160 return contactList;
161 }
162
163 // Updating single contact
164 public int updateContact(User contact) {
165 SQLiteDatabase db = this.getWritableDatabase();
166
167 ContentValues values = new ContentValues();
168 values.put(KEY_NAME, contact.getUsername());
169 values.put(KEY_PH_NO, contact.getPassword());
170
171 // updating row
172 return db.update(TABLE_CONTACTS, values, KEY_ID + " = ?",
173 new String[] { String.valueOf(contact.getID()) });
174 }
175
176 // Deleting single contact
177 public void deleteContact(User contact) {
178 SQLiteDatabase db = this.getWritableDatabase();
179 db.delete(TABLE_CONTACTS, KEY_ID + " = ?",
180 new String[] { String.valueOf(contact.getID()) });
181 db.close();
182 }
183
184
185 // Getting contacts Count
186 public int getContactsCount() {
187 String countQuery = "SELECT * FROM " + TABLE_CONTACTS;
188 SQLiteDatabase db = this.getReadableDatabase();
189 Cursor cursor = db.rawQuery(countQuery, null);
190 cursor.close();
191
192 // return count
193 return cursor.getCount();
194 }
195
196}
197
198/**
199 * Created by asemJr on 2/12/2018.
200 */
201
202public class User {
203 public String Username;
204 public String Password;
205 public int ID;
206
207 public User( int ID,String username, String password) {
208 this.Username = username;
209 this.Password = password;
210 this.ID = ID;
211 }
212
213 public User() {
214 }
215
216 @Override
217 public String toString() {
218 return "User{" +
219 "Username='" + Username + ''' +
220 ", Password='" + Password + ''' +
221 ", ID=" + ID +
222 '}';
223 }
224
225 public String getUsername() {
226 return Username;
227 }
228
229 public void setUsername(String username) {
230 Username = username;
231 }
232
233 public String getPassword() {
234 return Password;
235 }
236
237 public void setPassword(String password) {
238 Password = password;
239 }
240
241 public int getID() {
242 return ID;
243 }
244
245 public void setID(int ID) {
246 this.ID = ID;
247 }
248}
249
250package com.itdel.asemjr.dwgapps;
251
252import android.bluetooth.BluetoothAdapter;
253import android.content.Intent;
254import android.database.sqlite.SQLiteDatabase;
255import android.database.sqlite.SQLiteOpenHelper;
256import android.os.Bundle;
257import android.os.Message;
258import android.support.v7.app.AppCompatActivity;
259
260/**
261 * Created by asemJr on 2/2/2018.
262 */
263
264
265import android.view.View;
266import android.view.Window;
267import android.view.WindowManager;
268import android.widget.Button;
269import android.widget.EditText;
270import android.widget.TextView;
271import android.widget.Toast;
272
273import java.util.List;
274
275import static java.lang.Boolean.FALSE;
276import static java.lang.Boolean.TRUE;
277
278/**
279 * Created by asemJr on 2/9/2018.
280 */
281
282public class Autentikasi extends AppCompatActivity {
283
284 SQLiteOpenHelper openHelper;
285 SQLiteDatabase DWGApps;
286
287 @Override
288 protected void onCreate(Bundle savedInstanceState) {
289 super.onCreate(savedInstanceState);
290 setContentView(R.layout.login);
291 Window w = getWindow();
292 w.setFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS,
293 WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS |
294 WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
295 w.setStatusBarColor(getResources().getColor(R.color.colorPrimaryDark));
296
297 BluetoothAdapter bluetoothAdapter=BluetoothAdapter.getDefaultAdapter();
298 if (bluetoothAdapter == null) {
299
300 Toast.makeText(getApplicationContext(),"Device doesnt Support Bluetooth",Toast.LENGTH_SHORT).show();
301 // Message.message(getApplicationContext(),"Insertion Successful");
302 }
303 else {
304 Toast.makeText(getApplicationContext(),"Device Support Bluetooth",Toast.LENGTH_SHORT).show();
305
306
307 }
308
309
310// DBHandler db = new DBHandler(this);
311//// Log.d("Insert: ", "Inserting ..");
312// db.addUser(new User(22, "as", "ss"));
313// db.addUser(new User(221, "ass", "sas"));
314//
315// Log.d("Reading: ", "Reading all contacts..");
316// List<User> users = db.getAllUser();
317//
318// for (User us : users) {
319// String log = "ID: " + us.getID() + " ,Username: " + us.getUsername() + " ,Password: " + us.getPassword();
320// // Writing Contacts to log
321// Log.d("Name: ", log);
322
323 EditText EUsername = (EditText) findViewById(R.id.userName);
324 EditText EUserPassword = (EditText) findViewById(R.id.userPassword);
325 Button BMasuk = (Button) findViewById(R.id.BMasuk);
326
327 DBHandler login = new DBHandler(this);
328 //login.addContact(new User(4,"admin", "admin"));
329 String Username = EUsername.getText().toString();
330 String Password = EUserPassword.getText().toString();
331
332 final Boolean Login = login.checkUser(Username,Password);
333
334 BMasuk.setOnClickListener(new View.OnClickListener() {
335 public void onClick(View v) {
336
337 if (Login) {
338 Toast.makeText(Autentikasi.this, "Username and password is correct",
339 Toast.LENGTH_SHORT).show();
340 Intent ILogin = new Intent(getApplicationContext(), MainActivity.class);
341 startActivity(ILogin);
342 }
343 else {
344 Toast.makeText(Autentikasi.this, "NOT ",
345 Toast.LENGTH_SHORT).show();
346 }
347
348 // Do something in response to button click
349 }
350 });
351
352 }
353 }