`

Android 三大图片加载框架比较

 
阅读更多
1.哪三大图片加载框架?
        1)    Picasso
        2)    Glide
        3)    Fresco
 
2.介绍:
    Picasso :和Square的网络库一起能发挥最大作用,因为Picasso可以选择将网络请求的缓存部分交给了okhttp实现。
    
    Glide:模仿了Picasso的API,而且在他的基础上加了很多的扩展(比如gif等支持),Glide默认的Bitmap格式是RGB_565,比    Picasso默认的ARGB_8888格式的内存开销要小一半;Picasso缓存的是全尺寸的(只缓存一种),而Glide缓存的是跟ImageView尺寸相同的(即56*56和128*128是两个缓存) 。
 
    FB的图片加载框架Fresco:最大的优势在于5.0以下(最低2.3)的bitmap加载。在5.0以下系统,Fresco将图片放到一个特别的内存区域(Ashmem区)。当然,在图片不显示的时候,占用的内存会自动被释放。这会使得APP更加流畅,减少因图片内存占用而引发的OOM。为什么说是5.0以下,因为在5.0以后系统默认就是存储在Ashmem区了。
 
3.总结:
       Picasso所能实现的功能,Glide都能做,无非是所需的设置不同。但是Picasso体积比起Glide小太多如果项目中网络请求本身用的就是okhttp或者retrofit(本质还是okhttp),那么建议用Picasso,体积会小很多(Square全家桶的干活)。Glide的好处是大型的图片流,比如gif、Video,如果你们是做美拍、爱拍这种视频类应用,建议使用。
Fresco在5.0以下的内存优化非常好,代价就是体积也非常的大,按体积算Fresco>Glide>Picasso
不过在使用起来也有些不便(小建议:他只能用内置的一个ImageView来实现这些功能,用起来比较麻烦,我们通常是根据Fresco自己改改,直接使用他的Bitmap层)
分享到:
评论

相关推荐

    Android图片加载框架

    总之,“Android图片加载框架”如Glide,通过优化内存管理、提供丰富的特性、简化API,极大地提升了Android应用的性能和用户体验。了解并熟练掌握Glide的使用,对于Android开发者来说是必不可少的技能。

    Android-ImageLoader具有某些新特性的图片加载框架

    在Android应用开发中,图片加载框架扮演着至关重要的角色,特别是在处理大量图片或者网络图片时。ImageLoader是一款针对Android平台设计的高效、易用的图片加载库,它旨在解决图片加载过程中可能出现的内存管理问题...

    Android-很简单的android图片加载框架Picasso

    **Android 图片加载框架 Picasso 深度解析** 在 Android 应用开发中,图片的加载、缓存和展示是一项非常重要的任务。Picasso 是一个由 Square 公司开发的简单易用的图片加载库,它极大地简化了 Android 应用中的...

    Android-ImageLoaderAndroid图片加载框架的api封装

    本篇将深入探讨Android图片加载框架的API封装,重点关注Fresco、Glide和Picasso这三大主流库,并介绍如何实现大图预览功能,确保即使在处理大型或轮播图片时,内存占用也能保持在较低水平。 首先,Fresco是一个强大...

    Android之Fresco(facebook的强大Android图片加载的框架)

    **Android之Fresco:Facebook的强大Android图片加载框架** 在Android应用开发中,图片加载和管理是一个常见的挑战。图片资源不仅占用大量内存,还可能导致UI卡顿,尤其是在处理大量或者高分辨率图片时。为了解决...

    自己实现的Android 三级缓存图片加载框架

    本项目名为"自己实现的Android 三级缓存图片加载框架",其核心目标就是构建一个类似Glide或Picasso的高效图片加载系统,具备多线程加载功能。 首先,让我们理解一下"三级缓存"的概念。在Android的图片加载框架中,...

    图片加载框架大合集

    在IT行业中,图片加载框架是移动应用开发中的一个重要组成部分,特别是在Android和iOS平台上。这些框架优化了图片的加载、缓存和显示过程,为开发者提供了更高效、更省资源的解决方案。本文将深入探讨“图片加载框架...

    Android 高效的图片加载框架(非第三方)程序源码

    本教程将探讨一种非第三方的Android图片加载框架的源码分析,帮助开发者理解图片加载的基本原理,并能根据需求进行定制化开发。源码来源于CSDN博主的文章,如果有任何疑问,可以通过链接在博客下留言。 首先,我们...

    设计简单的Android图片加载框架

    在Android开发中,图片加载框架是必不可少的一部分,它能够有效地管理图片资源,提高用户体验,并减少对设备内存的消耗。本文将探讨如何设计一个简单的Android图片加载框架,关注于图片压缩、内存缓存和磁盘缓存,...

    android切换图片加载框架 代理

    在Android应用开发中,图片加载框架的切换与代理设计模式是一种常见的优化技术,它涉及到内存管理、线程调度以及用户体验等多个重要方面。本篇将详细探讨Android如何在项目中实现图片加载框架的灵活切换,并利用代理...

    Android 三大图片缓存原理、特性对比

    此外,Facebook还开源了Fresco这一高性能图片加载框架,但由于其还未达到1.0稳定版阶段,本次暂不纳入比较范围。 1. **Universal Image Loader (UIL)** - **简介**:UIL是一款较早出现的图片缓存库,在Android早期...

    android加载刷新框架

    总结一下,Android加载刷新框架通过提供下拉刷新和上拉加载更多功能,极大地优化了用户体验。开发者可以利用开源库,如SwipeRefreshLayout和InfiniteScrolling,轻松集成这些功能到自己的应用中。通过学习和理解这些...

    Android 图片加载框架

    Android 图片加载框架是Android应用开发中的重要组成部分,主要用于优化图片的加载、缓存和显示,以提升用户体验并减少内存消耗。"Android-Universal-Image-Loader-master" 是一个广泛使用的开源项目,提供了完整的...

    Android Fresco图片加载框架demo

    Android Fresco图片加载框架是一款强大的图像处理库,尤其在处理大量和复杂图片显示时表现出色。这个框架由Facebook开发并开源,旨在解决Android平台上图片加载、缓存和显示的一系列问题。Fresco的设计理念是优化...

    Picasso:android图片加载框架

    Picasso:很简单的android图片加载框架 【使用步骤】 1. 在project的build.gradle添加如下代码 allprojects { repositories { ... maven { url "https://jitpack.io" } } } 2. 在Module的build.gradle添加依赖...

    安卓 图片加载框架

    因此,开发者通常会选择使用第三方图片加载框架,如Android-Universal-Image-Loader,来解决这些问题。 Android-Universal-Image-Loader(简称UIL)是一个功能强大的、高度可配置的图片加载库,它支持从网络、SD卡...

    Android-异步图片加载器

    - 加载框架可能包含图片的缩放、裁剪、压缩等功能,以适应不同尺寸的ImageView,减少内存占用。 - 使用`BitmapFactory.Options`来控制图片解码,避免一次性加载过大图片导致内存溢出。 5. **多线程策略**: - ...

    Android中图片加载框架Picasso的使用

    在Android应用开发中,图片加载是一项重要的任务,尤其是在处理用户界面和用户体验时。Picasso是一个由Square公司开发的流行图片加载库,它简化了图片的加载、缓存和显示过程。本文将深入探讨Picasso在Android中的...

    android 加载网络框架

    "android 加载网络框架"是指用于简化Android应用程序中网络请求处理的库。在这个场景下,我们关注的是`android-async-http`框架,它是一个基于Apache HttpClient的网络异步操作库,特别适合进行数据的后台加载,以...

Global site tag (gtag.js) - Google Analytics