Android葵花宝典Android技术知识Android开发经验谈

Android性能优化:手把手教你如何让App更快、更稳、更省(

2018-05-30  本文已影响1371人  Carson带你学安卓

前言

文章较长,建议预留较长时间阅读 / 收藏


目录

示意图

1. 性能优化的目的

性能优化的目的是为了让应用程序App 更快、更稳定 & 更省。具体介绍如下:


2. 需优化的性能指标

针对上述目的,需优化的性能指标 含:流畅性、稳定性、资源节省性


3. 优化方向

示意图

4. 流畅性

4.1 启动速度

由于我们打开的页面大多是Activity,下面将给出加速启动Activity的方式

示意图

4.2 页面显示速度

  1. Android性能优化:手把手带你全面了解 绘制优化
  2. Android性能优化:布局优化 详细解析(含<include>、<ViewStub>、<merge>讲解 )

4.3 响应速度

关于ANR的简介如下

示意图
  1. 多线程的方式 包括:AsyncTask、继承 Thread类、实现 Runnable接口、Handler消息机制、HandlerThread
  2. 注:实际开发中,当一个进程发生了ANR后,系统会在 /data/anr目录下创建一个文件 traces.txt,通过分析该文件可定位出ANR的原因

4.4 其他优化方案

4.5 总结

下面,总结 关于流畅性的性能优化方案


示意图

5. 稳定性

这2个错误的结果将导致程序无法使用

5.1 应用无响应(ANR)

示意图
  1. 多线程的方式 包括:AsyncTask、继承 Thread类、实现 Runnable接口、Handler消息机制、HandlerThread
  2. 关于多线程的使用,可看我写的关于多线程的文集:多线程系列
  3. 注:实际开发中,当一个进程发生了ANR后,系统会在 /data/anr目录下创建一个文件 traces.txt,通过分析该文件可定位出ANR的原因

5.2 应用崩溃(Crash)

内存溢出 简介:


示意图

5.3 总结

下面,总结 关于稳定性的性能优化方案


示意图

6. 资源节省性

6.1 内存优化

  1. Android性能优化:这是一份全面&详细的内存优化指南
  2. Android性能优化:手把手带你全面了解 内存泄露 & 解决方案

6.2 减少安装包大小

  1. 空间占有率:即 应用程序占有手机内存的大小
  2. 下载门槛:应用的安装包越大,用户下载的门槛越高

特别在移动网络下,用户下载应用时,对安装包大小的要求更高,因此减小安装包大小可让更多用户愿意下载 & 使用产品

示意图 示意图

6.3 减少网络流量

具体描述:当加载资源时,先从内存缓存中寻找;若内存缓存中没有,则从文件缓存中寻找;若文件缓存中没有,最终再通过流量从网络中加载获取

6.4 减少应用的耗电量

具体优化方案如下:


示意图

6.5 总结

下面,总结 关于资源节省性的性能优化方案


示意图

7. 总结

性能优化概述 示意图

请点赞!因为你的鼓励是我写作的最大动力!

相关文章阅读
Android开发:最全面、最易懂的Android屏幕适配解决方案
Android事件分发机制详解:史上最全面、最易懂
Android开发:史上最全的Android消息推送解决方案
Android开发:最全面、最易懂的Webview详解
Android开发:JSON简介及最全面解析方法!
Android四大组件:Service服务史上最全面解析
Android四大组件:BroadcastReceiver史上最全面解析


欢迎关注Carson_Ho的简书!

不定期分享关于安卓开发的干货,追求短、平、快,但却不缺深度

上一篇下一篇

猜你喜欢

热点阅读