Я пытаюсь ускорить мой ListView, кэшируя изображения и загружая их с телефона, а не из Интернета при прокрутке списка. Тем не менее, я сталкиваюсь с исключением при попытке сериализации объекта Drawable. Это моя функция:
private void cacheImage(Drawable dr, Article a){
FileOutputStream fos;
try {
fos = openFileOutput(a.getArticleId().toString(), Context.MODE_PRIVATE);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(dr);
oos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
}
Этот отличный код приводит к:
java.io.NotSerializableException: android.graphics.drawable.BitmapDrawable
Каков наилучший подход для сериализации этих изображений?