I want to convert Drawable into int and then vice versa.Basically I want to save Arraylist object into sharedPrefrence. For that purpose I have Implement Gson to Srtring convertion Method. If I use here Drawable instead of int then Gson String convertion take alot of time. so I want to use int instead of Drawable.
 private List<AppInfo> apps = null;
   public void setIcon(int icon) {
    this.icon = icon;
}
   apps.get(position).setIcon(mContext.getResources().getDrawable(apps.get(position).getIcon()));
Where AppInfo here is
    public AppInfo(String appname, String pname, String versionName, int versionCode, int icon, int color) {
    this.appname = appname;
    this.pname = pname;
    this.versionName = versionName;
    this.versionCode = versionCode;
    this.icon = icon;
    this.color = color;
}
Here is source of Converting ArrayList of Custom object into String so that i can save it to SharedPrefrence.
            Gson gson = new Gson();
            apps.get(number).setColor(picker.getColor());
            String JsonAppsdata = gson.toJson(apps);
            System.out.println("Storing="+JsonAppsdata);
            utility.StoreData(getApplicationContext(), JsonAppsdata);
 
     
     
     
    