Easy SharedPreference Engine foR ANDROid
esperandro makes it simple to use SharedPreference
s in a nicer and less error-prone way.
Without esperandro a key is referenced by a string:
String myPreference = preferences.getString("myPreference", "default value") // load preference
preferences.edit().putString("myPreference", myPreference).commit() // store preference
With esperandro you adhere to an interface that you defined:
@SharedPreferences
interface MyPreferences {
String getMyPreference();
void setMyPreference(String myPreference);
}
String myPreference = preferences.getMyPreference() // load preference
preferences.setMyPreference(myPreference) // store preference
Type safe, easy, less error-prone.
Interested? Get Started
Please refer to the wiki for in-depth examples and all available features.
See the changelog for a brief overview of recent changes.
// essential dependencies
implementation 'de.devland.esperandro:esperandro-api:<insert version>'
annotationProcessor 'de.devland.esperandro:esperandro-preference-gen:<insert version>'
// optional, if object serialization is needed via gson
implementation 'de.devland.esperandro:esperandro-gson-addon:<insert version>'
// optional, if object serialization is needed via jackson
implementation 'de.devland.esperandro:esperandro-jackson-addon:<insert version>'
// additional processor to generate a file with all keys as string constants
annotationProcessor 'de.devland.esperandro:esperandro-keys-gen:<insert version>'
// additional processor to generate a file with all keys as string resources
annotationProcessor 'de.devland.esperandro:esperandro-resources-gen:<insert version>'