在 Android 中使用辅助功能服务获取应用程序的名称

Get the Name of the App using Accessibility Service in Android

我在无障碍服务工作。我需要使用辅助功能服务获取应用程序名称。我研究了 Android 开发者网站中 辅助功能服务 的文档。但没有提及使用辅助功能获取应用程序名称。

是否可以获取应用程序的名称?我认为这是可能的,因为 回话 获取应用程序的名称。所以如果有什么办法可以得到应用程序的名称,请提出您的建议。

您无法获取应用程序的"app name"。至少不可靠。应用程序读出的字符串是标题栏的标题或应用程序图标下方的字符串。它实际上从未直接向框架询问它所附加的应用程序的标题。

但是,您可以访问应用程序包。

someAccessibilityNodeInfo.getPackageName();

这唯一标识了发送给定 AccessibilityNodeInfo 的应用程序。

你也可以考虑使用这个:

someAccessibilityService.getRootInActiveWindow();

并向下爬取视图层次结构以查找标题栏。