Android数据存储之SharedPreferences

阅读更多

1.适用场合:类似于ini文件,用来保存程序的一些属性设置

2.使用方式:通过getSharedPreferences方法获得Preferences对象,获得editor对象,使用editor.put……()方法添加数据,最后通过commit()方法保存这些数据

3.保存参数:自动保存到XML文件,路径为/data/data/包名/shared_prefs文件夹下

SharedPreferences preferences = getSharedPreferences("kesenhoo", Context.MODE_PRIVATE); String name = preferences.getString("name", ""); int age = preferences.getInt("age", 20); nameText.setText(name); ageText.setText(String.valueOf(age));

4.读取参数:

SharedPreferences preferences = getSharedPreferences("kesenhoo", Context.MODE_PRIVATE); String name = preferences.getString("name", ""); int age = preferences.getInt("age", 20); nameText.setText(name); ageText.setText(String.valueOf(age));

5.注意事项:默认情况其他应用程序不可以访问本程序的SharedPreferences文件,如果需要访问其他应用程序的SharedPreferences的配置文件,可以使用如下方法:

关键点:学习如何构造其他应用的上下文对象

Context otherContext = getContext().createPackageContext("com.hoo.preferences",Context.CONTEXT_IGNORE_SECURITY);

SharedPreferences preferences = otherContext.getSharedPreferences("kesenhoo", Context.MODE_PRIVATE);

//下面的包名应该是需要访问的其他程序的所在位置,并设置为忽视安全问题

//下面的包名应该是需要访问的其他程序的所在位置,并设置为忽视安全问题 Context otherContext = getContext().createPackageContext("com.hoo.preferences", Context.CONTEXT_IGNORE_SECURITY); SharedPreferences preferences = otherContext.getSharedPreferences("kesenhoo", Context.MODE_PRIVATE); String name = preferences.getString("name", ""); int age = preferences.getInt("age", 20); Log.i(TAG, "name="+ name + ",age="+ age);


你可能感兴趣的:(Android,Security,XML)