elp*_*cko 12 android sharedpreferences kotlin androidx
我使用 androidx.security:security-crypto:1.0.0-alpha02 库中的 EncryptedSharedPreferences 来存储一些令牌。如果我使用prefs.edit().remove("token")).apply()或prefs.edit().remove("token")).commit()令牌被删除。但是,如果我尝试使用该clear()方法立即清除首选项,则不会发生任何事情。
此调用:prefs.edit().clear().commit()甚至返回false.
我使用此方法获取 EncryptedSharedPreferences:
private fun getPrefs(): SharedPreferences {
val masterKeyAlias = MasterKeys.getOrCreate(MasterKeys.AES256_GCM_SPEC)
return EncryptedSharedPreferences.create(
"myPrefs",
masterKeyAlias,
context,
EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
)
}
Run Code Online (Sandbox Code Playgroud)
我是否必须以其他方式清除 EncryptedSharedPreferences?
文档说(https://developer.android.com/reference/androidx/security/crypto/EncryptedSharedPreferences):
// 像往常一样使用共享首选项和编辑器 SharedPreferences.Editor editor = sharedPreferences.edit();
2020 年 2 月 7 日更新 我在 google bugtracker ( https://issuetracker.google.com/issues/138314232 ) 中创建了一个错误票,但他们不会修复它...
小智 1
此问题从版本1.0.0-rc03开始修复。Clear 现在工作正常。享受!
请参阅发行说明: https://developer.android.com/jetpack/androidx/releases/security#security-crypto-1.0.0-rc03
| 归档时间: |
|
| 查看次数: |
2553 次 |
| 最近记录: |