Search code examples
androidintegersharedpreferencespreference

Storing integers in preference class


In my android app I have created a preference class(which extends PreferenceActivity) for storing about 10 integer values. I am not creating any xml file for that activity in R.xml as I don't want it. I just need to store 10 integer variables in this file(which can save it even after exit) and I want to get these values from another activity, perform some changes to the preferences, then save the preference class.

My queries are:

  1. How can I store an integer variable in preference class?
  2. How to call that variable from another activity?
  3. How to return that variable again to preference class?

Solution

  • Hi here i added sample code for SharedPreferences for you concern .please try this code and let me know. Hope it should helpful for you. Thanks.

    SharedPreferences Creation:

    SharedPreferences sharedPref = getBaseContext().getSharedPreferences("USER_PREFS",Context.MODE_PRIVATE);
    

    Store the values to SharedPreferences:

    int userId = 2425;
    String authtoken = "abcdef345345";
    String authkey = "qrst";
    sharedPref = getBaseContext().getSharedPreferences("USER_PREFS",prefMode);
    SharedPreferences.Editor editor = vSmileSharedPreferences.edit();
    editor.putString("AUTH_KEY", authkey);
    editor.putString("AUTH_TOKEN", authtoken);
    editor.putString("USER_ID", String.valueOf(userId));
    editor.commit();
    

    Retriving SharedPreferences values from another Activity:

    String authtoken ="";
    String authkey = "";
    int UserId = 0;
    SharedPreferences sharedPref =  getBaseContext().getSharedPreferences("USER_PREFS",Context.MODE_PRIVATE);
    authtoken = sharedPref.getString("AUTH_TOKEN", null);
    authkey = sharedPref.getString("AUTH_KEY", null);
    UserId = sharedPref.getString("USER_ID", 0);
    

    If the SharedPreference UserID is null or empty means it will take default as 0;