如何打开Hierarchy Viewer ?
Hierarchy Viewer 已被弃用。 如果您使用的是 Android Studio 3.1 或更高版本,则应在运行时改用 Layout Inspector 来检查应用的视图层次结构。要分析应用布局的渲染速度,请使用 Window.OnFrameMetricsAvailableListener,
1. 介绍
Hierarchy Viewer 是 Android Device Monitor 中内置的一种工具,提供了一个可视化界面,显示布局的层次结构,用来分析调试和优化我们的UI的一个图形化工具. 它会展示当前界面的View层级,可让您测量布局层次结构中每个视图的布局速度。它可以帮助您查找由视图层次结构导致的性能瓶颈。
2.真机使用问题
比较早接触Android开发的同学可能知道, Hierarchy Viewer只能在root过的机器才能使用. 主要是在没有root过的机器中view server这个服务是没有开启的.
Hierarchy Viewer在连接手机时,手机上必须启动一个叫View Server的客户端与其进行socket通信。而在商业手机上,是无法开启View Server的,故Hierarchy Viewer是无法连接到普通的商业手机。
在Android的官方文档中提到:
To preserve security, Hierarchy Viewer can only connect to devices running a developer version of the Android system.
即:出于安全考虑,Hierarchy Viewer只能连接Android开发版手机或是模拟器(准确地说,只有ro.secure参数等于0且ro.debuggable等于1的android系统)。
检验一台手机是否开启了View Server的办法为:
adb shell service call window 3
返回值是:Result: Parcel(00000000 00000000 '........')" 说明View Server处于关闭状态
返回值是:Result: Parcel(00000000 00000001 '........')" 说明View Server处于开启状态
使用以下命令打开View Server:
adb shell service call window 1 i32 4939
使用以下命令关闭View Server:
adb shell service call window 2 i32 4939
3.解决方法
正所谓高手在民间, 大家都尝试在未root的机器中启用view server,最具代表性的就是romainguy的ViewServer,只需集成少量代码到你的Activity, 相当于在手机端开启了view server服务, 建立socket通道与PC端的H Viewer通信.
此工程被Android官网吸收, 作为开启H View的方案之一.
- 4.1 或更高版本的系统--官网推荐方法
1.在您的设备上启用开发者选项。
2.在开发计算机上设置环境变量 ANDROID_HVPROTO=ddm
- 4.0及以下, 没有root. 使用上述的开源工程ViewServer提供的方式
- 4.0及以下, 已经root. 无需其他额外设置.
4.启动
- 将设备连接到计算机。如果设备显示对话框提示您允许 USB 调试吗?,请点按确定。
- 在 Android Studio 中打开您的项目,在您的设备上编译并运行它。
- 启动 Android Device Monitor。Android Studio 可能会显示 Disable adb integration 对话框,因为一次只能有一个进程可以通过 adb 连接到设备,并且 Android Device Monitor 正在请求连接。因此,请点击 Yes。
图 1 演示了 Android Device Monitor 中最初显示的内容。
- 在菜单栏中,依次选择 Window > Open Perspective,然后点击 Hierarchy View。
您应该会看到类似于图 2 所示的排列方式。如果没有看到,请依次选择 Window > Reset Perspective 以返回默认布局。
- 在左侧的 Windows 标签中双击应用的软件包名称。这会使用应用的视图层次结构填充相关窗格。
参考:https://developer.android.google.cn/studio/profile/hierarchy-viewer.html#setup
如何打开Hierarchy Viewer ?相关推荐
- 10.1.5 布局优化利器之 Hierarchy Viewer
无论是哪本讲解布局优化的参考书,它们都不得不提到Hierarchy Viewer.不过,通常情况下,Hierarchy( 英['haɪərɑːkɪ])Viewer无法在真机上进行使用,它只能在工厂的D ...
- 安卓布局工具---Hierarchy Viewer
英文释义:Hierarchy--分层.单词意思即为分层视图. 功能:层次Viewer允许你调试和优化您的用户界面.还可以学习别人做好的UI界面,它提供了一个布局的视图层次结构(布局视图)的视觉表现和放 ...
- Android 实用工具Hierarchy Viewer实战
在Android的SDK工具包中,有很多十分有用的工具,可以帮助程序员开发和测试Android应用程序,大大提高其工作效率.其中的一款叫Hierachy Viewer的可视化调试工具,可以很方便地在开 ...
- Android Hierarchy Viewer
Android的SDK工具包中,有很多十分有用的工具,可以帮助程序员开发和测试Android应用程序,大大提高其工作效率.其中的一款叫Hierachy Viewer的可视化调试工具,可以很方便地帮助开 ...
- Android 卡顿优化 3 布局优化 工具 Hierarchy Viewer
欲善其事, 先利其器. 分析布局, 就不得不用到Hierarchy Viewer了. 本文工具使用皆以GithubApp的详情界面RepoDetailActivity为例说明. 为了不影响阅读体验, ...
- Hierarchy Viewer
Hierarchy Viewer 帮你分析应用程序UI布局 Hierarchy Viewer在android的工具文件夹里: \android\tools\hierarchyviewer.bat 1. ...
- 布局优化工具Hierarchy Viewer
版权声明:本文为博主原创或汇集文章,欢迎注明来源转载.http://blog.csdn.net/u012792686 https://blog.csdn.net/u012792686/article/ ...
- Android官方命令深入分析之Hierarchy Viewer
Hierarchy Viewer允许你调试和优化用户界面.它提供了一个层可视的方式来显示. 启动Hierarchy Viewer,如下: 在Android Studio中,选择Tools > A ...
- Using Hierarchy Viewer
文章来自http://developer.android.com/tools/debugging/debugging-ui.html#HierarchyViewer Optimizing Your U ...
最新文章
- mysql程序语句范文,SQL语句(MySQL)
- 服务器需不需要虚拟内存,服务器需不需要虚拟内存
- 看到数学就打怵不是你的错:百万人调查发现上黑板做题、作业太多、家长陪写都会引发焦虑|PNAS...
- golang map 删除 清空
- 2020-12-17 Latex代码公式中如何设定多个对齐点( Multiple aligning symbols )
- 你组织的安全策略阻止未经身份验证的来宾访问_你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证来宾访问。...
- 检索数据_4_从表中查询部分列
- POJ 3518 Prime Gap(素数题)
- SpringMVC 数据的格式化、JSR 303数据校验和国际化
- css3图片垂直居中
- Dubbo消费者代理的调用
- python画图库matplotlib:初识
- 由于AsyncTask是一个单独的类,如何使OnPostExecute()的结果进入主要活动?
- 几岁孩子可以学python_编程python适合多大孩子学
- ad怎么批量改元器件封装_在AD软件中的PCB界面如何批量修改封装?
- 安科瑞电力监控系统在安徽华光有效薄膜太阳能电池高温玻璃项目的应用
- 苹果,忘了发家的根本…
- vue 扁平化_5种方式实现数组扁平化
- 【区块链实战】区块链在哪些行业得到了应用
- STC12系列单片机的1T模式和12T模式