0% found this document useful (0 votes)
8 views2 pages

Practical 27

The document outlines the implementation of a simple Android login application using SQLite for user authentication. It includes the layout files for the login and success screens, as well as the Java classes for handling database operations and user interactions. Key functionalities include creating a user table, checking login credentials, and displaying success or failure messages based on user input.

Uploaded by

janhavirhude
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views2 pages

Practical 27

The document outlines the implementation of a simple Android login application using SQLite for user authentication. It includes the layout files for the login and success screens, as well as the Java classes for handling database operations and user interactions. Key functionalities include creating a user table, checking login credentials, and displaying success or failure messages based on user input.

Uploaded by

janhavirhude
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Practical 27 import android.content.

ContentValues;
import android.content.Context;
import android.database.Cursor;
Activity_login.xml import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout public class DatabaseHelper extends SQLiteOpenHelper {
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" private static final String DATABASE_NAME =
android:layout_width="match_parent" "loginapp.db";
android:layout_height="match_parent" private static final int DATABASE_VERSION = 1;
android:orientation="vertical" private static final String TABLE_NAME = "users";
android:gravity="center" private static final String COLUMN_ID = "id";
android:padding="20dp"> private static final String COLUMN_USERNAME =
"username";
<EditText private static final String COLUMN_PASSWORD =
android:id="@+id/editTextUsername" "password";
android:layout_width="match_parent"
android:layout_height="wrap_content" public DatabaseHelper(Context context) {
android:hint="Enter Username" super(context, DATABASE_NAME, null,
tools:ignore="TouchTargetSizeCheck" /> DATABASE_VERSION);
}
<EditText
android:id="@+id/editTextPassword" @Override
android:layout_width="match_parent" public void onCreate(SQLiteDatabase db) {
android:layout_height="wrap_content" String createTable = "CREATE TABLE " + TABLE_NAME
android:hint="Enter Password" + " (" +
android:inputType="textPassword" COLUMN_ID + " INTEGER PRIMARY KEY
tools:ignore="TouchTargetSizeCheck" /> AUTOINCREMENT, " +
COLUMN_USERNAME + " TEXT UNIQUE, " +
<Button COLUMN_PASSWORD + " TEXT)";
android:id="@+id/btnLogin" db.execSQL(createTable);
android:layout_width="match_parent"
android:layout_height="wrap_content" // Insert a default user for testing
android:text="Login" /> ContentValues values = new ContentValues();
values.put(COLUMN_USERNAME, "admin");
</LinearLayout> values.put(COLUMN_PASSWORD, "12345"); // Default
password
db.insert(TABLE_NAME, null, values);
}
Activity_success.xml
@Override
<?xml version="1.0" encoding="utf-8"?>
public void onUpgrade(SQLiteDatabase db, int oldVersion,
<LinearLayout
int newVersion) {
xmlns:android="http://schemas.android.com/apk/res/android"
db.execSQL("DROP TABLE IF EXISTS " +
android:layout_width="match_parent"
TABLE_NAME);
android:layout_height="match_parent"
onCreate(db);
android:gravity="center"
}
android:orientation="vertical"
android:padding="20dp">
// Check login credentials
public boolean checkUser(String username, String password)
<TextView
{
android:id="@+id/textViewSuccess"
SQLiteDatabase db = this.getReadableDatabase();
android:layout_width="wrap_content"
String query = "SELECT * FROM " + TABLE_NAME + "
android:layout_height="wrap_content"
WHERE " + COLUMN_USERNAME + "=? AND " +
android:text="Login Successful!"
COLUMN_PASSWORD + "=?";
android:textSize="22sp"
Cursor cursor = db.rawQuery(query, new
android:textStyle="bold"/>
String[]{username, password});
</LinearLayout>
boolean exists = (cursor.getCount() > 0);
cursor.close();
DataBaseHelper.java db.close();
return exists;
package com.example.loginapp; }
}
mainacitivity.java @Override
protected void onCreate(Bundle savedInstanceState) {
package com.example.loginapp; super.onCreate(savedInstanceState);
setContentView(R.layout.activity_success);
import android.content.Intent;
import android.os.Bundle; TextView textView = findViewById(R.id.textViewSuccess);
import android.view.View; textView.setText("Welcome! You have logged in
import android.widget.Button; successfully.");
import android.widget.EditText; }
import android.widget.Toast; }
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

EditText editTextUsername, editTextPassword;


Button btnLogin;
DatabaseHelper dbHelper; Output:-

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);

editTextUsername =
findViewById(R.id.editTextUsername);
editTextPassword = findViewById(R.id.editTextPassword);
btnLogin = findViewById(R.id.btnLogin);

dbHelper = new DatabaseHelper(this);

btnLogin.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
String username =
editTextUsername.getText().toString().trim();
String password =
editTextPassword.getText().toString().trim();

if (dbHelper.checkUser(username, password)) {
Toast.makeText(MainActivity.this, "Login
Successful!", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(MainActivity.this,
SuccessActivity.class);
startActivity(intent);
} else {
Toast.makeText(MainActivity.this, "Login Failed!
Invalid Credentials.", Toast.LENGTH_SHORT).show();
}
}
});
}
}

SuccessAcitivity.java
package com.example.loginapp;

import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class SuccessActivity extends AppCompatActivity {

You might also like