package Ġb 3 nac . inj ured android Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . content . Context Ċ import Ġandroidx . security . crypto . Encrypted SharedPreferences Ċ import Ġandroidx . security . crypto . Master Key Ċ Ċ class ĠSecure Shared Prefs Ġ: ĠApplication () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġlateinit Ġvar Ġcontext : ĠContext ĊĊĠĠĠĠĠĠĠ Ġfun Ġset Context ( con : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcon ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġpreferences Name Ġ= Ġ" b 3 nac . inj ured android . encrypted " ĊĊĠĠĠ Ġvar Ġmaster Key Ġ= ĠMaster Key . Builder ( context , ĠMaster Key . DEFAULT _ MASTER _ KEY _ ALIAS ). set Key Scheme ( Master Key . Key Scheme . AES 2 5 6 _ GCM ). build () ĊĊĠĠĠ Ġval Ġshared Preferences Ġ= ĠEn crypted SharedPreferences . create ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpreferences Name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmaster Key , Ġ// Ġmaster Key Ġcreated Ġabove ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEn crypted SharedPreferences . Pref Key Encryption Scheme . AES 2 5 6 _ SI V , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEn crypted SharedPreferences . Pref Value Encryption Scheme . AES 2 5 6 _ GCM ) ĊĊĠĠĠ Ġfun Ġedit Boolean ( context : ĠContext , Ġstring : ĠString , Ġboolean : ĠBoolean ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġshared Preferences . edit () ĊĠĠĠĠĠĠĠ Ġeditor . put Boolean ( string , Ġboolean ). apply () ĊĠĠĠĠĠĠĠ Ġeditor . clear () ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Boolean Value ( context : ĠContext , Ġstring : ĠString , Ġboolean : ĠBoolean ): ĠBoolean { ĊĊĠĠĠĠĠĠĠ Ġshared Preferences . getBoolean ( string , Ġboolean ) ĊĠĠĠĠĠĠĠ Ġreturn Ġboolean ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġput String ( context : ĠContext , Ġstring : ĠString , Ġvalue : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġshared Preferences . edit () ĊĠĠĠĠĠĠĠ Ġeditor . putString ( string , Ġvalue ). apply () ĊĠĠĠĠĠĠĠ Ġeditor . clear () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetString ( s : ĠString , Ġs 1 : ĠString ): ĠString ? Ġ{ ĊĊĠĠĠĠĠĠĠ Ġreturn Ġshared Preferences . getString ( s , Ġs 1 ) ĊĊĠĠĠ Ġ} Ċ }