So I have been scouring forums trying to fix this issue(it's the last thing I have to do to finish my app!). Heres some code in which I've tried the failed attempts are all commented out. Please any info would help tremendously.
Set ArrayList
[HIGH] public static void setPrefArr(Context context, String key, ArrayList value)
{
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = pref.edit();
ArrayList<String> newArr = new ArrayList<String>();
newArr.addAll(value);
// Exception here vvv (java.io.IOException)
editor.putString(key, ObjectSerializer.serialize(newArr));
//editor.putString(key, );
/*
Gson gson = new Gson();
String json = new gson.toJson(value);
editor.putString(key,json);
editor.commit();
/*
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = pref.edit();
for(int i = 0;i < value.size();i++)
{
editor.putString(key+i,value.get(i).toString());
}
/*
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
Set<String> set = new HashSet<String>();
set.addAll(value);
SharedPreferences.Editor editor = preferences.edit();
editor.putStringSet(key, set);
editor.commit();
*/
}[/HIGH]
Get ArrayList
[HIGH]public static ArrayList getSharedPrefArr(Context context, String key, int num)
{
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
//ArrayList value = new ArrayList();
/*
if(num > 0)
{
for (int i = num; i <= value.size(); i++) {
value.set(i, pref.getInt(key, 0));
}
}
return value;
/*
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
Set<String> set = new HashSet<String>();
set = pref.getStringSet(key, null);
ArrayList value = new ArrayList(set);
//value.addAll(set);
//Collections.copy(value,set);
*/
return value;
}[/HIGH]
Call Functions in OnCreate
[HIGH]Collections.copy(boatN,getSharedPrefArr(getApplicationContext(),boatArrPref,boatArr));
//boatN = getSharedPrefArr(getApplicationContext(),boatArrPref,boatArr);
//Collections.copy(boatN, getSharedPrefArr(getApplicationContext(),boatArrPref));
//boatN.addAll(getSharedPrefArr(getApplicationContext(),boatArrPref));[/HIGH]
Set ArrayList
[HIGH] public static void setPrefArr(Context context, String key, ArrayList value)
{
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = pref.edit();
ArrayList<String> newArr = new ArrayList<String>();
newArr.addAll(value);
// Exception here vvv (java.io.IOException)
editor.putString(key, ObjectSerializer.serialize(newArr));
//editor.putString(key, );
/*
Gson gson = new Gson();
String json = new gson.toJson(value);
editor.putString(key,json);
editor.commit();
/*
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = pref.edit();
for(int i = 0;i < value.size();i++)
{
editor.putString(key+i,value.get(i).toString());
}
/*
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
Set<String> set = new HashSet<String>();
set.addAll(value);
SharedPreferences.Editor editor = preferences.edit();
editor.putStringSet(key, set);
editor.commit();
*/
}[/HIGH]
Get ArrayList
[HIGH]public static ArrayList getSharedPrefArr(Context context, String key, int num)
{
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
//ArrayList value = new ArrayList();
/*
if(num > 0)
{
for (int i = num; i <= value.size(); i++) {
value.set(i, pref.getInt(key, 0));
}
}
return value;
/*
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
Set<String> set = new HashSet<String>();
set = pref.getStringSet(key, null);
ArrayList value = new ArrayList(set);
//value.addAll(set);
//Collections.copy(value,set);
*/
return value;
}[/HIGH]
Call Functions in OnCreate
[HIGH]Collections.copy(boatN,getSharedPrefArr(getApplicationContext(),boatArrPref,boatArr));
//boatN = getSharedPrefArr(getApplicationContext(),boatArrPref,boatArr);
//Collections.copy(boatN, getSharedPrefArr(getApplicationContext(),boatArrPref));
//boatN.addAll(getSharedPrefArr(getApplicationContext(),boatArrPref));[/HIGH]