1.SharePreference 作用 存储在什么地方
SharedPreferences是Android SDK提供的工具,可以存储应用的一些配置信息,这些信息会以键值对的形式保存在/sdcard/data/data/packageName/shared_prefs/路径下的一个xml文件中。它提供了多种数据类型的存储,包括:int、long、boolean、float、String以及Set
2.SharedPreferences的实例一般会有两种方式:
- context.getSharedPreference(name, mode);
public SharedPreferences getSharedPreferences(String name, int mode) {
return mBase.getSharedPreferences(name, mode);
}
存储路径data/data/packageName/shared_prefs/name, 是以xml存储的
- PreferenceManager.getDefaultSharedPreferences(context);
会使用系统默认的文件名(PackageName + "_preferences")创建存储信息的文件
public static SharedPreferences getDefaultSharedPreferences(Context context) {
return context.getSharedPreferences(
getDefaultSharedPreferencesName(context), getDefaultSharedPreferencesMode());
}
private static String getDefaultSharedPreferencesName(Context context) {
return context.getPackageName() + "_preferences";
}
private static int getDefaultSharedPreferencesMode() {
return Context.MODE_PRIVATE;
}
存储路径/data/data/com.example.aopdemoproxy/shared_prefs/com.example.aopdemoproxy_preferences.xml
备注:在真正get数据之前是要判断文件加载状态的, 如果没有加载出来,那就要等待, 如果应用均使用一个文件存储数据,文件过大会导致数据读取慢, 尽量使用 第一种创建方式,分开存储提升get数据速度。