Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Mobile / Android

Android:SharedPreference

4.33/5 (3 votes)
6 Oct 2013CPOL1 min read 39.6K   2.6K  
How to use SharedPreference to store information in key-value pair in Android

Introduction

Here we see how to store a small amount of information using SharedPreferences APIs, and how to retrieve their values.

Background

Android SharedPreferences is useful when you want to save some data across applications.

Sometimes SharedPreferences is useful for login session. Once user successfully logs into application, then whenever the user opens the application, she/he not need enter username and password again to log in.

SharedPreferences provides a general framework to save and retrieve persistent data in key-pairs value of primitives data type. We can use SharedPreferences to save any primitives data type like strings, ints, booleans, floats, longs.

You can create Object of SharedPreferences using two methods:

  • getSharedPreferences(): Using this method, you can create multiple SharedPreferences and its first parameters in the name of SharedPreferences.
  • getPreferences(): Using this method, you can create a single SharedPreferences.

Using the Code

Here, we take an example of login form. When users enter their login credentials, and check the checkbox (i.e. Remember), the credentials store in the application, and when users open that application again, they not need enter their login information again.

To store information, we write:

Java
SharedPreferences preferences = getSharedPreferences(PREFS_NAME,
Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("username", username.getText().toString());
editor.putString("password", password.getText().toString());
editor.putString("logged", "logged");
editor.commit();  

Here we set Context.MODE_PRIVATE, so the file is accessible by only your application.

If you want to reset your preferences:

Java
SharedPreferences.Editor editor = preferences.edit();
editor.clear();
editor.commit();

Image 1

Image 2

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)