Shared Preferences

Android provides many ways of storing data of an application. One of these ways is called Shared Preferences. Shared Preferences allow you to save and retrieve data in the form of key,value pair. In order to use shared preferences, you have to call a method getSharedPreferences() that returns a SharedPreference instance pointing to the file that contains the values of preferences.

SharedPreferences sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);

The first parameter is the key and the second parameter is the MODE. Apart from private there are other modes available that are listed below −

Sr.NoMode & description
1MODE_APPENDThis will append the new preferences with the already existing preferences
2MODE_ENABLE_WRITE_AHEAD_LOGGINGDatabase open flag. When it is set , it would enable write ahead logging by default
3MODE_MULTI_PROCESSThis method will check for modification of preferences even if the sharedpreference instance has already been loaded
4MODE_PRIVATEBy setting this mode, the file can only be accessed using calling application
5MODE_WORLD_READABLEThis mode allow other application to read the preferences
6MODE_WORLD_WRITEABLEThis mode allow other application to write the preferences

You can save something in the sharedpreferences by using the SharedPreferences.Editor class. You will call the edit method of the SharedPreference instance and will receive it in an editor object. Its syntax is −

Editor editor = sharedpreferences.edit();

editor.putString(“key”, “value”);

editor.commit();

Sr. NOMode & description
1apply()It is an abstract method. It will commit your changes back from editor to the sharedPreference object you are calling
2clear()It will remove all values from the editor
3remove(String key)It will remove the value whose key has been passed as a parameter
4putLong(String key, long value)It will save a long value in a preference editor
5putInt(String key, int value)It will save a integer value in a preference editor
6putFloat(String key, float value)It will save a float value in a preference editor