要在Android應用中實現登錄功能,您需要以下步驟:
以下是一個簡單的示例代碼來實現登錄功能:
public class LoginActivity extends AppCompatActivity {
private EditText etUsername, etPassword;
private Button btnLogin;
private SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
etUsername = findViewById(R.id.et_username);
etPassword = findViewById(R.id.et_password);
btnLogin = findViewById(R.id.btn_login);
// 創建或打開數據庫
db = openOrCreateDatabase("user_db", Context.MODE_PRIVATE, null);
// 創建用戶表
db.execSQL("CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT, password TEXT)");
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String username = etUsername.getText().toString();
String password = etPassword.getText().toString();
// 查詢數據庫
Cursor cursor = db.rawQuery("SELECT * FROM users WHERE username=? AND password=?", new String[] {username, password});
if (cursor.getCount() > 0) {
// 登錄成功,跳轉到主界面
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
startActivity(intent);
} else {
// 登錄失敗,顯示錯誤消息
Toast.makeText(LoginActivity.this, "登錄失敗,請檢查用戶名和密碼", Toast.LENGTH_SHORT).show();
}
cursor.close();
}
});
}
@Override
protected void onDestroy() {
super.onDestroy();
// 關閉數據庫連接
if (db != null) {
db.close();
}
}
}
請注意,此示例僅為演示目的,并不是一個完整的實現。您還需要做一些額外的工作,如對密碼進行加密存儲,處理用戶注冊等功能。希望這可以幫助您開始實現登錄功能。