Android App性能优化系列

关于Android App的优化,从第一篇的计划开始,到内存优化的系列文结束,不知不觉近三个月的时间,写了十五六篇相关的博文,算是对自己的知识的一个系统化,也希望能给大家一些帮助。

在此有对此做一个总结。

路线

Android App优化

1,  App性能优化要怎么做

在系列的开篇文中,我们聊到了本系列的一个缘由,和当时的一个计划,系列也基本是朝着这个这个方向走的。

2,  性能分析工具

在此介绍了一些惯用的性能分析工具,包括官方,第三方的,内存分析的,UI分析的,执行时间性能分析等等。

关于工具的使用,还有一篇番外篇 - adb的使用

3,App启动速度优化

第一篇真正动手的优化项目,App的启动速度优化。这里实际上有一个小系列,为了将问题说得更清楚,加入了一篇系列之外的译文 - 应用的启动流程分析,然后是启动速度优化的理论和实例挑战。

4,  布局怎么摆

介绍了Layout分析的工具,并以实例说明了其使用。提出了一些关于布局优化的建议。

5,  ANR详解

从ANR的概念,ANR的产生原因,如何避免ANR这几个角度来“剖析”了下ANR。提供了如何分析ANR的方法,并深入分析了ANR的集中产生原因和其解决之道。

如图6所示,  消除卡顿

讲解了卡顿的产生原因,并引入工具实例分析如何避免卡顿。

7,  内存优化

这是一个大的子集,分成了五篇来写,分别包括:

7.1  垃圾回收的基础知识-GC那些事儿

简单解析了GC的机制,旨在让大家对于垃圾回收有一个理论理论基础,对于GC Roots,活对象,死对象等有个概念。

7.2  Android是如何管理App内存的

以Android的VM为基础,说明了Android App的内存限制,App切换时的内存管理机制,进程优先级等。

7.3  内存分析工具详解

介绍了一系列内存分析工具的使用。

7.4  以一个内存泄露代码为例讲解内存问题分析的过程

基于上篇的内存分析工具,对一个内存泄露的实例代码进行分析,找出内存泄露的原因。这么一个过程,实际上也是对于前面理论基础,工具使用的一个实践。

7.5  内存使用小结

算是对内存优化系列的一个小结,对于常见的内存泄露机器解决方案,内存使用等有一个概览。

着重对于内存泄露的分析和解决有一个说明。

8,  电量省着用

电量使用优化是一个不太被关注的优化,还是以工具入手,介绍电量使用的分析方式,并给出常见的耗电项极其优化方案。

9,  高效网络请求

从网络流量对用户的影响切入,介绍了App网络的分析,各方面网络优化的方案等。

对于网络缓存的使用,引用了MVP架构Github客户端之网络缓存篇。

说明

如系列开篇中所言,本系列可以算是一个基于实际线上App的性能优化的笔记。并非App优化,就算是单说性能优化,此系列也并没有能涵括所有。

App的优化是一个持续的工作,需要我们持续的关注。

实际上,关注代码质量,也是App优化的一个方面。

结语

照例,加个结语,算是对自己的一个小结,有些东西也希望分享出来大家共勉。

首先,对于写文,一概的态度是相对严肃的,总认为,毕竟的对外传输知识,内容可能会少,但不希望有错。希望没有把大家带到坑里~~哈哈。

然后,实际上一直强调,  授之以渔。重要的是教方法,所以,可以看到这个系列中很多是在讲解一些工具的使用,结合案例的分析过程。并非单纯的摆出性能优化应该怎么做balabala,一二三四五六点。

再然后,并非没有理论。正所谓知其然知其所以然引入了好几篇的理论文章作为衔接,是想让大家能在同一个理论基础上去加深对工具使用和分析过程的理解。

Android App性能优化系列相关推荐

  1. Android App 性能优化系列结语篇

    Android App 性能优化系列结语篇 原文出处:http://gold.xitu.io/post/581f4ad667f3560058a33057 关于Android App的优化, 从第一篇的 ...

  2. Android App 性能优化总结

    Android App 性能优化系列结语篇 转发自:http://blog.lmj.wiki/2016/11/06/app-opti/app_opt_summary/#more 关于Android A ...

  3. Android APP性能优化

    转载自:https://www.cnblogs.com/qwangxiao/p/8727229.html Android APP性能优化(最新总结) 导语 安卓大军浩浩荡荡,发展已近十个年头,技术优化 ...

  4. Android APP性能优化(一)

    Android APP性能优化(最新总结) 安卓大军浩浩荡荡,发展已近十个年头,技术优化日异月新,如今Android 8.0 Oreo 都发布了,Android系统性能已经非常流畅了.但是,到了各大厂 ...

  5. Android App 性能优化之稳定性

    Android App性能优化之稳定性问题分类 1. ANR 2. Crash 3. 应用退出 1. ANR ANR(Application Not Responding 应用程序无响应) 1.1大致 ...

  6. Android App性能优化十技巧

    无论锤子还是茄子手机的不断冒出,Android系统的手机市场占有率目前来说还是最大的,因此基于Android开发的App数量也是很庞大的.那么,如何能开发出更高性能的Android App?相信是软件 ...

  7. Android App性能优化之内存优化

    为什么要进行内存优化? 1.App运行内存限制,OOM导致App崩溃 2.App性能:流畅性.响应速度和用户体验 Android的内存管理方式 Android系统内存分配与回收方式 ●   一个App ...

  8. android 北斗定位代码_大牛三步教你解决,BAT资深APP性能优化系列-卡顿定位问题,收藏哦

    前言 讲解的内容大体包含,异步优化,启动优化,卡顿优化,内存优化,ARTHook, 监控耗时盲区,网络,电量,瘦身及APP容灾方案等 性能优化的系统学习方法 330页 PDF Android进阶核心笔 ...

  9. Android应用性能优化系列视图篇——隐藏在资源图片中的内存杀手

    图片加载性能优化永远是Android领域中一个无法绕过的话题,经过数年的发展,涌现了很多成熟的图片加载开源库,比如Fresco.Picasso.UIL等等,使得图片加载不再是一个头疼的问题,并且大幅降 ...

最新文章

  1. 国内5G工程建设面临的6大挑战
  2. mysql类型_MySQL的数据类型
  3. python与java的比较_Python和Java两者有什么区别?
  4. 动态规划—01背包问题
  5. SQL未能排它地锁定数据库以执行该操作解决
  6. SBO中的manager用户已锁定
  7. sql语句中的in用法示例_PHP中的循环语句和示例
  8. android fragment中引入自定义view_厉害了,用Android自定义View实现八大行星绕太阳3D旋转效果...
  9. python如何把二进制转文本_在python3中如何把文本转换为二进制
  10. [云计算] 001.云计算简介
  11. 设计模式----装饰模式(C++实现)
  12. 一篇 JPA 总结
  13. PeckShield旗下数字资产反洗钱系统CoinHolmes亮相北京网络安全大会!
  14. 上三角数字三角形(Java)
  15. java二进制保存图片_Java中如何把图片转换成二进制流
  16. Codeforces Round #613 (Div. 2)(B-D)
  17. jaspersoft studio创建jasperreport模板 summary显示page header(页眉)
  18. SSH 通过跳板机连接远程主机
  19. 【python】腾讯云+python SDK免费发送短信
  20. 【Unity Shader编程】之十四 边缘发光Shader(Rim Shader)的两种实现形态

热门文章

  1. java的Duration的时间格式解析,ISO-8601持续时间格式
  2. 【HTML】企业网站
  3. 计算机专业教师资格证面试,教师资格证面试中小学计算机说课
  4. 微信小程序循环输出数组里的取值
  5. centos7安装网卡驱动
  6. mybatis-210721-01---动态sql-if判断where查询条件
  7. 极光网安实验室web组考核WP
  8. 关于使用apksigner.bat对APK进行重新签名记录
  9. 苹果将推出新款iPad Pro:搭载M2芯片,直接上架官网
  10. java根据PostMan发送请求:设置接口请求工具类。