Я использую службу специальных возможностей для обнаружения изменений окна. Я не знаю, что случилось. Вчера он работал нормально.
В настройках служба говорит, что она включена, но ни onServiceConnected
, ни onAccessibilityEvent
никогда не вызываются.
Служба специальных возможностей в файле манифеста:
<service
android:name=".WindowChangeDetectingService"
android:label="@string/accessibility_service_name"
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
<meta-data
android:name="android.accessibilityservice"
android:resource="@xml/accessibilityservice" />
</service>
служба доступности . xml:
<?xml version="1.0" encoding="utf-8"?>
<accessibility-service
xmlns:tools="http://schemas.android.com/tools"
android:accessibilityEventTypes="typeWindowStateChanged"
android:accessibilityFeedbackType="feedbackGeneric"
android:accessibilityFlags="flagIncludeNotImportantViews"
android:description="@string/accessibility_service_description"
xmlns:android="http://schemas.android.com/apk/res/android"
tools:ignore="UnusedAttribute"/>
Код службы специальных возможностей:
public class WindowChangeDetectingService extends AccessibilityService {
@Override
protected void onServiceConnected() {
...
}
@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
...
}
}
Я пробовал как на реальных устройствах, так и на эмуляторах. Я пробовал все, что мог найти на inte rnet, включая перезапуск устройств. Я также перезагрузил компьютер. Я пробовал Rebuild Project и Clean Project . Я попытался удалить весь код, который я добавил сегодня, чтобы сделать его таким же, каким он был вчера, когда он работал. Я не знаю, что еще делать. Без службы специальных возможностей мое приложение не может существовать. Пожалуйста, помогите кому-нибудь! Я попробую любое предложение, даже если вы сомневаетесь, что оно сработает.