Зачем использовать библиотеку Android Пикассо на скачивание изображения ?

? user3376321 @ | Original: StackOverFlow
---

Почему я должен загружать изображения с помощью библиотеки Пикассо, а не просто с помощью этого кода :

private Bitmap DownloadImage(String URL) 
{
    Bitmap bitmap = null; 
    InputStream in = null; 

    try 
    {
        in = OpenHttpGETConnection(URL);
        bitmap = BitmapFactory.decodeStream(in); in.close();
    } 
    catch (Exception e) 
    {
        Log.d("DownloadImage", e.getLocalizedMessage());
    }

    return bitmap; 
}

Другой вопрос :

Пикассо скачивание ли изображение в пользовательском интерфейсе или в фоновом потоке ?

---

Top 5 ответ

1Sarpe @

Пикассо загрузить изображение в другом потоке и управляет для вас :

the placeholder in the meantime the image is still downloading resizing cropping/centering/scaling caching ( you don't have to download the image every time) it even does "image fade in", which is popular/normal now

Это очень просто, вотпример:

    Picasso.with(context)
           .load(url)
           .placeholder(R.drawable.placeholder)
           .resize(imgWidth, imgHeight)
           .centerCrop()
           .into(image);
2Joe Blow @

Просто для записи для любого нового для Android или, возможно, переезд в Android от МО ..........

You absolutely have to use Picasso. Not a joke.

Честно говоря, это так просто . Преимущества невероятно.

Именно это простой в использовании :

Picasso.
  with(State.mainContext).
  load(parseImageFile.getUrl()).
  into(null);

Вы очень просто:

must do caching, and threading, with image handling on Android.

Это очень просто . Если вы не хотите написать, что с нуля, вы просто должны использовать Пикассо.

Обратите внимание, что ParseImageFile по существу не работает - это совершенно бесполезно о кэшировании и так далее. Есть замечательные альтернативы Пикассо (например, Всеобщей загрузки изображений, проверить его ), но ни работы, а также Пикассо, теперь 2014 году.

Помните, что если вы переходите на супер- продвинутый питания ...Единственное, что лучше, чем Пикассо, сделать переход к волейболу . но этоогромный скачок .

Обратите внимание, что ListView прокрутки на Android гораздо, гораздо более проблематичным, чем обработки таблицы прокрутки на IOS. Вы могли бы сказать Android + Пикассо больше напоминает ситуацию по КСН, где всеуже будет сделано для прокрутки больших представлений таблиц с изображениями.

На сегодняшний день, Пикассо - просто -центральная часть из Android App бы то ни было . Слава богу, она является одной строки кода - не требует настройки, ничего.

Опять же,единственное, что " лучше, чем " Пикассо, если вы переезжаете в волейбол .

Кстати вототличное большая статья на волейбол против Пикассо, если вам нужно что ...

http://www.bignerdranch.com/blog/solving-the-android-image-loading-problem-volley-vs-picasso/

3BladeCoder @

Вы должны использовать изображения загрузчик библиотеки как Пикассо, волейбол или Всеобщей загрузки изображений, потому что они сделать следующие вещи, что ваш код не делают :

Efficient multithreaded networking (on background threads of course) Combining multiple identical requests into a single network call Canceling pending requests, especially during ListView items recycling Disk and memory caching with various expiration policies Images downsampling to the target view size to improve performance and reduce memory usage Batching UI updates to improve UI responsiveness (at least for Volley and Picasso).

Кстати, вы никогда не должны выполнять сетевые запросы в потоке пользовательского интерфейса и с сотовой, Android не позволяет это сделать.