是否缓存了 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