If you need to save it in SharedPreferences, you can parse your object into a json string and save the string.
private Context context; private MyObject savedObject; private static final String PREF_MY_OBJECT = "pref_my_object"; private SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); private Gson gson = new GsonBuilder().create(); public MyObject getMyObject() { if (savedObject == null) { String savedValue = prefs.getString(PREF_MY_OBJECT, ""); if (savedValue.equals("")) { savedObject = null; } else { savedObject = gson.fromJson(savedValue, MyObject.class); } } return savedObject; } public void setMyObject(MyObject obj) { if (obj == null) { prefs.edit().putString(PREF_MY_OBJECT, "").commit(); } else { prefs.edit().putString(PREF_MY_OBJECT, gson.toJson(obj)).commit(); } savedObject = obj; } class MyObject { }
source share