Android 可以将共享首选项用于登录目的吗

Android can shared preferences be used for login purposes

我已经 android 连接到 MySQL 数据库,用户将通过经过哈希处理的电子邮件和密码登录。每个用户都有一个唯一的 ID 号。当他们成功登录时,我可以将他们的唯一 ID 转移到私有模式下的共享首选项以跟踪用户。这样的事情会奏效还是听起来有风险?据我所知,SharedPreferences 是唯一可以记住用户的方法,这样他们就可以关闭和打开您的应用程序,而不必再次登录。

SharedPreferences 是要走的路。它是私有的,属于您的应用程序的上下文,用户无法访问它。

虽然共享首选项是私有的,但请记住,root 用户可以看到任何应用程序的共享首选项。只要确保您永远不会在本地保存密码,无论是否经过哈希处理,因为哈希总是可以逆转的。将用户信息(如 id 和用户名)保存在本地是很好的,因为坏人无法真正用它做任何事情。保留访问令牌是正确的方法。如果您查看带有 facebook 集成的应用程序的任何共享首选项,您会看到 facebook 以明文形式保留其令牌。