package Ġcom . aid en . android . commons . utils Ċ Ċ import Ġandroid . os . Parcelable Ċ import Ġcom . tencent . mm kv . MM KV Ċ import Ġjava . util .* ĊĊ Ċ /** Ċ Ġ* Ġ@ author Ġsun wei Ċ Ġ* Ġemail ï¼ļ t ian mu 1 9 @ gmail . com Ċ Ġ* Ġdate ï¼ļ 2 0 1 9 / 5 / 1 7 Ġ 1 1 : 5 4 Ċ Ġ* Ġpackage ï¼ļ com . youtu . we ex . utils Ċ Ġ* Ġversion ï¼ļ 1 . 0 Ċ Ġ* Ġ< p > description ï¼ļ ĠĠĠ ĠM MK V æĽ¿ ä»£ sp å·¥åħ· ç±» ĠĠĠĠĠĠĠĠĠ Ġ</ p > Ċ Ġ* Ġ è®° ä½ı åĪĿå§ĭåĮĸ ĠĠĠĠ ĠM MK V . initialize ( getApplication ()); Ċ Ġ*/ Ċ object ĠSp Util Ġ{ ĊĠĠĠ Ġvar Ġm mk v : ĠM MK V ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġm mk v Ġ= ĠM MK V . default MM KV () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġencode ( key : ĠString , Ġvalue : ĠAny ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠString Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠFloat Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠBoolean Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠInt Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠLong Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠDouble Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠByteArray Ġ-> Ġm mk v ?. encode ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠNothing Ġ-> Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠParcel able > Ġencode ( key : ĠString , Ġt : ĠT ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( t Ġ== null ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm mk v ?. encode ( key , Ġt ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġencode ( key : ĠString , Ġsets : ĠSet < String > ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( sets Ġ== null ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġm mk v ?. encode ( key , Ġsets ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode Int ( key : ĠString ): ĠInt ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode Int ( key , Ġ 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode Double ( key : ĠString ): ĠDouble ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode Double ( key , Ġ 0 . 0 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode Long ( key : ĠString ): ĠLong ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode Long ( key , Ġ 0 L ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode Boolean ( key : ĠString ): ĠBoolean { ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v !!. decode Bool ( key , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode Float ( key : ĠString ): ĠFloat ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode Float ( key , Ġ 0 F ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode ByteArray ( key : ĠString ): ĠByteArray ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode Bytes ( key ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode String ( key : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode String ( key , Ġ"") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠParcel able > Ġdecode Parcelable ( key : ĠString , Ġt Class : ĠClass < T >): ĠT ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode Parcelable ( key , Ġt Class ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdecode String Set ( key : ĠString ): ĠSet < String >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm mk v ?. decode String Set ( key , ĠCollections . empty Set ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġremove Key ( key : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm mk v ?. remove Value ForKey ( key ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġclear All () Ġ{ ĊĠĠĠĠĠĠĠ Ġm mk v ?. clear All () ĊĠĠĠ Ġ} ĊĊ Ċ }