Какую цель кэширования вы хотите реализовать?
Если вы хотите избежать загрузки файлов из Интернета несколько раз, SDCard или SQLiteDatabase
должны быть хорошими вариантами, в зависимости от типа файлов, с которыми вы работаете.
Если вы хотите сохранить файлы в памяти (например, вы хотите сохранить некоторые декодированные растровые изображения в куче), лучше всего реализовать собственный класс Cache.
SharedPreferences
может использоваться только с некоторыми базовыми типами (boolean, int, String, long, float
) - поэтому Parcelable
нельзя вставить в настройки вашего приложения.
Это создаст проблему для сохранения файлов там.