Picasso v/s Imageloader v/s Fresco vs Glide

Devrath picture Devrath · Mar 31, 2015 · Viewed 151k times · Source

Findings:

  1. Difference between Picasso v/s ImageLoader here ...
  2. Info about the library GLIDE here ...
  3. Now recently Facebook released new image library called Fresco

Questions:

  1. What is the difference between Picasso v/s Imageloader v/s Fresco
  2. When can we use Glide
  3. Which is the best library to use.
  4. If each library has its own significance, what are they ?

Answer

tyronen picture tyronen · Apr 10, 2015

I am one of the engineers on the Fresco project. So obviously I'm biased.

But you don't have to take my word for it. We've released a sample app that allows you to compare the performance of five libraries - Fresco, Picasso, UIL, Glide, and Volley Image Loader - side by side. You can get it at our GitHub repo.

I should also point out that Fresco is available on Maven Central, as com.facebook.fresco:fresco.

Fresco offers features that Picasso, UIL, and Glide do not yet have:

  1. Images aren't stored in the Java heap, but in the ashmem heap. Intermediate byte buffers are also stored in the native heap. This leaves a lot more memory available for applications to use. It reduces the risk of OutOfMemoryErrors. It also reduces the amount of garbage collection apps have to do, leading to better performance.
  2. Progressive JPEG images can be streamed, just like in a web browser.
  3. Images can be cropped around any point, not just the center.
  4. JPEG images can be resized natively. This avoids the problem of OOMing while trying to downsize an image.

There are many others (see our documentation), but these are the most important.