java - 您是否应该使用 AccountManager 来存储 Android 应用程序的用户名和密码?

标签 java android accountmanager password-storage android-account

我想知道是否应该实现 AccountManager 来保存用户凭据,例如用户名、电子邮件、密码等。我自己找不到使用它的充分理由。

我不希望其他应用程序能够访问 Accounts 并且我真的不希望它们显示在“Accounts and Sync”设置中(尽管这可能没什么大不了的)。

所以我的问题是:我应该使用它吗?优点缺点?我可以对其他应用隐藏 Accounts 并阻止它们出现在“Accounts and Sync”中吗?

最佳答案

这个问题的公认答案可能会对您有所帮助... What should I use Android AccountManager for?

还应该指出,正如上面的帖子和 AccountManager without a SyncAdapter? 中提到的。 ,你不能有一个没有 SyncAdapterAccountManager,所以在你的特定情况下使用它可能不好。

我看不出有任何理由使用 AccountManager 专门用于存储此类信息 - 归根结底,这与手动将数据存储在您自己的数据库中或文件。如果有的话,它可能会使事情变得复杂 - 为什么不将它存储在 SharedPreferences 中?

我能想到的鼓励使用 AccountManager 的唯一原因是,如果您想在多个不同的应用程序之间共享您的帐户,因为数据存储在中央 Android 数据存储中所有应用程序都可以访问。但是,如果这不是必需的,我认为只使用 SharedPreferences

可能更容易和更简单

关于java - 您是否应该使用 AccountManager 来存储 Android 应用程序的用户名和密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10890211/

相关文章:

java - 拦截正在运行的 Java 程序的输出

android - 将用户名和密码发送到本地主机不起作用?

android - 如何在applozic中隐藏聊天顶部的主题框

Android - 努力设置帐户选择器的样式

android - android中accountManager的getPassword中的SecurityException

java - 为什么在使用 java -jar 调用时打印函数不打印?

java - Maven:必须是有效版本,但为 'RELEASE'

JavaFX PrinterJob 打印随机字符而不是常规文本

java - 从 Android 中的 SQLite 数据库填充 ListView

android - 无需在 Android 上使用客户管理器即可对 Google API 进行 OAuth2.0 身份验证