Я пытаюсь ускорить свой 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
Каков наилучший подход к сериализации этих изображений?