AccountManager 帐户存储在哪里?是在设备上吗?如果是,它存储在哪个文件夹中?
问问题
3234 次
2 回答
4
它存储在这里:
Environment.getSystemSecureDirectory().getPath() + File.separator + DATABASE_NAME;
哪里 getSystemSecureDirectory:
获取可用于安全存储的系统目录。如果启用了加密文件系统,它会返回一个加密目录 (/data/secure/system)。否则,它会返回未加密的 /data/system 目录。
和DATABASE_NAME = "accounts.db";
于 2012-01-09T07:20:21.453 回答
1
虽然答案完全正确,但您应该记住,“Environment.getSystemSecureDirectory()”是一种平台 API 方法,而不是公共 SDK API 的一部分。如果你查看它的 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 上分发您的应用程序,则不允许您使用它。
于 2012-04-04T14:41:32.150 回答