android 辅助服务连不上,accessibilityservice

背景:

我有一个从AccessibilityService扩展的类。 每当调用一个窗口后,调用函数就会给出前台应用程序的应用程序名称。

@Override

public void onAccessibilityEvent(AccessibilityEvent event) {

}

以下是我设置的配置:

@Override

protected void onServiceConnected() {

super.onServiceConnected();

//Configure these here for compatibility with API 13 and below.

AccessibilityServiceInfo config = new AccessibilityServiceInfo();

config.eventTypes = AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED;

config.feedbackType = AccessibilityServiceInfo.FEEDBACK_GENERIC;

if (Build.VERSION.SDK_INT >= 16) { //Just in case this helps

config.flags = AccessibilityServiceInfo.FLAG_INCLUDE_NOT_IMPORTANT_VIEWS;

}

setServiceInfo(config);

}

AccessibilityService.xml

xmlns:android="http://schemas.android.com/apk/res/android"

android:description="@string/accessibility_explanation"

android:accessibilityEventTypes="typeWindowStateChanged|typeAllMask"

android:accessibilityFeedbackType="feedbackSpoken|feedbackHaptic|feedbackAudible|feedbackVisual|feedbackGeneric|feedbackAllMask"

android:notificationTimeout="100" android:canRetrieveWindowContent="true" />

问题:它在一段时间内工作正常,但一两天后突然停止工作。 它不会调用onAccessibilityEvent(AccessibilityEvent event)函数。 尽管此应用程序的辅助功能服务已启用,但在更改窗口时仍未显示应用程序名称。

如果应用程序从睡眠模式恢复,它可能无法正常工作吗? 我不得不在我的调试版本之上重新安装应用程序,然后它再次开始工作但是持续了多长时间。

问题:如何在窗口更改时确保始终返回应用程序名称?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值