Skip to content

ergooo/TypedSharedPreferences

Repository files navigation

TypedSharedPreferences

By specifying type parameters for the keys you define, you can avoid typing mistakes when saving to SharedPreferences.

Installation

implementation 'io.github.ergooo:TypedSharedPreferences:0.0.2'

Code examples

Define keys with type parameter.

sealed class Keys {
    object Name : Key<String>
    object Age : Key<Int>
    object Birthday : Key<Long>
    object SyncRate : Key<Float>
    object HasIdCard : Key<Boolean>
    object Friends : Key<Set<String>>
}

You can pass key / value pairs as Entry.

val typedSharedPreferences = TypedSharedPreferences(preferences)
typedSharedPreferences.putString(Entry(Keys.Name, "Shinji"))

If you specify a value other than String for Keys.Name, the compiler will tell you an error. If you specify a key with a non-String parameter (such as Keys.Age) as the parameter for the putString() or getString(), compiler will tell you an error.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages