如何在Android中使用AccessibilityEvent获取其他应用程序特定屏幕上所有文本视图的文本、资源ID?

如何在Android中使用AccessibilityEvent获取其他应用程序特定屏幕上所有文本视图的文本、资源ID?,android,accessibility,Android,Accessibility,我创建了一个扩展AccessibilityService的类。“onAccessibilityEvent”方法提供可访问性事件。如何使用它来迭代屏幕上的所有文本视图并仅获取文本数据?另外,如何读取webview的html数据 @Override public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent) { } 他有一个很好的例子。您可以尝试: AccessibilityNodeInfo source

我创建了一个扩展AccessibilityService的类。“onAccessibilityEvent”方法提供可访问性事件。如何使用它来迭代屏幕上的所有文本视图并仅获取文本数据?另外,如何读取webview的html数据

@Override
    public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent) {

}
他有一个很好的例子。您可以尝试:

AccessibilityNodeInfo source = event.getSource();
if (source == null) {
    return;
}

// Grab the parent of the view that fired the event.
AccessibilityNodeInfo rowNode = getListItemNodeInfo(source);
if (rowNode == null) {
    return;
}

for (int i = 0; i < rowNode.getChildCount(); i++) {
    AccessibilityNodeInfo node = rowNode.getChild(i);
    if ("TextView".eaquals(node.getClassName())) {
         Log.i("text", node.getText());
    }
}
AccessibilityNodeInfo source=event.getSource();
if(source==null){
返回;
}
//获取触发事件的视图的父级。
AccessibilityNodeInfo行节点=getListItemNodeInfo(源);
if(rowNode==null){
返回;
}
对于(int i=0;i
谢谢你的帮助。我还有一个问题。我也在尝试访问webview的内容。如何实现?您的意思是获取html?为什么不使用onRequestSendAccessibilityEvent()?