性能优化简介

Posted fakerXuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能优化简介相关的知识,希望对你有一定的参考价值。


在这里插入图片描述

性能优化的重要性及方向

在这里插入图片描述

优化方法

在这里插入图片描述

性能优化的四个方向

在这里插入图片描述

流畅性优化方向

在这里插入图片描述

页面显示速度

  • 优化原因
    页面需要绘制的内容(布局 控件)太多,从而导致页面测量时间过长
    绘制效率过低,从而导致绘制时间过长
  • 优化方案
    • 布局层级优化
    • 异步加载xml
    • 离屏预渲染

启动速度优化

  • 优化原因
    初次打开应用时,大量初始化任务 or 需要加载很多资源
  • 优化方案
    • 异步并发初始化
    • 分步初始化,延时初始化的策略,减少启动应用时加载的任务,从而提高启动速度

响应速度

  • 优化原因
    在5s内未响应用户的输入事件(按键、触摸输入)、在10s内未处理完BroadcastReceiver接收到的事件、在20s内未处理完Service接收到的事件、多线程锁竞争。
    主线程阻塞、挂起、死循环、执行比较长的耗时操作、其他进程(子线程)对CPU占用时间过高,导致主进程(线程)抢不到CPU的时间片。
  • 优化方案
    当发送ANR的时候,ActivityManagerService 会把ANR信息写到LogCat日志中。主要通过ANRManager、ActivityManager等字段过滤出我们想要的信息
    线上阶段可以使用爱奇艺开源的xcrash
    在这里插入图片描述

内存优化

在这里插入图片描述
在这里插入图片描述

  • Memory Analyzer Tool(MAT)
    在这里插入图片描述

常见内存泄露原因

在这里插入图片描述

优化内存空间

在这里插入图片描述

稳定性优化

在这里插入图片描述

流量优化

在这里插入图片描述

安装包大小优化

在这里插入图片描述

减少安装包大小的常用方案

在这里插入图片描述

总结

在这里插入图片描述

以上是关于性能优化简介的主要内容,如果未能解决你的问题,请参考以下文章

C++应用程序性能优化——应用程序性能优化简介

canvas简介以及常用性能优化

第一章 SQL性能优化简介

iOS - 性能优化:Instruments使用简介

缓存与性能优化简介

LeakCanary 内存泄漏 监测 性能优化 简介 原理