Разница DiskCacheStrategy в Glide v4
Я использую Glide 4.1.1 в одном из приложений для Android. Я использую его с кодом ниже и не сталкиваюсь с какой-либо проблемой в приложении.
Glide.with(context)
.load(constant.BASE_URL+"images/"+data.getPicture())
.apply(new RequestOptions()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.dontAnimate()
.centerCrop()
.dontTransform())
.into(holder.imageView);
У меня есть сомнение в опции.diskCacheStrategy(DiskCacheStrategy.ALL). Там всего пять вариантов типа, расположенных с таким, как показано ниже
.diskCacheStrategy(DiskCacheStrategy.ALL)
.diskCacheStrategy(DiskCacheStrategy.NONE)
.diskCacheStrategy(DiskCacheStrategy.DATA)
.diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)
.diskCacheStrategy(DiskCacheStrategy.RESOURCE)
Я попытался найти его документацию, но не смог найти разницу между этим. Дайте мне знать, если кто-то использовал его и поняли, в чем разница между всем этим и когда мы его используем. Спасибо
Ответы
Ответ 1
- Glide 3.x и 4.x: DiskCacheStrategy.NONE не кэширует ничего
- Glide 4.x: DiskCacheStrategy.DATA, Glide 3.x: DiskCacheStrategy.SOURCE кэширует только исходное изображение с полным разрешением.
- Glide 4.x: DiskCacheStrategy.RESOURCE Glide 3.x: DiskCacheStrategy.RESULT кэширует только окончательное изображение после уменьшения разрешения (и, возможно, преобразований) (поведение по умолчанию Glide 3.x)
- Только Glide 4.x: DiskCacheStrategy.AUTOMATIC разумно выбирает стратегию кэширования на основе ресурса (поведение по умолчанию Glide 4.x)
- Glide 3.x и 4.x: DiskCacheStrategy.ALL кэширует все версии изображения
Далее прочитайте это
Ответ 2
Я думаю, что эта ссылка решит все ваши проблемы, связанные со стратегией кэширования. Glide3.x или Glide4.x Glide-Caching-Strategy.