值得推荐的Android应用性能检测工具列表(转)

值得推荐的Android应用性能检测工具列表

张明云 · 8 个月前html

最近这段时间一直在作android应用的性能优化,一个应用性能的好坏并不能依靠咱们的主观意识去评判,必需要看数听说话,所以必需要了解和学会使用各类性能测试工具才知道问题出在哪以及具体的优化方向。下面对我对性能优化的理解以及在性能优化过程当中使用到的一些工具做个介绍。android

零 性能指标git

Android的应用性能的指标主要有:github

  • 布局复杂度:布局复杂会致使布局须要更长的时间,从而致使进入应用慢、页面切换慢;
  • 耗电量:耗电量大会致使机器发热、缩短机器的有效使用时长;
  • 内存:内存消耗大会致使频繁GC,GC时会暂停其它工做,致使页面卡顿;内存泄露会致使剩余可用内存愈来愈小;内存不足会致使应用异常;
  • 网络:频繁的网络访问会致使耗电和影响应用的性能;网络交互数据大小会影响网络传输的效率;
  • 程序执行效率:糟糕的代码会严重影响程序的运行效率,UI线程过多的任务会阻塞应用的正常运行,长时间持有某个对象会致使潜在的内存泄露,频繁的IO操做、网络操做而不用缓存会严重影响程序的运行效率。

一 Android官方性能优化工具介绍缓存

android针对上面这些会影响到应用性能的状况提供了一些列的工具:性能优化

1 布局复杂度:网络

  • hierarchyviewer:检测布局复杂度,各视图的布局耗时状况:

  • Android开发者模式—GPU过渡绘制:

2 耗电量:Android开发者模式中的电量统计;工具

3 内存:布局

  • 应用运行时内存使用状况查看:Android Studio—Memory/CPU/GPU;

  • 内存泄露检测工具:DDMS—MAT;

4 网络:Android Studio—NetWork;post

5 程序执行效率:

  • 静态代码检查工具:Android studio—Analyze—Inspect Code.../Code cleanup... ,用于检测代码中潜在的问题、存在效率问题的代码段并提供改善方案;
  • DDMS—TraceView,用于查找程序运行时具体耗时在哪;
  • StrictMode:用于查找程序运行时具体耗时在哪,须要集成到代码中;
  • Andorid开发者模式—GPU呈现模式分析。

6 程序稳定性:monkey,经过monkey对程序在提交测试前作自测,能够检测出明显的致使程序不稳定的问题,执行monkey只须要一行命令,提交测试前跑一次能够避免应用刚提交就被打回的问题。

说明:

二 第三方性能优化工具介绍

除了android官方提供的一系列性能检测工具,还有不少优秀的第三方性能检测工具使用起来更方便,好比对内存泄露的检测,使用leakcanry比MAT更人性化,可以快速查到具体是哪存在内存泄露。

  • leakcanary:square/leakcanary · GitHub,经过集成到程序中的方式,在程序运行时检测应用中存在的内存泄露,并在页面中显示,在应用中集成leancanry后,程序运行时会存在卡顿的状况,这个是正常的,由于leancanry就是经过gc操做来检测内存泄露的,gc会知道应用卡顿,说明文档:LeakCanary 中文使用说明LeakCanary: 让内存泄露无所遁形
  • GT:GT Home,GT是腾讯开发的一款APP的随身调测平台,利用GT,能够对CPU、内存、流量、点亮、帧率/流畅度进行测试,还能够查看开发日志、crash日志、抓取网络数据包、APP内部参数调试、真机代码耗时统计等等,须要说明的是,应用须要集成GT的sdk后,GT这个apk才能在应用运行时对各个性能进行检测。
  • iTest:iTest,业内独创的Android自动化性能监控工具,它可以记录特定应用的性能消耗状况,包括cpu、内存、流量、电量等信息,支持浮窗实时查看应用的具体信息,iTest不须要集成sdk到应用中,在itest中选中须要测试的应用便可进行测试;
  • Emmagee:Emmagee下载NetEase/Emmagee · GitHub,网易开发的性能检测工具,Emmage和iTest同样,不须要在应用中集成sdk,可以对应用的经常使用性能指标进行检测,并以csv的格式保存方便查看应用的各项参数;
  • APT:Tencent/apt | CODE,腾讯出的,暂时还没使用过,没法评价。
  • FPSService:百度一位开发者写的帧率测试工具,须要集成到应用中才可查看:

三 应用性能优化资料推荐

相关文章
相关标签/搜索