我正在使用辅助功能服务来检测窗口的变化。我不知道发生了什么昨天工作正常。
在设置中,服务声称它已打开,但从未调用过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) {
...
}
}
我已经在真实设备和仿真器上进行了尝试。我已尽力尝试在互联网上找到的所有内容,包括重新启动设备。我还重新启动了计算机。我尝试了重建项目和清洁项目。我试图删除今天添加的所有代码,以使其与昨天工作时的代码相同。我不知道该怎么办没有可访问性服务,我的应用程序将不存在。请有人帮忙!即使您怀疑它会起作用,我也会尝试任何建议。