Хранение учетных записей Android AccountManager - PullRequest
3 голосов
/ 09 января 2012

Где хранятся учетные записи AccountManager? Это на устройстве? Если да, в какой папке он хранится?

Ответы [ 2 ]

4 голосов
/ 09 января 2012

Хранится здесь:

Environment.getSystemSecureDirectory().getPath() + File.separator + DATABASE_NAME;

Где getSystemSecureDirectory:

Получает системный каталог, доступный для безопасного хранения. Если зашифровано Файловая система включена, она возвращает зашифрованный каталог (/ Данные / безопасная / система). В противном случае он возвращает незашифрованный / data / системный каталог.

и DATABASE_NAME = "accounts.db";

1 голос
/ 04 апреля 2012

Несмотря на то, что ответ совершенно правильный, вы должны помнить, что Environment.getSystemSecureDirectory () является методом API платформы, а не частью API общедоступного SDK. Если вы посмотрите на его javadoc, вы поймете аннотацию @hide:

 /**
 * Gets the system directory available for secure storage.
 * If Encrypted File system is enabled, it returns an encrypted directory (/data/secure/system).
 * Otherwise, it returns the unencrypted /data/system directory.
 * @return File object representing the secure storage system directory.
 * @hide
 */

Скрытые методы предназначены для использования только приложениями платформы, которые распространяются вместе с самой платформой. Они скомпилированы с исходным кодом платформы, а не источника SDK, поскольку приложения для Play / Market должны быть.

Это означает, что вы не можете использовать его, если хотите распространять свое приложение на Play / Market.

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