Using Shared Preferences to save and retrieve data in ArrayList
public void saveData(List<ShoppingCartItem> cartItemArrayList, String key){
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
//Creating editor to store values to shared preferences
SharedPreferences.Editor editor = sharedPreferences.edit();
Gson gson = new Gson();
String json = gson.toJson(cartItemArrayList);
editor.putString(key,json);
editor.apply();
}
public ArrayList<ShoppingCartItem> getData(String key){
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
Gson gson = new Gson();
String json = sharedPreferences.getString(key,null);
Type type = new TypeToken<ArrayList<ShoppingCart>>() {}.getType();
return gson.fromJson(json, type);
}