使用android EncryptedSharedReference的最低API级别?

使用android EncryptedSharedReference的最低API级别?,android,encryption,Android,Encryption,android encryptedShared首选项所需的最低API级别是多少 我正在使用以下依赖项 implementation "androidx.security:security-crypto:1.0.0-alpha02" 我的最低API级别是21,我读到共享首选项所需的最低API是23 如果在我的代码中,我可以使用下面的逻辑API 23使用常规SharedReference(我使用服务器存储关键数据),我将永远不会初始化加密共享首选项,在API23+中,我使用加密共享首选项 在下面的

android encryptedShared首选项所需的最低API级别是多少

我正在使用以下依赖项

implementation "androidx.security:security-crypto:1.0.0-alpha02"
我的最低API级别是21,我读到共享首选项所需的最低API是23

如果在我的代码中,我可以使用下面的逻辑API 23使用常规SharedReference(我使用服务器存储关键数据),我将永远不会初始化加密共享首选项,在API23+中,我使用加密共享首选项

在下面的API23中,我的代码是否会编译并运行而没有任何问题

在下面的API23中,我的代码是否会编译并运行而没有任何问题

用于使用API级别检查创建
SharedReference
EncryptedSharedReference
打开

object PrefMgr {
  private var preferences: SharedPreferences? = null

  init {
    preferences = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        EncryptedSharedPreferences.create(
            context,
            APP_PREF_FILE,
            MasterKey.Builder(context)
                .setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
                .build(),
            EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
            EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
        )
    } else {
        context.getSharedPreferences(APP_PREF_FILE, Context.MODE_PRIVATE)
    }
  }
}

对API级别21的支持可用,是的,您可以通过检查操作系统版本来创建首选项。另请参见:如果您使用API级别<21,请添加
AndroidManifest
。是的,我同意@Coolmind感谢更新的
EncryptedSharedReferences
创建代码。另见。