方法在第一次调用时可以获取到窗口内容,然后在窗口改变后返回null
这个log在第一次进入的时候打印的nodeInfo正常,在窗口改变后打印就是null了
public void onAccessibilityEvent(AccessibilityEvent event) {
int eventType = event.getEventType();
switch (eventType) {
case AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED:
test();
}
}
private void test() {
AccessibilityNodeInfo nodeInfo = getRootInActiveWindow();
Log.d(TAG, "getRootInActiveWindow: "+nodeInfo);
if (nodeInfo != null) {
List<AccessibilityNodeInfo> list = nodeInfo.
findAccessibilityNodeInfosByText("更多");
for (AccessibilityNodeInfo n : list) {
if (n.getClassName().equals("android.widget.TextView") && n.isEnabled()) {
AccessibilityNodeInfo parent = n.getParent();
parent.performAction(AccessibilityNodeInfo.ACTION_CLICK);
}
}
}
}
你好 请问这个问题解决了么 我也遇到了这样的问题