Как загрузить адрес изображения из веб-службы в Android?

Я написал веб-сервис с java, который сохраняет адрес изображения на моем компьютере.

теперь я хочу парсить это изображение в Android с использованием Дооснащение и Пикассо lib.

call.enqueue(new Callback<List<ChordEntity>>() {
        @Override
        public void onResponse(Call<List<ChordEntity>> call, Response<List<ChordEntity>> response) {
            List<ChordEntity> entities = response.body();
            for (ChordEntity entity : entities) {
                textView.setText(entity.getId());
                Picasso.with(MainActivity.this).load(entity.getImage()).into(imageView);
            }
        }

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

        }
    });

entity.getImage() сохраняет адрес образа на ПК, но не отображается в imageView ..

Какую версию Пикассо вы используете?

Ümañg ßürmån 09.10.2018 13:48

@UmangBurman 2.5.2

Amir251 09.10.2018 13:49

Хорошо, вы получаете значения в entity.getImage ()?

Ümañg ßürmån 09.10.2018 13:51

@UmangBurman в entity.getImage () существует адрес изображения на моем компьютере

Amir251 09.10.2018 13:55

Вам нужно ввести эту строку: log.d("image: ", ""+entity.getImage()); и посмотреть в журнале, получаете ли вы значение в своем журнале. Поместите этот код в цикл for при ответе.

Ümañg ßürmån 09.10.2018 13:58

@UmangBurman изображение: C: \ Users \ Amir251 \ Downloads \ Picture \ Crime.jpg

Amir251 09.10.2018 14:01

Вы не можете получить доступ к файлу со своего ПК в эмулятор Android, так как Windows предотвратит любой несанкционированный доступ к папкам на C-диске.

Ümañg ßürmån 09.10.2018 14:03

@UmangBurman я меняю адрес изображения, и теперь Log имеет значение изображение: D: \ test \ cat.jpg, но все еще не отображается

Amir251 09.10.2018 14:15

Да, потому что вы не можете получить доступ к окнам со своего устройства или эмулятора, это разные ОС. Вы получаете путь к своему изображению с сервера WAMP?

Ümañg ßürmån 09.10.2018 14:16

@UmangBurman, я не знаю, что такое WAMP, но я написал веб-сервис с JAX-RS, и я храню адрес изображения с моего компьютера в Oracle вместо самого изображения, и я хочу получить изображение с адреса в Android

Amir251 09.10.2018 14:26

Мне очень жаль, но это невозможно. Вы можете сохранить само изображение, затем получить URL-адрес и передать его в Picasso, и тогда оно будет работать.

Ümañg ßürmån 09.10.2018 14:30
0
11
51
2

Ответы 2

Picasso.get().load("http://whereyourimageis.com/yourimage.png").into(imageView);

Попробуй это. Имею в виду документацию: http://square.github.io/picasso/

Решение:

Вы можете использовать следующий способ ЗАГРУЗКИ ФАЙЛА С SDCARD / хранилища устройства: в вашем случае URL-адрес файла находится на вашем диске Windows, что не допускает несанкционированный доступ. Вы можете выбрать загрузку из Интернета или из хранилища:

Picasso.with(context).load("file:///android_asset/DvpvklR.png").into(imageView2);
Picasso.with(context).load(new File(...)).into(imageView3);

Убедитесь, что вы передаете полный путь к изображению

читать из документальный

Надеюсь, это будет полезно.

Другие вопросы по теме