Android 性能优化工具

Android 性能优化工具

 

 

这段时间总结了一些常用的性能优化工具,当然这些并没有包含全部的工具,下面稍微对这些工具做个简单的总结:

 

 

1、应用codeReview工具

StrictMode

 

检测应用主线程不规范代码

https://www.jianshu.com/p/d4309061291b

 

Lint

 

AS中提供的代码分析工具,它能够检查出代码当中存在的问题,定义该问题的严重程度,并给出相应的解决方案,这样我们就可以快速地定位和修复问题。

https://www.jianshu.com/p/4ebe5d502842

2、内存问题分析工具

2.1.明显内存问题初筛

 

Allocation Tracker

 

查看堆内存分配情况,可以直接跳转源码

https://www.jianshu.com/p/d8e994bfb382

 

Heap Viewer

 

查看堆内存分配数据,提供初步判断

https://www.jianshu.com/p/5035745da456

 

dumpsys meminfo

 

详细查看当前内存组成情况

https://www.jianshu.com/p/9edfe9d5eb34

 

Profiler

 

对cpu、 memory 、network进行更全面直观的分析,属于android monitor加强版

https://www.jianshu.com/p/596b2ef68342

 

 

Allocation Tracker 和 Heap Viewer两者配合Memory monitor使用可定位一些比较明显的内存泄漏、内存抖动等问题。

 

2.2.内存泄漏问题

 

MAT

 

优点:精确详细分析,缺点:有一些门槛,且分析相对比较耗时耗力。

https://www.jianshu.com/p/97251691af88

 

LeakCanaray

 

优点:傻瓜式分析工具 缺点:无法检测出Service的内存泄漏,无法检测最底层的MainActivity

https://www.jianshu.com/p/70b8c87ea877

3、重复布局&过度绘制

调试GPU过度绘制 & GPU呈现模式

 

可以宏观分析页面问题

https://www.jianshu.com/p/a0e8575e9846

 

Layout Inspector

 

对视图层次结构分析

https://www.jianshu.com/p/1b64024f2d08

4、卡顿掉帧

Systrace

 

可以给出整个系统的一些关键模块的性能信息

https://www.jianshu.com/p/fa6cfad8ccc2

 

TraceView

 

擅长Method问题追踪

https://www.jianshu.com/p/ac753e71d08d

 

Simpleperf

 

通过火焰图,我们能非常直观地看到性能的瓶颈

https://zhuanlan.zhihu.com/p/25277481

5、功耗问题

Battery Historain

 

分析电量、充电放电状态、一段时间内的用户使用行为、以及手机温度等等

https://github.com/google/battery-historian

六、其他三方工具(有兴趣可以去玩玩,在此不做分析了)

NetEase/Emmagee

frogermcs/AndroidDevMerics
......

 

最后想说的是,目前对工具的总结很多还只停留在初步使用阶段,工具就是这样的,越用越熟练。

 

另外笔者认为这些工具里面,比较重要的也比较常用的工具是:MAT、TraceView、Systrace. 掌握好这些工具的使用,会帮助你更好地定位性能问题。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值