android 使用sharedPreferences保存用户设置的参数
官方文档介绍:
Using Shared Preferences
TheSharedPreferences
class provides a general framework that allows you to save and retrieve persistent key-value pairs of primitive data types. You can useSharedPreferences
to save any primitive data: booleans, floats, ints, longs, and strings. This data will persist across user sessions (even if your application is killed).
User Preferences
Shared preferences are not strictly for saving "user preferences," such as what ringtone a user has chosen. If you're interested in creating user preferences for your application, seePreferenceActivity
, which provides an Activity framework for you to create user preferences, which will be automatically persisted (using shared preferences).
To get aSharedPreferences
object for your application, use one of two methods:
-
getSharedPreferences()
- Use this if you need multiple preferences files identified by name, which you specify with the first parameter. -
getPreferences()
- Use this if you need only one preferences file for your Activity. Because this will be the only preferences file for your Activity, you don't supply a name.
To write values:
- Call
edit()
to get aSharedPreferences.Editor
. - Add values with methods such as
putBoolean()
andputString()
. - Commit the new values with
commit()
To read values, useSharedPreferences
methods such asgetBoolean()
andgetString()
.
a.示例程序:保存用户设置的数据
/** * 保存各项参数 * @param name 姓名 * @param age 年龄 */public void save(String name, int age) {SharedPreferences preferences = context.getSharedPreferences("preferences", Context.MODE_PRIVATE);Editor edit = preferences.edit();edit.putString("name", name);edit.putInt("age", age);edit.commit();}
在保存之后,sharedPreferences将会把数据保存在 /data/data/<应用程序包名>/shared_pres/目录下,且使用xml方式保存数据
示例程序保存的数据是:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?><map><int name="age" value="23" /><string name="name">g形成</string></map>
/** * @return 返回参数设置数据 */public Map<String, String > getPreferences(){Map<String, String> params = new HashMap<String, String>();SharedPreferences sp = context.getSharedPreferences("preferences", Context.MODE_PRIVATE);params.put("name", sp.getString("name", ""));params.put("age", String.valueOf(sp.getInt("age", 0)));return params;}
更多相关文章
- SpringBoot 2.0 中 HikariCP 数据库连接池原理解析
- 一句话锁定MySQL数据占用元凶
- andriod之ContentProvider读取外部存储图片
- android获取网页数据的几种方式
- Android(安卓)SQLite数据库学习笔记
- Parcel了解
- 使用SmartRefreshLayout 给RecyclerView 添加反弹效果示例
- Android(安卓)定时到服务器取数据并刷新
- x、Android保存图片至相册原生代码