Redmi note 4 не показывает изображения из тайника - PullRequest
0 голосов
/ 25 сентября 2018

Я загружаю изображения с помощью Glide 4.1.1 с кэшированием диска, и он отлично работает на других устройствах, кроме Red Mi note 4. Red Mi note 4 не показывает кэшированное изображение.в то время как мой эмулятор и Micromax android 1 отлично показывают кэшированные изображения.

 Glide.with(context)
            .load(stringUrl).apply(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE))
            .listener(new RequestListener<Drawable>() {
                @Override
                public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                    viewHolderListener.onLoadCompleted(image, adapterPosition);
                    return false;
                }

                @Override
                public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                    L.d(loadedData.get(adapterPosition).getImagePath());
                    viewHolderListener.onLoadCompleted(image, adapterPosition);
                    return false;
                }
            })
            .into(image);

1 Ответ

0 голосов
/ 21 февраля 2019

Попробуйте обновить библиотеку glide до новой версии

    dependencies {
  implementation ("com.github.bumptech.glide:glide:4.9.0") {
    exclude group: "com.android.support"
  }

Самое важное - включить в приложение модуль AppGlide

package com.example.myapp;

import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;

@GlideModule
public final class MyAppGlideModule extends AppGlideModule {}

Наконец, вы можете включить кэширование, написав следующий код:

GlideApp.with(fragment)
  .load(url)
  .diskCacheStrategy(DiskCacheStrategy.ALL)
  .into(imageView);

См .: Документация GlideV4

...