Recomendaciones:
- Diferencia entre Picasso v / s ImageLoader aquí ...
- Información sobre la biblioteca GLIDE aquí ...
- Ahora, recientemente, Facebook lanzó una nueva biblioteca de imágenes llamada Fresco
Preguntas:
- ¿Cuál es la diferencia entre Picasso v / s Imageloader v / s Fresco?
- ¿Cuándo podemos usar Glide?
- Cuál es la mejor biblioteca para usar.
- Si cada biblioteca tiene su propio significado, ¿cuáles son?
Respuestas:
Soy uno de los ingenieros del proyecto Fresco. Así que obviamente soy parcial.
Pero no tienes que creer mi palabra. Hemos lanzado una aplicación de muestra que le permite comparar el rendimiento de cinco bibliotecas: Fresco, Picasso, UIL, Glide y Volley Image Loader, una al lado de la otra. Puede obtenerlo en nuestro repositorio de GitHub .
También debo señalar que Fresco está disponible en Maven Central, como
com.facebook.fresco:fresco
.Fresco ofrece características que Picasso, UIL y Glide aún no tienen:
Hay muchos otros ( consulte nuestra documentación ), pero estos son los más importantes.
fuente
Eso sí, es una pregunta muy basada en la opinión, así que dejé de hacer fiordos e hice una tabla rápida
Ahora, la comparación de la biblioteca es difícil porque en muchos parámetros, los cuatro hacen lo mismo, excepto posiblemente para Fresco porque hay un montón de nuevas optimizaciones de nivel de memoria, así que avíseme si ciertos parámetros le gustaría ver una comparación basada en mi experiencia.
Habiendo usado menos Fresco, la respuesta podría evolucionar a medida que continúo usándola y la entiendo para las hazañas actuales. El
used personally
es haber utilizado el al menos biblioteca una vez en una aplicación completado.* Nota: Fresco ahora admite animaciones GIF y WebP
fuente
Fuentes de fresco | fuera del sitio
(-)
- Tamaño enorme de la biblioteca
- Sin devolución de llamada con vista, parámetros de mapa de bits
- SimpleDraweeView no admite wrap_content
- Tamaño enorme de caché
(+)
- Cargador de imágenes bastante rápido (para imágenes pequeñas y medianas)
- Mucha funcionalidad (transmisión, herramientas de dibujo, administración de memoria, etc.)
- Posibilidad de configurar directamente en xml (por ejemplo, esquinas redondeadas)
- Soporte de GIF
- Soporte de WebP y Webp animado
Fuentes de Picasso | fuera del sitio
(-)
- Carga lenta de imágenes grandes de Internet en ListView
(+)
- Tamaño
pequeño de la biblioteca - Tamaño pequeño de caché
- Uso simple
- La interfaz de usuario no se congela
- Soporte de WebP
Fuentes de deslizamiento
(-)
- Tamaño grande de la biblioteca
(+)
- Tamaño de caché de hojalata
- Uso simple
- Soporte de GIF
- Soporte de WebP
- Carga rápida de imágenes grandes de Internet en ListView
- La interfaz de usuario no se congela
- BitmapPool para reutilizar memoria y por lo tanto, eventos menores de GC
Fuentes de Universal Image Loader
(-)
- Funcionalidad limitada (procesamiento de imagen limitado)
- El soporte del proyecto se ha detenido desde el 27.11.2015
(+)
- Tamaño de la biblioteca de hojalata
- Uso simple
Probado por mí en SGS2 (Android 4.1) (WiFi 8.43 Mbps)
Versiones oficiales para Java, ¡no para Xamarin!
19 de octubre de 2015
Prefiero usar Glide.
Lee más aquí .
Cómo escribir caché en almacenamiento externo (tarjeta SD) con Glide.
fuente
OutOfMemory
todo el tiempo ...ImagePipelineConfig.setDownsampleEnabled(true)
para evitar que se congele. Pero a veces se salta fotogramas de un GIF. Si solo muestra imágenes estáticas en su aplicación, creo que puede intentarlo.Estas respuestas son totalmente mi opinión
Respuestas
Picasso es un cargador de imágenes fácil de usar, lo mismo ocurre con Imageloader. Fresco utiliza un enfoque diferente para la carga de imágenes, aún no lo he usado, pero me parece más una solución para obtener imágenes de la red y almacenarlas en caché y luego mostrarlas. luego al revés, como Picasso / Imageloader / Glide, que para mí son más Mostrar imagen en pantalla que también obtiene imágenes de la red y las almacena en caché.
Glide intenta ser algo intercambiable con Picasso. Creo que cuando se crearon, la mentalidad de Picasso era seguir las especificaciones HTTP y dejar que el servidor decidiera las políticas de almacenamiento en caché y la memoria caché de tamaño completo y redimensionar según demanda. Glide es lo mismo con seguir la especificación HTTP, pero trata de tener una huella de memoria más pequeña haciendo algunas suposiciones diferentes, como almacenar en caché las imágenes redimensionadas en lugar de las imágenes de tamaño completo, y mostrar imágenes con RGB_565 en lugar de RGB_8888. Ambas bibliotecas ofrecen una personalización completa de la configuración predeterminada.
Es difícil decir qué biblioteca es la mejor para usar. Picasso, Glide y Imageloader son bibliotecas bien respetadas y probadas, todas fáciles de usar con la configuración predeterminada. Tanto Picasso como Glide requieren solo 1 línea de código para cargar una imagen y tienen un marcador de posición y una imagen de error. Personalizar el comportamiento tampoco requiere tanto trabajo. Lo mismo ocurre con Imageloader, que también es una biblioteca más antigua que Picasso y Glide, sin embargo, no lo he usado, así que no puedo decir mucho sobre el rendimiento / uso de memoria / personalizaciones, pero mirar el archivo Léame en github me da la impresión de que también es relativamente fácil de usar y configurar. Entonces, al elegir cualquiera de estas 3 bibliotecas, no puede tomar una decisión incorrecta, es más una cuestión de gusto personal.
Al igual que el SDK de Facebook todavía no se lanzó oficialmente en mavenCentral,no he usado Facebook SDK desde septiembre de 2014 y parece que pusieron la primera versión en línea en mavenCentral en octubre de 2014. Por lo tanto, tomará algún tiempo antes de que podamos obtener cualquier Buena opinión al respecto.entre las 3 bibliotecas de grandes nombres, creo que no hay diferencias significativas. El único que se destaca es el fresco, pero eso se debe a que tiene un enfoque diferente y es nuevo y no está probado en batalla.
fuente
Ni Glide ni Picasso son perfectos. La forma en que Glide carga una imagen en la memoria y realiza el almacenamiento en caché es mejor que Picasso, que permite que una imagen se cargue mucho más rápido. Además, también ayuda a evitar que una aplicación sea popular OutOfMemoryError. La carga de animación GIF es una característica de asesinato proporcionada por Glide. De todos modos, Picasso decodifica una imagen con mejor calidad que Glide.
¿Cuál prefiero? Aunque uso Picasso durante tanto tiempo, debo admitir que ahora prefiero Glide. Pero le recomendaría que cambie el formato de mapa de bits a ARGB_8888 y deje que Glide almacene en caché la imagen a tamaño completo y cambie el tamaño de una primero. ¡El resto haría tu trabajo genial!
RGB_565
.+1 para Picasso Palette Helper .
Hay un post que habla mucho de Picasso vs Glide puesto
fuente
Quiero compartir con ustedes un punto de referencia que he hecho entre Picasso, Universal Image Loader y Glide : https://bit.ly/1kQs3QN
Fresco estaba fuera del punto de referencia porque para el proyecto en el que estaba ejecutando la prueba, no queríamos refactorizar nuestros diseños (debido a la vista Drawee).
Lo que recomiendo es Universal Image Loader debido a su personalización, consumo de memoria y equilibrio entre tamaño y métodos.
Si tienes un proyecto pequeño, iría por Glide (o probaría Fresco).
fuente