DiskLruCache

《Android开发艺术探索》超详细笔记【转载】

瘦欲@ 提交于 2020-10-28 10:58:16
原文地址:https://www.cnblogs.com/jooy/articles/8926144.html 本笔记整理自: https://www.gitbook.com/book/tom510230/android_ka_fa_yi_shu_tan_suo/details 参考文章: http://szysky.com/tags/#笔记、http://blog.csdn.net/player_android/article/category/6577498 本书是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的Android应用开发要点。本书从三个方面来组织内容。 1. 介绍Android开发者不容易掌握的一些知识点 2. 结合Android源代码和应用层开发过程,融会贯通,介绍一些比较深入的知识点 3. 介绍一些核心技术和Android的性能优化思想 目录 第1章 Activity的生命周期和启动模式 第2章 IPC机制 第3章 View的事件体系 第4章 View的工作原理 第5章 理解RemoteViews 第6章 Android的Drawable 第7章 Android动画深入分析 第8章 理解Window和WindowManager 第9章 四大组件的工作过程 第10章 Android的消息机制 第11章 Android的线程和线程池

Android App性能优化技能,看这篇就够了

允我心安 提交于 2020-04-26 11:28:27
一.何为App的性能 拿小车举例,大家知道什么是一辆小车的性能吗?同学甲说,是否省油、加速是否够快、开起来是否稳定、安全等等。 没错,那就是小车的性能。 那App的性能又是指什么呢?同学乙说,App启动是否够快,运行是否流畅,是否省电、省流量,安装包体积是否够小等等。 是的,这就是App的性能。 二.关注App性能,有什么用 我们知道,一辆小车性能越好,加速越快,跑的越稳,越省油。 App也一样,性能越好,运行更流畅、更稳定、更省流量、电量,包的体积也会更小,这能给用户带来优秀的体验,进而也会提升App的知名度。 既然App性能那么重要,那我们就要掌握App性能优化的技能了。 三.如何进行App性能优化 掌握App性能优化,是Android开发人员进阶中高级的必备技能。那如何进行App的性能优化呢? 我们可以从这几个方面入手:卡顿优化、内存优化、稳定性优化、耗电优化、安装包大小优化、数据库SQLite优化、网络优化。 接下来,我们逐一展开讲解。 1.卡顿优化 1.1卡顿场景 可分为四个大的方向: 1.1.1UI UI包括绘制和渲染。 1.1.2启动 启动可分为冷启动、热启动。 1.1.3跳转 跳转包括页面间跳转和前后台切换。 1.1.4响应 包括:点击、滑动、系统事件、按键。 1.2卡顿原因 可分为以下两方面原因: 1.2.1绘制任务太重 首先,我们要明白这样一个概念

高效使用Bitmaps(三) 神奇的Cache

独自空忆成欢 提交于 2019-12-01 19:43:40
应用的场景 假设你开发了一个聊天程序,它的好友列表中显示从网络获取的好友头像。可是如果用户发现每次进入好友列表的时候,程序都要重新下载头像才能进行显示,甚至当把列表滑动到底部再重新滑动回顶部的时候,刚才已经加载完成了的头像竟然又变成了空白图片开始重新加载,这将是一种糟糕的用户体验。为了解决这种问题,你需要使用高速缓存技术——Cache。 什么是Cache? Cache,高速缓存,原意是指计算机中一块比内存更高速容量更小的存储器。更广义地说,Cache指对于最近使用过的信息的可高速读取的存储块。而本文要讲的Cache技术,指的就是将最近使用过的Bitmap缓存在手机的内存与磁盘中,来实现再次使用Bitmap 时的瞬时加载,以节省用户的时间和手机流量。 下面将针对Android中的两种Cache类型Memory Cache和Disk Cache分别进行介绍。样例代码取自 Android开发者站 。 1/2:Memory Cache ( 内存中的Cache ) Memory Cache使用内存来为应用程序提供Cache。由于内存的读写速度非常快,所以我们应该优先使用它(相对于下面将介绍的Disk Cache来说)。 Android中提供了 LruCache 类来进行Memory Cache的管理(该类是在Android 3.1时推出的,但我们可以使用 android -support