Могут ли общие настройки быть приватными? - PullRequest
19 голосов
/ 08 мая 2011

По одному названию, я предполагаю, что Общие настройки ... используются приложениями?То есть, даже если мое приложение определяет и создает их, любое приложение на Android может получить к ним доступ.Это правильно?

(Если это не так, то почему Руководство по разработке хранилища данных подчеркивает Внутреннее хранилище как «Хранить личные данные»?)

это правильно, могу ли я изменить это поведение по умолчанию так, чтобы предпочтение было видно только из приложения, в котором я его определяю и создаю?

Если да, то как мне это сделать?

Ответы [ 3 ]

27 голосов
/ 08 мая 2011

SharedPreferences являются частными по умолчанию.Они разделяются между компонентами вашего приложения.

24 голосов
/ 08 мая 2011

Если я прав, вы можете сохранить его как частный, позвонив

getSharedPreferences(yourfile, MODE_PRIVATE);


public static final int MODE_PRIVATE 

Начиная с: Уровень API 1 Режим создания файла: режим по умолчанию, где созданный файл может быть доступен только вызывающему приложению (или всем приложениям, использующим один и тот же идентификатор пользователя).

Смотрите также:

MODE_WORLD_READABLE
MODE_WORLD_WRITEABLE 
Constant Value: 0 (0x00000000) 
9 голосов
/ 08 мая 2011

getSharedPreferences в классе Context принимает два аргумента: имя строки и режим int. Режим определяет, являются ли общие настройки закрытыми или нет. Context.getSharedPreferences

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...