我是Android开发的新手,我开始使用“层次结构查看器”...它可以与sdk提供的模拟器一起使用。
问题是我想在真实设备上使用它。我已经进行了研究,发现由于安全原因,它仅适用于各种来源的模拟器和开发人员手机。
Official Android Developer Site
但我也发现通过在我们的项目中使用“ViewServer.java”,我们可以在真实设备上使用此工具。
GitHub romainguy / ViewServer Link:
据我所知,有两件事要做......
将此ViewServer.java包含到我们的项目中
在清单中添加INTERNET权限。(<uses-permission android:name="android.permission.INTERNET"/>
)
在阅读java文件中的评论时,我也了解了如何在addWindow
内使用onCreate
方法和东西。
但是,即使在尝试将此应用程序安装到我的设备中之后,eclipse“无效的APK文件!”...对于真实设备和模拟器。
但是普通的应用程序可以与模拟器一起使用,但不能使用此java文件添加的应用程序!!!
如果还有其他事需要,有人会向我解释。因为我共享的链接有很多其他文件,我不确定它们是什么以及如何使用它们。我所关心的只是其中的“ViewServer.java”文件。
如果有可能,有人可以一步一步地解释我需要做些什么吗?
答案 0 :(得分:5)
ViewServer
。
对于使用Android 4.1+的设备,您只需设置ANDROID_HVPROTO=ddm
环境变量并重新启动adb服务器。
这是隐藏的Android功能之一,在免费的Udacity课程中找到它 - Android Performance(第1课:渲染,第12部分“层次结构查看器演练”,视频下方的链接)。
答案 1 :(得分:3)
尝试使用HierarchyViewerSupport Annotation但不确定它有多大帮助。
此@HierarchyViewerSupport批注允许您在任何设备上使用HierarchyViewer检查工具。
确保您的应用程序具有INTERNET权限并且android:debuggable = true Manifest。
使用@HierarchyViewerSupport注释您的活动:
@HierarchyViewerSupport
@EActivity
public class MyActivity extends Activity {
}
我不确定老兄,基于你的问题我可以帮助多少RnD,我认为它不可能在生产版本中作为你已经解释的原因。
无论如何,如果您想要了解当前活动屏幕的详细信息,例如有关小部件的信息,您仍然可以使用我自己开发的Python脚本获取它,但同样它不适用于生产构建。
尝试以上解决方案并告知我们是否有帮助。
答案 2 :(得分:1)
看一下下面的链接,它有关于如何在实际设备中启用层次结构查看器的详细信息