EncryptedSharedPreferences

EncryptedSharedPreferences

如何使用https://developer.android.google.cn/reference/androidx/security/crypto/EncryptedSharedPreferences在我的android java应用程序中实现加密的共享首选项?我不知道如何实施,任何人都可以提供帮助?

最佳答案

根据文档示例,您可以像这样初始化EncryptedSharedPreferences

public SharedPreferences getEncryptedSharedPreferences(){
   String masterKeyAlias = MasterKeys.getOrCreate(MasterKeys.AES256_GCM_SPEC);
   SharedPreferences sharedPreferences = EncryptedSharedPreferences.create(
       "secret_shared_prefs_file",
       masterKeyAlias,
       context,
       EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
       EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
   );
    return sharedPreferences;
}


保存数据

getEncryptedSharedPreferences().edit()
        .putString("key", value)
        .apply()


获取数据

getEncryptedSharedPreferences().getString("key", "defaultValue");


确保您的应用程序API版本为23+,并且您需要添加此依赖项

implementation "androidx.security:security-crypto:1.0.0-alpha02" //Use latest version

10-08 14:19