В устройствах Android 9.0 моя служба доступности подключилась, но не может получить событие TYPE_NOTIFICATION_STATE_CHANGED
, может быть получено другое событие, такое как TYPE_WINDOW_CONTENT_CHANGED
.
В противном случае его можно получить на устройствах Android 8.0.
<?xml version="1.0" encoding="utf-8"?>
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
android:accessibilityEventTypes="typeAllMask"
android:accessibilityFeedbackType="feedbackGeneric"
android:accessibilityFlags="flagDefault"
android:canRetrieveWindowContent="true"
android:packageNames="com.tencent.mm"
android:settingsActivity="com.example.android.accessibility.ServiceSettingsActivity" />
@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
Log.i(TAG, "received event: " + event);
int eventType = event.getEventType();
switch (eventType) {
case AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED:
handleNotification(event);
break;
default:
}
}