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

就到这吧。

Android学习之Android studio TraceView和lint工具的使用具体解释的更多相关文章

  1. [置顶] Android学习系列-Android中解析xml(7)

    Android学习系列-Android中解析xml(7) 一,概述 1,一个是DOM,它是生成一个树,有了树以后你搜索.查找都可以做. 2,另一种是基于流的,就是解析器从头到尾解析一遍xml文件.   ...

  2. Android学习——在Android中使用OpenCV的第一个程序

    刚開始学习Android,因为之前比較熟悉OpenCV,于是就想先在Android上执行OpenCV试试 =============================================== ...

  3. 【Android学习】android:layout_weight的用法实例

    对于android:layout_weight的用法,用下面的例子来说明: <LinearLayout xmlns:android="http://schemas.android.co ...

  4. Android 学习之--android多线程断点下载

    我们平时都用"迅雷"下载软件,当下载到一半的时候突然断网,下次开启的时候能够从上次下载的地方继续下载,而且下载速度很快,那么这是怎么做到的呢! 其实它的“快”其实就是多线程的下载实 ...

  5. Android——android学习(android目录与AndroidManifest解析)

    res目录:存放android项目的各种资源文件 layout:存放界面布局文件 values:存放各种xml格式的资源文件 strings.xml:字符串资源文件: colors.xml:颜色资源文 ...

  6. Android学习【Android内核编译流程和错误笔记】

    博客:http://blog.csdn.net/muyang_ren Ubuntu14.04 LTS(要求是64位长期支持版LTS) Jdk1.8 内核:android4.0 一:jdk 1.解压jd ...

  7. Android学习路径——Android的四个组成部分activity(一)

    一.什么是Activity? Activity简单的说就是一个接口.我们是Android手机上看到的每个界面就是一个activity. 二.Activity的创建 1.定义一个类继承activity, ...

  8. Android学习之Android 5.0分享动画实现微信点击全屏效果

    Android5.0过渡动画,请看 http://blog.csdn.net/qq_16131393/article/details/51112772 今天用分享动画实现微信点击全屏效果 本文源代码下 ...

  9. Android学习十---Android Camera

    Android camera用来拍照和拍摄视频的先看一下最后实现的效果图             最后的效果图 一.准备 在你的应用程序上使用android拍照设备,需要考虑以下几个方面 1. 是否是 ...

随机推荐

  1. TeeChart 有用的属性

    //背景 BackWall.Gradient.Visible = True //是否显示右边图标选项 Legend.Visible = False //不在显示3D效果, 比较有用 View3D = ...

  2. Java嵌入式数据库H2学习总结(一)——H2数据库入门

    一.H2数据库介绍 常用的开源数据库有:H2,Derby,HSQLDB,MySQL,PostgreSQL.其中H2和HSQLDB类似,十分适合作为嵌入式数据库使用,而其它的数据库大部分都需要安装独立的 ...

  3. 初识GRUNT

    什么是GRUNT? 基于任务的命令行工具.能做的事包括: ● 验证html,css, javascript● 压缩css, javascript● 编译CoffeeScript, TypeScript ...

  4. C#编程(三十四)----------数组作为参数

    原文链接: http://blog.csdn.net/shanyongxu/article/details/46765267 数组作为参数 数组可以作为参数传递给方法,也可以从方法中返回.要返回一个数 ...

  5. 两个Activity之间共享数据、互相访问的另一种方式的实现

    本帖最后由 勇敢的心_ 于 2010-9-29 11:51 编辑 本人从windows编程转过来学习Android开发,一直在想如果两个Activity之间能够像C#或delphi中的Form一样,可 ...

  6. 从零开始写一个发送h264的rtsp服务器(下)

    转自:http://blog.csdn.net/jychen105/article/details/47012099 一.H264是如何通过rtsp发送的 简单来说,H264就是通过打包到rtp协议的 ...

  7. android之卸载反馈的功能

    感谢这位大神:http://www.eoeandroid.com/thread-317728-1-1.html zip包里面有讲解的试用方法,和如何试用ndk编译的方法,本人亲身试验,确实可用,现做一 ...

  8. WinForm IME输入法BUG完美修复

    本文来自http://hi.baidu.com/wingingbob/item/a2cb3fc0fe3bd1bb0d0a7b5b <WinForm IME输入法BUG测试>里,我描述了在. ...

  9. Locks Set by Different SQL Statements in InnoDB

    A locking read, an UPDATE, or a DELETE generally set record locks on every index record that is scan ...

  10. User guide for Netty 4.x

    Table of Contents Preface The Solution Getting Started Before Getting Started Writing a Discard Serv ...