博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 4.1性能分析的一般步骤
阅读量:4207 次
发布时间:2019-05-26

本文共 720 字,大约阅读时间需要 2 分钟。

毕业到现在,做了一年多的Android了,一直都在负责性能这方面,感觉这方面的东西太杂了,要学的很多,要了解的也很多,而且没有一个系统的分析方法,最近一直都在玩systrace,结合自己以前学的东西,总结归纳,似乎有了点入门的感觉。

  性能大的方向有响应时间及吞吐量,Android这种智能终端上,一般响应时间比较多,主要是系统的流畅性。以前看到哪个地方不流程,都只能去打LOG分析,这个方法太低效了,不仅要明白流程,而且要在代码里添加LOG,相当低效,究其原因,还是Android没有怎个系统级的性能分析工具,不能想Linuxe kernel的oprofile跟perf一样,不能知道一段时间内函数的调用次数及时间,但Android 4.1上添加了一个systrace以后,就是为了解决这个问题。对于使用systrace的一般步骤,可以参考

  既然有是分析性能,首先要确定是的是否有卡顿的现象。以滑动列表为例,看是否流畅,可以查看每帧所发的时间,具体方式是

  1、打开设置-》开发者选项-》GPU呈现模式分析。

  2、滑动列表后,使用adb shell dumpsys gfxinfo。

  3、得到Profile data in ms这三列数据,Excel做出表格,看是否有时间大于16ms(原因是Android 4.1以后加了vsync,保证每帧刷新时间为16ms),实现代码在HardwareRenderer.java中,如下图:

 

      

   然后使用systrace分析大于16ms的时候,systrace见,最后使用traceview分析到底阻塞在什么地方,traceview如下图:

 

 

  traceview使用方法见下面的连接:

  大致的步骤也就这样吧!

 

转载地址:http://whlli.baihongyu.com/

你可能感兴趣的文章
WF从入门到精通(第七章):基本活动的操作
查看>>
WF从入门到精通(第八章):调用外部方法及工作流
查看>>
WF从入门到精通(第九章):逻辑流活动
查看>>
WF从入门到精通(第十章):事件活动
查看>>
WF从入门到精通(第十一章):并行活动
查看>>
WF从入门到精通(第十二章):策略和规则
查看>>
WF从入门到精通(第十三章):打造自定义活动
查看>>
WF从入门到精通(第十四章):基于状态的工作流
查看>>
WF从入门到精通(第十五章):工作流和事务
查看>>
WF从入门到精通(第十六章):声明式工作流
查看>>
WF从入门到精通(第十七章):关联及本地主机通信
查看>>
WF从入门到精通(第十八章):在你的工作流中调用Web服务
查看>>
WF从入门到精通(第十九章):把工作流发布为Web服务
查看>>
WF综合技术演示的例子
查看>>
WF编程学习 基本活动:状态活动
查看>>
你戴错眼镜啦
查看>>
近视眼从800度降到现在的100度。我今年25岁(转)
查看>>
我把近视从600度直降到0度 作者:灵魂旗舰 谈谈治疗近视的雾视疗法
查看>>
近视眼如何自然恢复
查看>>
世界十大风景名胜[图]
查看>>