使用SharedPreferences实现记住密码和自动登录
来源:互联网 发布:网络拓扑结构及配置 编辑:程序博客网 时间:2024/04/29 15:29
今天,来为大家分享一下通过SharedPreferences来实现QQ自动登录与记住密码:
SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。
接下来为大家粘上代码:
public class MainActivity extends AppCompatActivity { private Button btLogin; private EditText etAccount, etPassword; private CheckBox cbLogSelf, cbRemPsd; private Intent intent; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btLogin = (Button) findViewById(R.id.btLogin); etAccount = (EditText) findViewById(R.id.etAccount); etPassword = (EditText) findViewById(R.id.etPassword); cbLogSelf = (CheckBox) findViewById(R.id.cbLogSelf); cbRemPsd = (CheckBox) findViewById(R.id.cbRemPsd); //创建一个私有的名为config的文件,可以向里面存储数据 final SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE); //定义一个编辑器 可以实现数据的存储与修改 final SharedPreferences.Editor edit = sp.edit(); intent = new Intent(MainActivity.this, FinishActivity.class); if (sp.getBoolean("isRem", true)) { cbRemPsd.setChecked(true); //通过sp在config中得到账号与密码并赋值给输入框上 etAccount.setText(sp.getString("account", "")); etPassword.setText(sp.getString("password", "")); } //自动跳转到下一界面 if (sp.getBoolean("isSelf", true)) { cbLogSelf.setChecked(true); startActivity(intent); } cbRemPsd.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { Toast.makeText(MainActivity.this, "已勾选", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "未勾选", Toast.LENGTH_SHORT).show(); //记住密码未勾选时,自动登录也不会勾选 cbLogSelf.setChecked(false); } } }); cbLogSelf.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { /** * 实现自动登录与记住密码的关联 * 当点击自动登录时,记住密码也同时勾选 */ cbRemPsd.setChecked(true); } } }); btLogin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //进行非空判断 String account = etAccount.getText().toString().trim(); String password = etPassword.getText().toString().trim(); if (TextUtils.isEmpty(account) || TextUtils.isEmpty(password)) { Toast.makeText(MainActivity.this, "账号与密码都不能为空", Toast.LENGTH_SHORT).show(); } else { /** * 记住密码 */ if (cbRemPsd.isChecked()) { edit.putString("account", etAccount.getText().toString()); edit.putString("password", etPassword.getText().toString()); edit.putBoolean("isRem", true); edit.commit(); } else { edit.putString("account", ""); edit.putString("password", ""); edit.putBoolean("isRem", false); edit.commit(); } /** * 自动登录 */ if (cbLogSelf.isChecked()) { edit.putBoolean("isSelf", true); edit.commit(); } else { edit.putBoolean("isSelf", false); edit.commit(); } startActivity(intent); } } }); }}
分享到这里 ,希望能帮到大家。
阅读全文
0 0
- 使用SharedPreferences实现记住密码和自动登录
- Android-SharedPreferences实现记住密码和自动登录
- 利用SharedPreferences实现记住密码和自动登录
- 使用SharedPreferences来实现记住密码和自动登陆
- SharedPreferences实现记住密码和自动
- Android——SharedPreferences实现登录界面的记住密码和自动登录功能
- Android——SharedPreferences实现登录界面的记住密码和自动登录功能
- Android自动登录 记住用户名密码实现 SharedPreferences
- Android自动登录 记住用户名密码实现 SharedPreferences
- Android自动登录 记住用户名密码实现 SharedPreferences
- Android自动登录 记住用户名密码实现 SharedPreferences
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法) .
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- html+css+js基础学习
- 使用 Android 自定义通知Notification时遇到的问题
- 如果遇到压缩的网页怎么办?
- 正则表达式基础讲解
- android之微信最新版的sdk接入微信授权登陆和数据回调
- 使用SharedPreferences实现记住密码和自动登录
- python是通过thrift来操作hbase的示例程序
- 全文检索引擎Solr系列—–全文检索基本原理
- mysql 日期值insert 到 oracle
- jsp中使用Cookie统计网站访问次数
- 详解contextConfigLocation|Spring启动过程详解
- angularjs的$window对象
- composer的使用和安装
- java简介