java - onServiceConnected 和 onAccessibilityEvent 永远不会被调用
问题描述
我正在使用辅助功能服务来检测窗口更改。我不知道发生了什么。昨天工作正常。
在设置中,服务说它已打开,但既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) {
...
}
}
我在真实设备和模拟器上都试过了。我已经尝试了我在互联网上可以找到的任何东西,包括重新启动设备。我也重新启动了电脑。我尝试了 Rebuild Project和Clean Project。我试图删除我今天添加的所有代码,使其与昨天工作时相同。我不知道还能做什么。如果没有无障碍服务,我的应用程序就无法存在。请有人帮忙!我会尝试任何建议,即使你怀疑它会起作用。
解决方案
推荐阅读
- git - git revert 在先前提交中的反向效果
- javascript - 通过分析广告数据,我一直在确定 BLE 设备是否可连接。这是我的代码示例和学习指南
- c# - 我需要使用 WinForms 将多个 A6 大小的页面打印到单个 A3 大小的页面
- boost - 提升最大连接组件的大小
- android - 防止在不增加 SDK 版本的情况下在 MIUI 中强制暗模式
- python - pyqt5 - 工作类不发射到主线程
- robotframework - 如何在 log.html 中有多行关键字文档
- git - Git push 停止工作,错误代码为 92
- python - 在 Python 中的 pandas 数据框中的列中添加一个数字序列
- c# - 谁能帮我解决 loadingSceneIndex 问题