getEncryptedHarmonySharedPreferences

@JvmName(name = "getSharedPreferences")
fun Context.getEncryptedHarmonySharedPreferences(fileName: String, masterKeyAlias: String, prefKeyEncryptionScheme: EncryptedSharedPreferences.PrefKeyEncryptionScheme, prefValueEncryptionScheme: EncryptedSharedPreferences.PrefValueEncryptionScheme): SharedPreferences

Main entry to get Encrypted Harmony Preferences

This creates an Encrypted Harmony object. Similar to Harmony, this Encrypted SharedPreferences object is process-safe.


val masterKeyAlias = MasterKeys.getOrCreate(MasterKeys.AES256_GCM_SPEC)

val sharedPreferences = context.getEncryptedHarmonySharedPreferences(
    "secret_shared_prefs",
    masterKeyAlias,
    EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
    EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
)

// use the shared preferences and editor as you normally would
val editor = sharedPreferences.edit()

Receiver

Any valid context

Return

A SharedPreferences object backed by Harmony

Parameters

fileName

The desired preference file

masterKeyAlias

The alias of the master key to use

prefKeyEncryptionScheme

The scheme to use for encrypting keys

prefValueEncryptionScheme

The scheme to use for encrypting values