上次讲述了一下Android studio Terminal的使用配置,今天又学习了一下关于Traceview和lint工具的使用。

首先来讲lint吧:

Android lint工具是Android studio中集成的一个代码提示工具,它主要负责对你的代码进行优化提示,包括xml和java文件,很强大。

编写完代码及时进行lint测试,会让我们的代码变得非常规范而且避免代码冗余。让我们及时发现代码中隐藏的问题。

举个例子:我们在代码中建立全局变量,而这个变量实际并不需要全局便利,lint在检测之后会提示我们改成局部变量,这对内存优化是一个很强大的促进手段。

如何使用:

可以看到有Inspect Code,翻译就是检测代码

点击选择whole project(整个项目)即可

效果如下:

这里提示ImageView没用添加ContentDescription属性,已经解决办法,真真是很智能,很强大。

clean Code会帮助我们检测有无可疑代码。

Android lint就讲到这。

Android TraceView的使用:

TraveView是Android studio集成的一个性能优化工具,相信很多人都知道它,但是用到它的应该不多,它的使用比较复杂,应该说理解比较复杂。它主要计算工程内方法运行所占用的时间,调用次数,以此来优化App运行效率。

例如:一个方法,占用时间比较长,但是调用次数少,那么你就要检测这个方法耗时在什么地方,由什么原因导致?

使用方法:

打开Android Device Monitor,这个大家都知道

1.选择你要调试的进程。
2.点击start mothod profiling,待图标变黑。
3.选择sample base profiling

这里需要解释一下:

Trace base profiling

整体监听,项目中所有方法都会监听,资源消耗比较大。

sample base profiling

抽样监听,以指定的频率进行抽样调查,一般不要超过5s,需要较长时间获取准确的样本数据。

再次点击start mothod profiling,就会生成检测样本。

效果如下:

上部分为时间轴,x轴表示时间,黑色区域可放大,每个区域代表每个方法的执行时间。

y轴表示每一个独立线程。

下部分Name为你所选择的颜色区块所代表的性能分析。

不同的颜色,代表不同的方法,颜色长度代表占用时间。

属性介绍:

Incl cpu time:某方法占用cpu时间(父+子)
Excl cpu time:某方法本身占用cpu时间(父)

Incl Real time:某方法真正执行时间(父+子)
Excl Real time:某方法自身执行时间(父)

当然还有相应所占百分比,不过多介绍。

还有Calls+RecurCall 调用次数+递归调用次数

还有比较重要的:

cpu time/call:平均每次调用占用cpu时间。

real time/call :平均每次调用所执行的时间。

我觉得这个参数很具有参考性。

打开每个方法,会显示Paents和children(即父方法和子方法),以及分别所占用时间。

说了这么多,应该对怎么使用TraceView很清晰了。

就到这吧。

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. Android(安卓)双击返回键退出程序的方法总结
  3. postDelayed方法和removeCallbacks方法的使用(1)
  4. 整理的收集的Android的学习资料(大佬们的博客,学习思路,行业要求,免
  5. android 输入法(包括手写界面)
  6. Kotlin Android(安卓)UI利器之Anko Layouts
  7. Android(安卓)Parcel机制
  8. Android之服务Service和它的CP们(BroadcastReceiver、Messenger
  9. android 混淆规则详解

随机推荐

  1. Android图片特效处理之图片叠加
  2. Android硬件抽象Hardware库加载过程源码
  3. Android串口丢包重发的重传协议,一种流式
  4. String.xml
  5. Android平台开发中的重构三步走
  6. 【笔记】在Android上绘制小车行进路线图
  7. Android Managing Bitmap Memory And Loa
  8. android 新手到初级的编码历程
  9. Android在指定View的下方显示PopupWindow
  10. 解析URL,获取其参数值(总结一次与H5交互用