android - 如何使用 Android Accessibility Services 获得点击的 View Elements?
问题描述
我尝试创建一个 Android 辅助功能服务来检测应用程序中的所有元素并显示内容描述或标签等辅助功能信息。
目前我可以使用 AccessibilityService 类在打开应用程序时记录节点层次结构:
switch (evt.getEventType()) {
case AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED: {
logNodes(getRootInActiveWindow(), 0);
但是我怎样才能只获取被点击/单击的视图元素的信息?有没有一种简单的方法,使用辅助功能事件来做到这一点?
如果我使用例如 AccessibilityEvent.TYPE_VIEW_CLICKED 我可以通过点击它们来检测可点击的视图元素,如按钮或复选框。但是是否有一个可访问性事件来获取不可点击的视图元素,如文本视图?
我知道 Google 的 talback 使用 AccessibilityServices 说出您点击的任何内容,它是按钮还是任何其他视图元素都没有关系。
解决方案
推荐阅读
- c++ - 这个方程如何 x + y = x & y + x | y 成立(假设 x, y > 0)?
- flutter - 使用下拉颤动保持选择
- discord.js - 未处理的拒绝引用错误:初始化前无法访问“消息”
- apache-kafka - Kafka - 控制台消费者卡住了
- python - 工作应用程序上的cloudfoundry错误网关错误
- javascript - highchart 类型条形图 endOnTick 上的 plotbands 无法正常工作,并希望根据添加的序列数动态调整绘图带的高度
- java - 如何在共享首选项中存储整数数组列表并在 Android/Java 中检索相同?
- c# - 我们可以在 Visual Studio 中为 Ribbon Outlook 创建 .exe 吗?
- c# - 如何从 DataRow 获取列值类型(任何数组)
- arrays - 有没有办法只迭代包含特定模式的数组的键