有没有办法可以动态地重绘当前窗口中显示的视图。所以基本上我想动态地重绘当前在另一个屏幕上显示的内容。
为此我想要显示当前正在显示的视图和它们的层次结构
我试过hierarchyviewer。通过这种方式,我可以获得调试应用程序的视图层次结构,但不能用于生产应用程序。
我也尝试过使用AccessibilityService,我可以为当前窗口的所有节点获取AccessibilityNodeInfo树,但是我无法获得实际视图。
任何人都可以帮助我。
答案 0 :(得分:3)
有没有办法可以动态地重绘当前窗口中显示的视图
除非是您自己的内容,否则您甚至无法获取视图。例如,给定View
中的任何Activity
,您可以将父链遍历到根View
,然后从那里扇出。但是你无法从另一个应用程序中获得View
个对象。
我想动态重绘当前在另一个屏幕上显示的内容
欢迎您在Android 5.0+上使用媒体投影API。这些不会为您提供视图层次结构,但可以让您在用户权限的情况下访问当前屏幕内容的屏幕截图。
我也尝试过AccessibilityService,我可以使用它获取当前窗口所有节点的AccessibilityNodeInfo树,但是我无法获得实际视图。
这是因为View
个对象在另一个进程中。