前言

最近看到这篇文章《Android UI性能优化详解》,里面使用了Hierarchy Viewer来对布局进行优化。开发android这么久了,一直都有听过这个工具,但是重来都没真正去使用过,不得不说是一种失败。现在刚好趁着空闲,研究一下Hierarchy Viewer的使用方法。

启动Android Device Monitor

网上搜索了教程,直接在sdk>tools下面找到hierarchyviewer.bat双击运行,然后运行成功了。
但是出现这个提示:

The standalone version of hieararchyviewer is deprecated.
Please use Android Device Monitor (tools/monitor.bat) instead.

大概意思是说,单独版本的 hieararchyviewer 已经被弃用了。请使用 Android Device Monitor来代替。Android Device Monitortools目录下面找到monitor.bat即可。

为了紧跟时代潮流,就决定用Android Device Monitor了!

但是每次都从tools目录下面去启动Android Device Monitor,也太麻烦了吧。万能的Android Studio下面就不能直接启动吗?

答案是:当然可以!有两种启动方式。(Android Studio 2.2版本已经没有底二种了)

  1. 第一种
    依次点击菜单Tools>Android>Android Device Monitor,如下图:

    启动Android Device Monitor

2. 第二种
直接点击菜单下面,问号旁边的图标,如下图:

启动Android Device Monitor

打开Hierarchy Viewe

启动Android Device Monitor成功之后,在新的的窗口中点击切换视图图标,选择Hierarchy Viewe,如下图:

打开Hierarchy Viewe

使用Hierarchy Viewer

由于一直都是用真机开发,启动之后,发现没有看到应有的效果,出现了下面的错误:

[2016-04-15 15:44:26 - hierarchyviewer]Unable to get view server version from device 2d2843d
[2016-04-15 15:44:26 - hierarchyviewer]Unable to get view server protocol version from device 2d2843d

发现是因为真机不能获取到view server的原因。
该问题的详细原因:为什么HierachyViewer无法连接真机调试

目前手上没有能开启view server,所以只能使用模拟器了。
之前的Genymotion模拟器被我删掉了,就只能用自带的模拟器了╮(╯_╰)╭ 但是手头上的项目只支持arm架构的模拟器运行,不能用Intel HAXM去加速了,所以说了这么多废话的目的是为了说明:自带的模拟器真的太慢了!
然后进入漫长的等待……
……
……
……
一小时过去了!然后到下班时间了!-_-||
抱歉看不到运行结果了!
看不到结果表示遗憾,开启步骤已经说完了,具体的使用情况这里不再说明。网上很多,这里贴出一个(开头已经提过):
《Android UI性能优化详解》](http://mrpeak.cn/android/2016/01/11/android-performance-ui)

得下班了!就写到这里,全文结束!


为了防止有人日狗,造成不良的社会影响,特补充运行结果截图:

运行结果

友情提示:APP先运行起来再使用Android Device Monitor

在Android Studio下使用Hierarchy Viewer的更多相关文章

  1. Android Studio下HierarchyViewer的使用

    什么是HierarchyViewer Hierarchy Viewer是随AndroidSDK发布的工具,位置在tools文件夹下,名为hierarchyviewer.bat.它是Android自带的 ...

  2. Android studio下gradle Robolectric单元测试配置

    android studio下gradle Robolectric单元测试配置 1.Robolectric Robolectric是一个基于junit之上的单元测试框架.它并不依赖于Android提供 ...

  3. Android studio 下JNI编程实例并生成so库

    Android studio 下JNI编程实例并生成so库 因为公司需要为Android相机做美颜等图像后期处理,需要使用JNI编程,最近学了下JNI,并且在Android Studio下实现了一个小 ...

  4. Android Studio下打jar包

    在我们使用Eclipse时,我们常常使用的第三方类库文件大多都是jar包形式,用起来很方便.但是jar包只能打包class文件,对于Android UI类库而言,我们常常需要打包资源文件,对于界面不多 ...

  5. Android Studio下导出jar包和aar包

    Android Studio下导出jar包和aar包 jar包和aar包的区别 步骤 1. 创建Android工程 创建工程比较简单,不错复述 2. 创建一个Library(Module) 创建了一个 ...

  6. Android Studio下多渠道打包

    Android Studio下实现多渠道打包 直接上步骤 步骤 1. 清单文件添加属性(以友盟统计为例) 在application标签下添加meta-data属性 <application -- ...

  7. Android Studio下使用NDK的流程

    我要重新拿回持之以恒徽章!! 老规矩,先说看能学会什么:ANDROID STUDIO下NDK的使用方法.JNI的基本使用方法,C语言调用JAVA的方法. 首先要下载NDK,如果你没有VPN可以来htt ...

  8. Android studio 下 JNI 开发实例

    在AS中进行 NDK 开发之前,我们先来简单的介绍几个大家都容易搞懵的概念: 到底什么是JNI,什么是NDK? 何为“交叉编译”? 先看什么是 JNI?JNI 的全称就是 Java Native In ...

  9. Android Studio下添加assets目录

    Android Studio下添加assets目录 分类: Android Studio2013-11-06 18:09 10872人阅读 评论(2) 收藏 举报 android studioasse ...

随机推荐

  1. 《小团团团队》第八次团队作业:Alpha冲刺

    项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 实验十二 团队作业8:软件测试与Alpha冲刺 团队名称 小团团团队 作业学习目标 (1)掌握软件测试基础技术; (2)学 ...

  2. 配置LAMP环境

    对我这种Linux小菜鸡来说,集成环境是最好的选择. 一,下载wget --no-check-certificate https://github.com/teddysun/lamp-yum/arch ...

  3. Python 综合应用小项目一

    数据库报错重连机制 利用异常捕获来获取mysql断开的报错,然后再重连 import MySQLdb as mysql class DB: def __init__(self,host,user,pa ...

  4. 树状数组 - BZOJ 1103 [POI2007]大都市

    bzoj 1103 [POI2007]大都市 描述 在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员 Blue Mary也开始骑着摩托车传递邮件了.不过,她经常回忆起以前在乡间漫步的情景. ...

  5. 大数据学习——spark运营案例

    iplocation需求 在互联网中,我们经常会见到城市热点图这样的报表数据,例如在百度统计中,会统计今年的热门旅游城市.热门报考学校等,会将这样的信息显示在热点图中. 因此,我们需要通过日志信息(运 ...

  6. Navicat Premium 连接Oracle登入时候报ORA-12638: 身份证明检索失败的解决办法

    我的电脑是64位,oracle也是64位, plsql客户端是32位,oci连接的是32位 11.2版本: 用plsql 连接本地或远程数据库都没问题.在用 Navicat Premium 连本也没问 ...

  7. 刷题总结——旅馆(bzoj1593线段树)

    题目: Description 奶牛们最近的旅游计划,是到苏必利尔湖畔,享受那里的湖光山色,以及明媚的阳光.作为整个旅游的策划者和负责人,贝茜选择在湖边的一家著名的旅馆住宿.这个巨大的旅馆一共有N ( ...

  8. [BZOJ4260] Codechef REBXOR (01字典树,异或前缀和)

    Description Input 输入数据的第一行包含一个整数N,表示数组中的元素个数. 第二行包含N个整数A1,A2,-,AN. Output 输出一行包含给定表达式可能的最大值. Sample ...

  9. Java语言编码规范 - Java语言编码规范(中文版)(http://doc.javanb.com/code-conventions-for-the-java-programming-language-zh/index.html)

      目录 1 介绍 1.1 为什么要有编码规范 1.2 版权声明 2 文件名 2.1 文件后缀 2.2 常用文件名 3 文件组织 3.1 Java源文件 3.1.1 开头注释 3.1.2 包和引入语句 ...

  10. select与stdio混合使用的不良后果

    参考以下链接自己补充实验:http://www.cppblog.com/mysileng/archive/2013/01/15/197284.aspx?opt=admin int main(int a ...