I have a custom model class like this -
public class MyModel implements Parcelable {
    String title;
    String message;
    /**
     * Creator method for the Parcel to use.
     */
    public static final Parcelable.Creator<MyModel> CREATOR = new Parcelable.Creator<MyModel>() {
        public MyModel createFromParcel(Parcel source) {
            return new MyModel(source);
        }
        public MyModel[] newArray(int size) {
            return new MyModel[size];
        }
    };
    public void setTitle(final String titleValue) {
        title = titleValue;
    }
    public void setMessage(final String messageValue) {
        message = messageValue;
    }
    public String getTitle() {
        return title;
    }
    public String getMessage() {
        return message;
    }
    public MyModel() {
    }
    @Override
    public int describeContents() {
        return 0;
    }
    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(this.title);
        dest.writeString(this.message);
    }
    private MyModel(Parcel in) {
        this.title = in.readString();
        this.message = in.readString();
    }
}
My JSON in assets folder is -
[
  {
    "title": "1",
    "message": "Hi"
  },
  {
    "title": "2",
    "message": "Bye"
  },
  {
    "title": "3",
    "message": "Ciao"
  }
]
I need to read and parse this JSON and write it as a list of MyModel object into the shared prefs. To write into prefs, I am doing like this -
public void setSteps(final ArrayList<MyModel> steps) {
   Gson gson = new Gson();
   getPrefs(mContext).edit().putString("steps", gson.toJson(steps)).apply();
    }
How can I parse this JSON and write it to the prefs as a list of MyModel object?
The JSON is currently stored in my assets folder. Later I can read from the prefs and get the list
 
     
     
     
     
    