如何使“层次结构查看器”在真实设备中工作?

我是Android开发的新手我开始使用“层次结构查看器”…它可以与sdk提供的模拟器一起使用。
问题是我想在真实设备上使用它。 我已经进行了研究,发现由于安全原因,它仅适用于各种来源的模拟器和开发人员手机。

官方Android开发者网站

但我也发现通过在我们的项目中使用“ViewServer.java”,我们可以在真实设备上使用这个工具。

GitHub romainguy / ViewServer链接:

据我所知,有两件事需要做……

  1. 将此ViewServer.java包含到我们的项目中

  2. 在清单中添加INTERNET权限。(

在阅读java文件中的注释时,我也了解了如何在onCreate和stuffs中使用addWindow方法。

但即使在尝试将此应用程序安装到我的设备中之后,eclipse“无效的APK文件!”…对于真实设备和模拟器。

但是普通的应用程序可以与模拟器一起使用,但不会在其中添加这个java文件的应用程序!

如果还有其他事情需要做,有人会向我解释。 因为我共享的链接有很多其他文件,我不确定它们是什么以及如何使用它们。 我所关心的只是其中的“ViewServer.java”文件。

如果可能的话,有人可以一步一步地解释我需要做什么吗?

仅在Android版本低于4.1的非root设备上才需要ViewServer

对于使用Android 4.1+的设备,您只需设置ANDROID_HVPROTO=ddm环境变量并重新启动adb服务器。

它是隐藏的Androidfunction之一,在免费的Udacity课程中找到它 – Android Performance (第1课:渲染,第12部分“Hierarchy Viewer Walkthrough”,video下方的链接)。

尝试使用HierarchyViewerSupport Annotation但不确定它会有多大帮助。

此@HierarchyViewerSupport批注允许您在任何设备上使用HierarchyViewer检查工具。

确保您的应用程序具有INTERNET权限并且android:debuggable = true Manifest。

只需使用@HierarchyViewerSupport注释您的活动:

 @HierarchyViewerSupport @EActivity public class MyActivity extends Activity { } 

我不确定多少,根据你的问题我可以帮助多少RnD,我认为它不可能在生产版本上作为你已经解释过的原因。

无论如何,如果您想要了解当前活动屏幕的详细信息,例如有关小部件的信息,您仍然可以使用我自己开发的Python脚本获取它,但是它再次无法用于生成构建。

试试上面的解决方案,让我们知道它是否有帮助。

看看下面的链接,它有关于如何在实际设备中启用层次结构查看器的详细信息

如何在Android设备中显示层次结构查看器