位置: 编程技术 - 正文

Facebook推出强大Android图片库Fresco 自动释放内存 图片缓存 内存益处

编辑:rootadmin
自动释放内存!Facebook推出强大Android图片库Fresco

推荐整理分享Facebook推出强大Android图片库Fresco 自动释放内存 图片缓存 内存益处,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

快速而又高效的显示图片对Android设备来说是件极其重要的事情,但在过去的几年里,在有效存储图像方面我们面临了很多问题。图片太大,而手机又只有很小的内存,特别是Android设备还要将内存分割给各个应用。所以,太多的图片总会耗去大部分的内存,从而导致应用的崩溃。

为了解决这一问题,Facebook最近推出了一款用于Android应用中展示图片的强大图片库Fresco,它能够从网络、本地存储和本地资源中加载图片。而且,为了节省数据和CPU,它拥有三级缓存。此外,Fresco在显示方面是用了Drawees,可以显示占位符,直到图片加载完成。而当图片从屏幕上消失时,会自动释放图片所占的内存。Fresco支持Android 2.3及以上版本,目前已托管至Github上。

主要特性:

内存

解压后的图片和Android的位图都会占据很大的内存,这导致Java 垃圾收集器更频繁的运行,也让应用变得更加缓慢,这一问题在没有对垃圾收集器进行完善的Android 5.0上尤为严重。

Facebook推出强大Android图片库Fresco 自动释放内存 图片缓存 内存益处

在Android 4.x及以下版本,Fresco将图片放置在Android内存的一个特殊位置。这可以确保当图像不在屏幕上显示时,可以自动释放它们所占的内存。让应用运行的更快速,且不易崩溃。

使用Fresco的应用,即使在配置低端的设备上也能正常运行,而且你无需经常性地去担心图片的内存占用情况。

Streaming

Web上的渐进式(Progressive)JPEG图片已经存在多年,打开文件过程中,会先显示整个图片的模糊轮廓,随着扫描次数的增加,图片变得越来越清晰。这种&#;式可以说是网络较慢情况下的救星,通过图片的轮廓知道正在加载的图片大概是什么。

Android自己的图片库不支持streaming,而Fresco可以,只需指定一个URI,你的应用程序就可以随着数据的到来,自动更新它的显示。

动画

动画GIF和WebP应该是应用的难点,每一帧都是一个大型的位图,而每个动画都是一系列的帧。Fresco则负责加载和处理这些帧及管理它们的内存。

Drawing

Fresco在显示方面使用了Drawees,Fresco的Drawees能够显示占位符,直到图片已加载,并自动显示到图像到达时:

将图片扩展至自定义的焦点,而不是作为处理的中心。使用圆角化或圆形来显示图像。如果网络加载失败的话,用户可以点击占位符重新加载图像。显示自定义背景、浮窗小部件(overlays)或图像上的进度条。当用户点击图片,自定义浮窗小部件。加载

Fresco的图像管道可以让你以多种方法来自定义加载:

为一个图像指定不同的URI,从中选取一个已经缓存的显示。优先显示低分辨率图像,待数据到达后交换到高的分辨率。如果图像有EXIF缩略图,首先显示缩略图,直到整个图片被加载出来(只针对本地图片)。调整或旋转图像。即使是在老版的Android上也可以解码WebP图像,只不过不是全部支持。github:

ContentProvider深度探索 如果你选择用SQLite数据库存储应用程序数据,我建议你创建ContentProvider,即使存储的数据仅供内部使用。原因是Android提供了一些工具类以及UI相关的类

Doubango ims 框架分析之 sip协议栈----------以及Android调用ffmpeg的讲解------阿冬专栏 来自:

android 随手笔记九 该文章转载自:

标签: Facebook推出强大Android图片库Fresco 自动释放内存 图片缓存 内存益处

本文链接地址:https://www.jiuchutong.com/biancheng/381082.html 转载请保留说明!

上一篇:Android手机Mac OSX下执行adb shell提示device not found解决方法(ANDROID手机客户端软件开发工程师)

下一篇:android 随手笔记九(下载随手笔记)

  • 工会筹备金需不需要计提
  • 进项税额转出影响城建税吗
  • 股东借款超过一年个人所得税
  • 有形动产租赁服务计入什么科目
  • 总公司收回未分配利润如何入账?
  • 长期待摊费用摊出来钱去哪里了
  • 健身房开业前买的瑜伽垫怎么做账?
  • 加工承揽合同印花税谁交
  • 银行存款日记账最后一行怎么填
  • 营改增后进项税相关规定
  • 渔业专业合作社简介
  • 中级会计考试报名
  • 固定资产房屋折旧年限及残值
  • 营改增后建筑业分包怎么交税
  • 收到社保补助不发放
  • 工资中的话费补助是什么
  • 收到畜禽无害化处罚通知
  • 未开发票的结算款怎么入账?
  • 工商年报财务数据怎么填
  • 购买所有物品都是可以退货吗
  • 给对方发短信显示imessage
  • win10怎么关闭开机磁盘自检
  • 融资租赁和经营租赁哪个更常见
  • php 语法
  • 房地产无证销售法律风险
  • 汇算清缴后补缴企业所得税账务处理
  • PHP:stream_get_contents()的用法_Stream函数
  • PHP:pg_lo_read()的用法_PostgreSQL函数
  • 以本年利润弥补以前年度亏损会影响所有者权益总额吗
  • 大堡礁分布在澳大利亚的哪里
  • 高新企业技术服务成本核算
  • 申报表已申报未交款后作废
  • php数组排列组合
  • 增长gdp是什么意思
  • 季报的利润表本月金额填的是当月数可以吗
  • 常用的绘图比例有哪些?
  • web2.0核心
  • logparser命令
  • 存货报废如何处理方案
  • 纳税调整项目明细表30行怎么填写
  • mysql百万级数据分页查询优化
  • PHP MongoDB GridFS 存储文件的方法详解
  • 分公司负责人如何开展工作的
  • 海关进口增值税专用缴款书稽核比对可能出现哪些结果
  • 申报表填完后下一步是什么
  • 小微企业需要专职安全员吗
  • 银行转账支付凭证有效期多久
  • 发票识别
  • 自己动手把桌子改窄
  • sql如何查询某个表的列名
  • 公司转让商铺应交什么税
  • 收到银行开的手续费发票如何做帐
  • 申请国家知识产权的条件
  • 负数发票要交税吗
  • 应付账款和预付账款都属于负债类科目
  • 培训费用支出
  • 代理记账企业如何通过互联网创新发展
  • sqlserver查询数据库表名
  • doc怎么使用
  • mac怎么用win系统
  • 64位win8怎么安装南天PR2E针式打印机驱动?
  • 菜鸟flask
  • mac电脑 删除废纸篓里的指定文件
  • mac如何修改用户名称
  • Win10预览版拆弹
  • win8系统文件
  • linux系统设置
  • cocos2dx入门
  • Node.js中的事件循环是什么
  • 支持向量机
  • 如何修改android studio的下载路径
  • Unable to execute dex: Multiple dex files define 解决方法
  • nodejs微信小程序开发工具
  • unity如何成一组
  • Android本地文件怎么显示歌词
  • unity2d摇杆
  • android_zh
  • 安卓cts认证
  • 重庆税务登记证在哪里办理
  • 银行是不是要交社保
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设