Вот функции, которые я использую, чтобы сохранить и кэш загрузки:Android: Как получить список всех файлов кеша в приложении?
public static void SAVE_CACHE(Context context, String key, Object object) throws IOException {
FileOutputStream fos = context.openFileOutput(key, Context.MODE_PRIVATE);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(object);
oos.close();
fos.close();
}
public static Object LOAD_CACHE(Context context, String key) throws IOException,
ClassNotFoundException {
FileInputStream fis = context.openFileInput(key);
ObjectInputStream ois = new ObjectInputStream(fis);
Object object = ois.readObject();
return object;
}
Скажем, у меня есть 3 ArrayLists из объекта Contact
сохраняется в кэше:
List<Contact> contacts = new ArrayList<Contact>();
contacts.add(new Contact());
SAVE_CACHE(context, "cache1", contacts);
SAVE_CACHE(context, "cache2", contacts);
SAVE_CACHE(context, "cache3", contacts);
Можно ли получить какие ключи кэша содержат объект? Я хотел бы иметь arraylist этого cache1, cache2 и cache2.
Вы хотите найти список всех доступных файлов кеша? – Shaunak
Да, это именно то, что я имею в виду –