如何以编程方式启动和停止 AccessibilityService?

Sam*_*Sam 8 android accessibilityservice

背景

我有一个带有AccessibilityService. Android 似乎一直AccessibilityService在运行,但我有时只需要运行我的。(具体来说,如果用户打开我的应用程序并将其关闭,AccessibilityService则不再需要。)

如果我AccessibilityService在不需要的时候运行,那就是在浪费设备的 RAM 和 CPU,如果可能的话,我想避免对我的用户这样做。

如何以编程方式启动和停止我的AccessibilityService?

请注意,我不是要求以编程方式启用或禁用AccessibilityServiceAndroid 的辅助功能设置;这只是在它已经启用时启动和停止它。

我试过的(停止AccessibilityService

相关问题

Sam*_*Sam 5

取自文档生命周期部分AccessibilityService

无障碍服务的生命周期由系统独家管理,并遵循既定的服务生命周期。启动无障碍服务仅由用户在设备设置中明确打开服务触发。系统绑定到服务后,会调用onServiceConnected(). 想要执行绑定后设置的客户端可以覆盖此方法。

无障碍服务会在用户在设备设置中将其关闭或调用时停止disableSelf()(在 Android 7.0 (API 24) 及更高版本中)。