zoukankan      html  css  js  c++  java
  • Android学习之Android studio TraceView和lint工具的使用具体解释

    上次讲述了一下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非常清晰了。

    就到这吧。

  • 相关阅读:
    25个PHP游戏编程脚本代码(转)
    [AJAXJSP]使用DWR框架验证用户名是否存在
    [AJAXJSP]验证用户名存在
    [Java基础]多线程求和小例子
    [JAVA算法]求子数组的最大和
    [JQury] slideToggle闪烁问题及解决办法
    [JAVA算法]递归求Fibbonicc序列方法
    Easy ui Datagrid(下拉、复选、只输入数字、文本) 追加、删除、更改
    Easy ui DataGrid 添加复选框 与 下拉
    Easy ui DataGrid 列文字多串行问题解决方案
  • 原文地址:https://www.cnblogs.com/clnchanpin/p/7367927.html
Copyright © 2011-2022 走看看