Android学习(20) -- 数据存储之SharedPreferences(存储账号密码)
2016-04-13 05:51
561 查看
SharedPreferences
SharedPreference是Android提供的一种轻量级的数据存储方式,主要用来存储一些简单的配置信息,例如,默认欢迎语,登录用户名和密码等。其以键值对的方式存储,使得我们能很方便进行读取和存入。SharedPreference 文件保存在/data/data/< package name > /shared_prefs 路径下
通过Activity自带的getSharedPreferences方法,可以得到SharedPreferences对象。
public abstract SharedPreferences getSharedPreferences (String name, int mode);
name:表示保存后 xml 文件的名称
mode:表示 xml 文档的操作权限模式(私有,可读,可写),使用0或者MODE_PRIVATE作为默认的操作权限模式。
往SharedPreferences里写数据
数据的存入是通过SharedPreferences对象的编辑器对象Editor来实现的。通过编辑器函数设置键值,然后调用commit()提交设置,写入xml文件。
//拿到一个SharedPreferences对象 SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE); //拿到编辑器 Editor ed = sp.edit(); //写数据 ed.putBoolean("name", name); ed.commit();
从SharedPreferences里取数据
通过SharedPreferences对象的键key可以获取到对应key的键值。
SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE); //从SharedPreference里取数据 String name = sp.getBoolean("name", "");
代码
登录保存账号和密码
public void login(View v){ String name = et_name.getText().toString(); String pass = et_pass.getText().toString(); CheckBox cb = (CheckBox) findViewById(R.id.cb); //判断选框是否被勾选 if(cb.isChecked()){ //使用sharedPreference来保存用户名和密码 //路径在data/data/com.exp.sharedpreference/shared_prefs SharedPreferences sp = getSharedPreferences("info", MODE_PRIVATE); //拿到sp的编辑器 Editor ed = sp.edit(); ed.putString("name", name); ed.putString("pass", pass); //提交 ed.commit(); } //创建并显示吐司对话框 Toast.makeText(this, "登录成功", 0).show(); }
读取账号和密码
public void readAccount(){ SharedPreferences sp = getSharedPreferences("info", MODE_PRIVATE); String name = sp.getString("name", ""); String pass = sp.getString("pass", ""); et_name.setText(name); et_pass.setText(pass); }
相关文章推荐
- Android打包混淆实战总结
- Android之广播机制—静态注册
- Android Studio问题&解决办法集合(不定期更新)
- Android Studio实现代码混淆
- Android Studio实现代码混淆
- Android View分区域点击实现方案——1.根据坐标范围
- Android SDK Manager 更新代理配置
- Android中Bitmap,byte[],Drawable相互转化
- 关于Android中Activity之间socket传递的问题
- Android ListView实现上拉到底部的时候自动刷新数据
- Android动态加载基础 ClassLoader工作机制
- Qt for Android环境搭建浅谈
- Android BottomNavigationBar的使用
- Java加密解密工具(适用于JavaSE/JavaEE/Android)
- Android 编码规范
- Android_基础知识掌握
- android listview 执行notifyDataSetChanged 不更新数据的原因
- Android 软键盘弹出时布局内指定内容上移实现及问题解决
- 这家Android培训机构 备受学员关注
- Android进阶学习-一般动画(使用Animation封装特效工具类1)