Как загрузить изображение / JPEG с модернизацией и компонентом архитектуры? - PullRequest
0 голосов
/ 25 апреля 2019

Я использую архитектурные компоненты архитектуры Android.Я хочу загрузить изображение из моего API.

это запрос к почтальону:

! https://ibb.co/WPJjpFm

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

@GET("image/{filename}")
    Call<ResponseBody> getImage(@Path("filename") String filename);
public MutableLiveData<File> retriveImageTest(String filename) {
        MutableLiveData data = new MutableLiveData<>();
        executor.execute(() -> {
            imageWebService.getImage(filename).enqueue(new Callback<ResponseBody>() {
                @Override
                public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
                   // How to deal with responsebody ?
                }

                @Override
                public void onFailure(Call<ResponseBody> call, Throwable t) {

                }
            });
        });
        return data;
    }

Каков наилучший способ сделать это, не нарушая компоненты архитектуры Android?

Заранее спасибо.

1 Ответ

1 голос
/ 25 апреля 2019

Для загрузки изображений лучше использовать библиотеки загрузки изображений, такие как Glide, Picasso или Fresco: Используя Glide, добавьте это в файл gradle вашего приложения

  implementation 'com.github.bumptech.glide:glide:4.9.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'

Тогда

Glide.with(this).load(imageUrl).into(imageView);

Для получения дополнительной информации: Glide docs

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...