对于android.widget.Button上的事件TYPE_VIEW_CLICKED,event.getSource()方法返回null。理想情况下,此事件应附加源。
此外,从Android API 18开始,不会发送通过sendAccessibilityEvent而没有来源传播的辅助功能事件。缺少哪些事件源的文档丢失了!
还有其他可靠的方式来获取活动的AccessibilityNodeInfo吗?即有相关观点的事件。对于例如TYPE_WINDOW_CONTENT_CHANGED事件,没有视图作为源
试用API 22和21
答案 0 :(得分:1)
我也遇到了同样的问题,可以通过将notifyTimeout设置为100来解决。示例代码如下:
protected void onServiceConnected() {
super.onServiceConnected();
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
info.packageNames = new String[]{getApplicationContext().getPackageName()};
info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK;
info.feedbackType = AccessibilityServiceInfo.FEEDBACK_SPOKEN;
info.notificationTimeout = 100;
info.flags = AccessibilityServiceInfo.FLAG_REPORT_VIEW_IDS;
setServiceInfo(info);
}