我发现Android 9现在shows info if accessibility service stopped working。
对于试图利用辅助功能API的开发人员来说,这总是一件痛苦的事。
不是最好的东西,但至少是一些东西。
hasServiceCrashed
方法。crashed
,这对第三方开发人员(因为反射拒绝)以及以前的Android版本不可用。所以我想知道是否有另一种方法从系统获取信息,这表明我的可访问性服务崩溃/停止工作,并且需要用户的操作。从棒棒糖开始。提示赞赏。
Android通常会阻止应用程序在重复崩溃时运行。对于可访问性服务的这种行为显然会影响依赖于该服务的用户,但由于这些服务可以有效地控制UI,因此重复崩溃的用户也可能使该设备无法使用。
我没有想到其他人会对AccessibilityServiceInfo中的崩溃字段感兴趣。我不幸地使用仅供系统使用的数据来填充该字段。我将启用的服务列表与绑定的列表进行比较。
如果您对服务被阻止运行感兴趣,可以通过跟踪何时调用onBind和onUnbind并查看AccessibilityManager中启用的服务列表来执行类似操作。