我的应用程序要求用户在第一次访问时登录,然后将其存储在 SharedPreferences 中,以便将来启动应用程序时使用。
我正在尝试实现注销功能,我想知道最好的方法是什么。
到目前为止,我的 LoginActivity 和 SignOutActivity 是分开的,因为它们发生在不同的屏幕上。理想情况下,我希望能够以这两个 Activity 都可以访问登录数据并保证其安全的方式存储首选项。你们大家建议我如何处理这个问题?
最佳答案
要么只使用default SharedPreferences或者在两个 Activity 中获取同名的 SharedPreferences;它们的重点在于它们是共享的:)我有点担心您认为 SharedPreferences 实际上是安全的或隔离的;他们不是。任何拥有root权限的人can read them (尽管其他没有root权限的应用程序默认情况下不能)。如果您要存储密码或类似内容,请对其进行加密。
有 3 modes对于 SharedPreferences:MODE_PRIVATE
、MODE_WORLD_READABLE
和 MODE_WORLD_WRITEABLE
。 MODE_PRIVATE
是默认且限制性最强的一项,仍然允许免费访问您自己的应用(或您使用相同 user ID 创建的任何其他应用)中任何 Activity 的首选项。
关于java - 在 Android 中的两个不同 Activity 中安全访问登录数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4451953/