不管你是在大厂还是小厂,不管你开发能力有多么牛逼,不管你参与开发过什么出名APP,性能优化这一关你必定是要过的,而在性能优化之中最重要的一环还得是启动优化。

因为启动速度直接决定了用户使用该 App的留存率和转化率,想必没人希望自己点开某APP后需要等待很长一段时间才打开吧?
所以我发费了一点时间,去研究了一番,发现网上大多数关于启动优化文章,都有三个共同特性:
1. 将启动页主题背景设置成闪屏页图片
这么做的目的主要是为了消除启动时的黑白屏,给用户一种秒响应的感觉,但是并不会真正减少用户启动时间,仅属于视觉优化。
2. 主页面布局优化
1)通过减少冗余或者嵌套布局来降低视图层次结构
2)用 ViewStub 替代在启动过程中不需要显示的 UI 控件
3. Application 和 主 Activity 的 onCreate 中异步初始化某些代码
因为在主线程上进行资源初始化会降低启动速度,所以可以将不必要的资源初始化延迟,达到优化的效果。但是这里要注意懒加载集中化的问题,别用户启动时间快了,但是无法在界面上操作就尴尬了。
但并不说是不管用或者过时了,只是这三种优化方式都是非常基础的方式,当你的启动优化遇到了瓶颈,是不能够再通过这三种方式突破的。
对于如今Android 行业中来说,在简历中写上会基础的优化方式并没有什么亮点。别人想看的是:体系化的论述以及实际的项目实践。
什么叫体系化的论述呢?例如启动优化:
从第一步就可以看出,就涉及到了Framework相关知识,把 Framework与具体的性能优化相结合,那就能体验出了解它的实际意义了,也没有那么容易忘记了。
很多小伙伴自己尝试做这个流程还是比较吃力的,毕竟不是网上搜搜就能找到每个阶段系统化的分析的,而且项目实践对于很多小红包也是个老大难的问题。
为了帮助到大家更好的掌握性能优化相关知识点,这准备了 性能优化知识点汇总和Android 性能监控框架 的学习文档,中间记录了 启动优化、内存优化、UI优化……等知识点,感兴趣的可以看下这《Android 性能调优系列学习手册》:https://0a.fit/dNHYY
内存优化

UI优化

电量优化

网络优化

Bitmap优化与图片加载优化

感兴趣的可以看下这《Android 性能调优系列学习手册》:https://0a.fit/dNHYY
多线程并发优化与数据传输优化

安装包优化与服务优化

启动优化

Android 性能监控框架 Matrix

Android 性能调优系列:https://0a.fit/dNHYY
Android 车载学习指南:https://0a.fit/jdVoy
Android Framework核心知识点笔记:https://0a.fit/acnLL
Android 八大知识体系:https://0a.fit/mieWJ
Android 中高级面试题锦:https://0a.fit/YXwVq
下一篇:一缕青丝乱,几处情愁下句