前言 对于近两年的Android开发来讲,因疫情以及互联网风向影响(互联网寒冬),大环境持续下行,各大公司的业务线收缩及裁撤成为常规操作,公司内卷成常态。 作为一个螺丝钉,我们想要卷出重围,性能优化必须了解一下! 就博主来说,目前已经从事了7年Android开发工作,也从事了相当之久的性能相关的工作,接触了不少模块,但说真心话要做好性能这一块,真心不容易。 为何这么说呢?其实主要是因为学习起来所要了解的知识非常多,对于Android这块来讲各个知识点其实都可以看做一个整体,牵一发而动全身,学性能优化但却又不仅仅只学性能优化。 对于初级Android开发来说,性能优化又不得不学。在初级开发严重饱和的现在,不掌握一门过硬的技术,迟早会被优化。你可以选择重点学习Framework或者音视频开发性能优化等等,今天我就对性能优化方面的知识模块做一个梳理,希望能够帮助到各位正在学习中的朋友。 这篇文章记录了Android性能优化所必须掌握的知识,涵盖性能优化相关的方方面面。 Android的性能优化,主要从以下几个方面开展: 稳定(内存溢出、崩溃) 耗损(耗电、流量) 安装包(APK瘦身) 流畅(卡顿) 此外APK瘦身是性能优化必学部分,大家可以结合这个APK瘦身视频进行学习:APK优化系列瘦身篇,还有冷启动、热启动等很多性能优化方面的技巧,这里就不一一赘述了。 针对性能优化这个要点,今天分享给大家一份《2022Android性能优化核心知识笔记》,强调一下:【因篇幅问题:文中只放知识点,全部文档需要的可找作者获取。】这些B站性能优化开发视频也可以供大家学习:APK优化系列瘦身篇APK优化系列加固篇APK优化系列签名篇Android性能优化专题一、UI优化(节选部分知识点) UI优化似乎是Android性能优化中最简单的部分,但是也是细节满满,不注意细节也很容易翻车!UI层级规范以及对U加载的影响UI卡顿原因分析以及修复Ul绘制、布局、测量原因以及处理方案实战:从原理到实战,多维度解决Ul造成的性能问题 二、APP启动优化(节选部分知识点) 想要提升App的启动速度,那就必须要学启动优化知识点!系统的启动原理为什么腾讯系APP的启动都用框架来处理?如何利用数据结构与算法做框架设计?项目开发中任务管理系统如何设计?JUC闭锁与AQS技术在启动架构设计中的应用App启动框架对启动优化的意义最大化利用CPU资源为项目服务 三、崩溃优化(节选部分知识点) 崩溃是app当中经常会发生的时候,非常影响用户体验,所以这一模块的学习也是至关重要的。项目奔溃异常捕获优雅的异常处理方案项目中如何避免异常弹框实战:手写实现异常处理框架 四、卡顿优化(节选部分知识点) 卡顿优化可以说是Android性能优化中最复杂的环节,所以大家学习的时候更得注意细节。多维度分析造成卡顿的原因内存抖动与GC回收内存抖动与GC回收优化实战:从维度解决卡顿问题实战 五、安全性优化(节选部分知识点) 安全性优化部分也是不得不学的APP加固实现(防反编译,dex加固)https防抓包机制(数据传输加载,客户端服务器端双向加密校验)优化实战:手写打造APK加固框架 六、弱网优化(节选部分知识点) 大家都有玩游戏网络卡的情况,网络优化一直被认为是移动优化水最深的领域之一serializable原理parcelable接原理解析http与https原理详解protbuffer网络IO详解gzip压缩方案。。。。。 七、APP深度优化(节选部分知识点)大图加载优化Glide巨图加载机制原理分析大图多级缓存实现方案优化实战:手写微博巨图加载功能 最后再次强调一下:【因篇幅问题:文中只放知识点,全部文档需要的可找作者获取。】