Отображение изображения с помощью Glide и Retrofit - PullRequest
0 голосов
/ 04 октября 2018

У меня есть приложение для Android, которое сохраняет изображение в WAMP (например, C: \ wamp \ www * имя_проекта ** папка с изображениями *) во время регистрации.Я использую WAMP в качестве локального сервера, Retrofit для сетевой активности и скольжения для обработки изображений.Изображение успешно загружается, и путь к нему сохраняется в БАЗЕ ДАННЫХ.Теперь, когда я получаю информацию из базы данных, я хочу отобразить это изображение в imageView, используя glide, но я не понимаю, как я это делаю.В ответе JSON я получаю путь к изображению.

========================================================================

Мой скрипт Php для загрузки фото

$image = $_POST["uPhoto"];



$time = date("d-m-Y")."-".time();
$image_name = $username."_".$time;
$image_path = "user_profile_images/$image_name.jpg";

if (mysqli_query($myCon,$sql))
    {

        file_put_contents($image_path,base64_decode($image));

        $status = "ok";
        echo json_encode(array("response"=>$status));
    }

=================================================================

Ответ JSON

  "Photo Path":"user_profile_images\/roots123_29-08-2018-1535553004.jpg"

В андроиде я пытаюсь

 Glide.with(getApplicationContext()).load(response.body().getImage()).into(imgProfile);

Может кто-нибудь дать пожалуйста какое-нибудь решение

Ответы [ 4 ]

0 голосов
/ 04 октября 2018

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

  • Glide.with (YourActivity.this) .load (Uri.parse ("file: //" + imagePath)) .diskCacheStrategy (DiskCacheStrategy.NONE) .skipMemoryCache (true) .into (mImage);
0 голосов
/ 04 октября 2018

Прежде всего вы проверяете свой полный путь к изображению ( url = локальный ip + user_profile_images / roots123_29-08-2018-1535553004.jpg ) в браузере, если он отображает изображение, вы можете загрузитьЭтот образ в вашем приложении с помощью glide вы можете проверить свой системный ip в диспетчере задач или командной строке с помощью команды ipconfig.проверьте ваш ip в браузере ip запустите ваш локальный хост-сервер в браузере

String Img_url = "system ip"+response.body().getImage();
Glide.with(getApplicationContext()).load(Img_url).into(imgProfile);

используйте его в эмуляторе Android

0 голосов
/ 04 октября 2018

после того, как вы дважды проверили url и удостоверились, что всегда очищаете перехват и затем снова загружаете изображение в представление изображения:

Удалите изображение из кэша в библиотеке Glide

0 голосов
/ 04 октября 2018

Чтобы получить изображение с локального wamp-сервера, вам необходимо добавить URL-адрес ip вашего компьютера, на котором работает ваш wamp-сервер, если вы тестируете удаленное устройство Android в одной сети с вашим сервером.Если вы хотите проверить с помощью эмулятора, попробуйте следующий ip 10.0.2.2.

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