是否缓存了 SharedPreference 实例? (通过 PreferenceManager.getDefaultSharedPreferences())
Are SharedPreference instances cached? (Through PreferenceManager.getDefaultSharedPreferences())
在我的应用程序中,我调用:
PreferenceManager.getDefaultSharedPreferences(context);
这又在内部调用了它。
public static SharedPreferences getDefaultSharedPreferences(Context context) {
return context.getSharedPreferences(getDefaultSharedPreferencesName(context),
getDefaultSharedPreferencesMode());
}
Context
是抽象的,因此实现可能相互派生,但是 我想知道的是每次调用是否都会创建 SharedPreferences
的新实例;或者如果它在内部重新使用一个实例?
当您调用它时,只有一个 SharedPreferences
实例。参考context.getSharedPreferences
docs
在我的应用程序中,我调用:
PreferenceManager.getDefaultSharedPreferences(context);
这又在内部调用了它。
public static SharedPreferences getDefaultSharedPreferences(Context context) {
return context.getSharedPreferences(getDefaultSharedPreferencesName(context),
getDefaultSharedPreferencesMode());
}
Context
是抽象的,因此实现可能相互派生,但是 我想知道的是每次调用是否都会创建 SharedPreferences
的新实例;或者如果它在内部重新使用一个实例?
当您调用它时,只有一个 SharedPreferences
实例。参考context.getSharedPreferences
docs