Android 12 国外“翻车“,系统崩溃、续航缩水,针对这些性能问题我们如何解决

前言

性能的优化是一个老生常谈的点,也是一个比较重要的点,伴随着Android 12 在国外“翻车”,续航明显缩短、部分应用程序频繁卡退、偶尔出现系统应用崩溃等等,Android性能优化方面已经刻不容缓。

有哪些方面需要优化

在平时的优化过程中我们需要从哪几个点来优化呢?其实我们平时自己一定也用过软件,在使用软件的过程中有没有什么想吐槽的呢?

“这个 app 怎么还没下载完!”、“太卡了吧!”、“图片怎么还没加载出来!”、“怎么刚进去就卡了!”、“这么点了一下就退出了!”等等,是不是有这样的想法?这些想法其实包含了我们今天要说的内容,就是从哪些方面来优化我们的 APP ,我总结了以下几点。

  • APK 瘦身优化
  • 启动速度优化
  • 稳定性优化
  • 内存的优化
  • 操作流畅度优化

当然,需要优化的不仅仅是这几个方面,目前市场上做的比较多的优化主要是这几个方面,暂时就这几个方面来谈谈怎么去学习优化吧。

文中资料文末可领取

APK瘦身

如果要优化 APK 的大小,我们首先需要知道我们编译出来的 APK 都包含哪些东西,然后针对占用大的做裁剪,或者删除不需要的东西,从而达到瘦身的目的。1. 结构分析, 2.
具体实操 3. 总结

启动速度与执行效率优化

一般启动方式分为,冷启动和热启动,在对于应用的启动,我们需尽量的避免一些耗时的,非必要的操作,这是我们优化的一部分,具体可查看下列文档。

稳定性优化

app 稳定一般指的是 app 能正常运行,app 不能正常运行的情况分为两大类,分别是 Crash 和 ANR。解决这两个,相信你就解决了一大半的问题了。

内存优化

硬件的内存总是有限的,所有每个应用分到的内存也是有限的,所有内存的优化很有必要,否则应用就没有足够的内存使用了,这个时候就会 Crash 。了解内存的消耗,对症下药,才可以有一个好的优化效果。

操作流畅度优化

流畅度方面无非最讨厌的就是在操作工程中突然卡顿,这时候电脑都想给它砸掉,虽然我们知道了大概哪些原因会导致卡顿,但是我们无法准确定位出问题的代码点在哪里,这就得看下面了,检测与处理。
在这里插入图片描述
以上是我工作中涉及到的优化点,可能不是很全,也难免有遗漏。除以上的这些点我最近和字节、阿里、百度等多位技术人员共同讨论,收纳总结了更多性能优化解决方案及案例,分享给大家,让产品的性能从各个方面得到提升,希望大家喜欢。

资料详情

第一章 设计思想与代码质量优化

1.六大原则

  • 单一职责原则
  • 里氏替换原则
  • 依赖倒转原则
  • 接口隔离原则
  • ……

2.设计模式

  • 结构型模式:桥接模式、适配器模式、装饰器模式、代理模式、门面(外观)模式……
  • 创建型模式:建造者模式、单例模式、抽象工厂模式、工厂方法模式……
  • 数据结构:数组、栈、队列、链表、树……
  • 算法:排序算法、查找算法……

第二章 程序性能优化

1.启动速度与执行效率优化
2.布局检测与优化
3.内存优化
4.耗电优化
5.网络传输与数据存储优化
6.APK 大小优化
7.屏幕适配
8.OOM问题原理解析
9.ANR问题解析
10.Crash 监控方案

第三章、 开发效率优化

1.分布式版本控制系统 Git

  • 企业高效持续集成平台场景介绍
  • GIT 分布式版本控制系统
  • GIT 分支管理
  • ……

2.自动化构建系统 Gradle:

  • Gradle 与 Android 插件:gradle 与 android gradle 插件的关系、Gradle Transform API 的基本使用……
  • Gradle Transform API 的基本使用:什么是 Transform、Transform 的使用场景、Transform API 学习、输入的类型……
  • 自定义插件开发:Gradle 插件简介、开始准备、实践、自定义 Gradle 插件、buildSrc 模块方式……
  • 插件实战:多渠道打包、发版自动钉钉……
    在这里插入图片描述

第四章、APP 性能优化实战

1.启动速度
2.流畅度
3.抖音在 APK 包大小资源优化的实践
4.优酷响应式布局技术全解析
5.网络优化
6.手机淘宝双十一性能优化项目揭秘
7.高德 APP 全链路源码依赖分析
8.彻底干掉 OOM 的实战经验分享
9.微信 Android 终端内存优化实践

需要文中完整版的学习资料,可以扫描下方二维码关注免费领取
在这里插入图片描述

总结

性能优化是我们进阶的毕竟之路。So,我们必须要会,至于“会”到什么程度,就要看个人理解了。其实,上面介绍的只是性能问题的冰山一角,真正的优化,我们是在项目中总结出来的。但,我们不能一味的追求优化,就例如我,现在只是在进行优化的总结,而对于真正的实行,并没有开始,因为,优化是有风险的,一个不小心,整个项目都可能炸了。所以这就需要你的经验,以及各种总结,在改进行优化的地方先进行优化,看看效果如何,例如,UI的优化以及代码的优化。可以先拿一些网上的开源项目进行优化等等。最后,尽情的享受优化吧。

猜你喜欢

转载自blog.csdn.net/m0_59614665/article/details/121125960