android 记住密码和自动登录代码
时间: 2024-01-08 19:02:03 浏览: 124
以下是实现 Android 记住密码和自动登录的简单代码示例:
1. 记住密码:
在登录页面的登录按钮点击事件中,添加如下代码:
```java
// 获取账号和密码的EditText
EditText etAccount = findViewById(R.id.et_account);
EditText etPassword = findViewById(R.id.et_password);
// 获取记住密码的CheckBox
CheckBox cbRememberPwd = findViewById(R.id.cb_remember_pwd);
if (cbRememberPwd.isChecked()) {
// 如果勾选了记住密码,则将账号和密码保存到SharedPreferences中
SharedPreferences sp = getSharedPreferences("login_info", MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
editor.putString("account", etAccount.getText().toString());
editor.putString("password", etPassword.getText().toString());
editor.putBoolean("remember_pwd", true);
editor.apply();
} else {
// 如果没有勾选记住密码,则清空SharedPreferences中的账号和密码
SharedPreferences sp = getSharedPreferences("login_info", MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
editor.remove("account");
editor.remove("password");
editor.putBoolean("remember_pwd", false);
editor.apply();
}
```
2. 自动登录:
在应用启动的时候,在 onCreate() 方法中添加如下代码:
```java
// 获取保存的账号和密码
SharedPreferences sp = getSharedPreferences("login_info", MODE_PRIVATE);
String account = sp.getString("account", "");
String password = sp.getString("password", "");
boolean rememberPwd = sp.getBoolean("remember_pwd", false);
if (rememberPwd) {
// 如果勾选了记住密码,则填充账号和密码,并且自动登录
EditText etAccount = findViewById(R.id.et_account);
EditText etPassword = findViewById(R.id.et_password);
etAccount.setText(account);
etPassword.setText(password);
// 在这里添加登录操作,即可实现自动登录
}
```
注意:在自动登录的时候,需要先检查账号和密码是否为空,如果为空,则不能自动登录。同时,为了保障账号和密码的安全,需要对密码进行加密存储。
阅读全文