Как работать с автономным кэшем изображений в Android Glide - PullRequest
0 голосов
/ 04 мая 2019

Я разрабатываю функцию, при которой пользователю необходимо иметь доступ к некоторым личным изображениям, когда они не работают.

В настоящее время мне удалось сохранить модель данных, которая включает URL-ссылку на изображение. Когда я покидаю службу, я не могу просмотреть изображение, потому что могу предоставить только Glide URL-адрес для загрузки, и именно здесь я хотел бы получить кэширование изображения.

Я попытался пройтись по Glide, чтобы предварительно установить все изображения, чтобы они всегда были доступны в кэше, а не только если пользователь их просматривал.

RequestOptions options = new RequestOptions()
            .diskCacheStrategy(DiskCacheStrategy.ALL)
            .priority(Priority.HIGH);

     //loop through all the certs with Glide
for (int i = 0; i < responseData.getallCerts().size(); i++){

    Glide.with(this)
            .load(responseData.getallCerts().get(i).getUrl())
            .apply(options);

}

Затем я попытался включить режим полета и посмотреть, загрузятся ли они ..

 Glide.with(this)
                .load(url)
                .apply(options)
                .error(Glide.with(this)
                        .load(url))
                .into(cert_image);

Этот код кажется неправильным, но в остальном я не уверен, как добраться до кеша.

Некоторые вопросы, которые могут возникнуть в связи с этим, хотя я надеюсь получить ответ, а не обсуждение.

  • Нужно ли создавать загрузчик фоновых изображений, сохранять изображения во внутреннем хранилище, а затем вызывать их для прямой загрузки по ссылке при сбое Glide? Плюс сравните их измененные данные, чтобы решить, нужно ли мне синхронизироваться?
  • Постоянно пытается хранить изображения в кеше при каждой неудачной загрузке практика? Там никогда не будет более 20 изображений, но, вероятно, ближе к 5 в среднем.

Я понимаю, что Glide должен быть в состоянии сделать это, и это сэкономило бы мне массу времени, чтобы избежать создания всей системы синхронизации сохраненных изображений.

...