Настройки Android - в чем разница? - PullRequest
12 голосов
/ 13 апреля 2011

Какая разница, когда я получаю настройки как:

PreferenceManager.getDefaultSharedPreferences(getBaseContext());

и

getPreferences(Context.MODE_PRIVATE);

1 Ответ

24 голосов
/ 13 апреля 2011
PreferenceManager.getDefaultSharedPreferences(getBaseContext());

Предоставит доступ к файлу настроек, который является глобальным для всего пакета приложения; любой вид деятельности может получить доступ к настройкам (внутренне файл xml, содержащий эти настройки, будет называться your.application.package_preferences.xml).

contextInstance.getPreferences(Context.MODE_PRIVATE);

Предоставит настройки только для класса contextInstance: только экземпляры класса контекста могут получить доступ к этим настройкам (сказано, что ваш пакет все еще your.application.package, а вы находитесь в your.application.package.foo.MyActivity, внутри файл настроек - foo.MyActivity.xml).

...