You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何检测应用Accessibility Service状态始终返回false?

辅助服务启用状态检测始终返回false问题

我参考Stack Overflow上《My app doesn't asks for Accessibility Permission》的解决方案,将其转换为Kotlin语法后,能正常唤起辅助服务设置界面,但检测应用Accessibility Service是否启用的函数始终返回false——即便我已在系统中开启了该应用的辅助服务,导致每次启动应用都会跳转至辅助服务设置界面,对此我感到困惑。

检测辅助服务状态的函数

private fun isAccessibilityServiceEnable(context: Context): Boolean {
    val accessibilityManager =
        (context.getSystemService(ACCESSIBILITY_SERVICE) as AccessibilityManager)
    val accessibilityServices = accessibilityManager.getEnabledAccessibilityServiceList(
        AccessibilityServiceInfo.FEEDBACK_ALL_MASK
    )

    Toast.makeText(
        this@MainActivity,
        context.packageName,
        Toast.LENGTH_LONG
    ).show()

    for (info in accessibilityServices) {
        if (info.id.contains(context.packageName)) {
            return true
        }
    }
    return false
}

调用代码

if (!isAccessibilityServiceEnable(applicationContext)) {
    val accessibleIntent = Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS)
    startActivity(accessibleIntent)
}

代码可正常唤起辅助服务权限设置界面,但开启权限后,再次启动应用仍会跳转至该界面,仿佛权限未设置。我注意到应用名称MyListApp与包名com.example.mylistapp不同,这是否会影响检测结果?

相关截图

  • 截图1:Intent配置界面
  • 截图2:系统辅助服务列表界面
  • 截图3:应用权限设置界面
  • 截图4:辅助服务详情设置界面

内容的提问来源于stack exchange,提问作者ThN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 06:02:41