Bitmap高效缓存

本文主要是对慕课网qndroid老师视频教程的总结,视频链接

Bitmap基本概念

Bitmap并不是只属于Android的概念;Bitmap(又称栅格图、点阵图)是使用像素阵列来表示的图像。
对于android而言:
1.Bitmap是Android系统中的图像处理的最重要类之一。
2.通过Bitmap我们可以获取图片的信息。
比如图片宽、高、Alpha值,也可以根据这个Bitmpa再创建新的BItmap等等。
3.获取到信息后,可以对其进行缩放,裁剪等操作。
本文主要是对Bitmap加载和缓存进行讲解。
有关bitmap的加载,总而言之一句话:
Bitmap为我们提供了对图像文件的操作支持,就像File类为我们提供了对本地文件操作一样。

Bitmap加载方式

Bitmap有以下几种加载方式:
1.BitmapFactory.decodeByteArray() 字节数组
2.BitmapFactory.decodeFile() 文件路径
3.BitmapFactory.decodeResource() 资源ID
4.BitmapFactory.decodeStream() 流

Demo:


缓存

客户端的缓存,就是讲从服务器请求到的数据(Json,File)等保存到本地,这就是缓存
缓存的优势
1.对一些不是经常繁盛变化的数据,直接使用本地缓存,提升应用响应速度(流畅性)
2.不再频繁的请求服务器,可以降低服务器的负载压力(这点很重要)
3.一些特殊场景下的使用,例如:离线阅读
常用使用场景
1.对Bitmap和File等大数据进行缓存,无需每次都从服务器下载,尤其是ListView或者RecycleView
2.数据更新不需要实时更新,采用缓存机制
常用缓存策略
1.android LruCache实现内存缓存
2.android DiskLruCache实现硬盘缓存
3.SQLite实现缓存(不重要)【因为存到数据库是存到本地的】
图片三级缓存
1.LruCache
2.本地存储
3.网络获取
一般是先从内存缓存中取,如果取不到,那么就从本地存储中查找,还找不到就去网络请求。
需要三级缓存代码的留言即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值