我使用Firebase Authentication
处理我应用程序中的登录过程。
我最近通过使用SharedPreferences
将选项添加到“记住我”。
当我如下使用SharedPreferences
时:
if (Cb_RememberMe.isChecked()){
getSharedPreferences(PREFS_NAME,MODE_PRIVATE)
.edit()
.putString(PREF_USERNAME, email)
.putString(PREF_PASSWORD, password)
.apply();
}
然后,它所做的全部就是将email
和password
保存为SharedPreferences
.xml文件。
我想在将数据保存到SharedPreferences
之前对其进行加密。
我的问题是,然后我该如何解密SharedPreferences
中的信息,因此当我将其读回到登录屏幕时,我的Firebase Authentication
中不会有问题。
如果是通过使用密钥,那么如果密钥本身也在SharedPreference中共享,那么它如何提供安全的方法?
我看到有一个叫做JetPack的东西,但是找不到任何Java指南。
谢谢
也许您想尝试一下EncryptedSharedPreferences
?
以下是Google的官方文档:https://developer.android.com/reference/androidx/security/crypto/EncryptedSharedPreferences
很简单,使用.edit()
和.apply()
,并且您习惯了使用普通的SharedPrefs。