常见问题
一些可能影响使用体验的问题和对应解决方案, 某些方案可能并不适用您的机型系统
如您有更好的方案或想对现有方案进行补充, 请点击底部 为此页提供修改建议
耗电说明
首先 GKD 默认情况下并不耗电,有的人以为关闭更新检测,关闭日志就能减少耗电,并不正确
真正的耗电在于 启用的规则 和 当前应用界面无障碍节点数量及无障碍事件刷新频率
如果想追求低耗电,那应该开启少量的规则,由于之前的默认规则数量有 1300+,很多人喜欢无脑开启规则
开启这么多规则,并且在这些规则匹配的界面使用手机,不耗电是不可能的
此外,某些软件如抖音的无障碍节点数量比较多,并且产生无障碍事件频率也比较高
长时间下使用此类软件的规则会比较耗电,请自行考虑后再启用
未识别应用
某些用户可能选择将应用安装到其他用户空间隔离
这导致 GKD 无法从当前应用列表识别到应用已安装
对于未安装的应用, 有以下影响
- 全局规则 的内部配置禁用失效
- 应用规则 不会启用
对于 全局规则
可使用手动编辑禁用, 添加 appId 到禁用列表后将生效
若要开启 应用规则
, 在对应订阅-应用规则-显示未安装应用-打开右侧开关即可
不生效原因
这是因为某些订阅有将近 2k 个应用, 而一般用户最多使用到 200 个
如果将 未安装的应用 的应用规则也全部开启, 这将额外占用 1800 个应用的无效规则配置内存
后台运行
如何尽量保持后台运行不被系统回收
- 任务切换界面给 GKD 应用卡片加锁即可
一般情况下, 使用此项即可正常后台运行, 如果不行请使用下面的步骤
- 打开 GKD 首页, 开启
常驻通知
- 打开 GKD 设置, 开启
后台隐藏
- 允许后台活动, 关闭省电策略, 或者设置 GKD 的省电策略为无限制
- 允许 GKD 自启动
受限制的设置
无障碍列表界面提示 受限制的设置(出于安全考虑,此设置目前不可用)
这是 Android13 的限制, 对于不在应用商店等可信任来源安装的应用不能直接开启无障碍权限
您需要解除这个限制, 到系统设置-应用管理-找到并点击GKD-右上角-允许受限制的设置
以 LineageOS 20 为例, 下面为完整的解除限制流程截图
如果您按照以上步骤设置后回到 无障碍列表 仍然提示不可用, 您可以试试 重启手机, 或尝试下面一条方案
无法开启无障碍
有的手机如 ColorOS 会魔改系统收紧权限, 如果你是浏览器下载后安装或着 GKD 内部自更新安装后会无法开启无障碍, 并且表现以下行为之一
- 显示 受限制的设置 但是根据 解决方法 没有找到
允许受限制的设置
的选项 - 直接点击开启无障碍按钮后但无法开启无障碍没有响应
可以通过以下方式解决, 可在 开始使用 获取 APK 文件
使用系统信任的方式进行安装, 例如在系统文件管理中查看 APK 文件后点击安装
如果使用系统安装器, 但是在冻结了应用安装器
com.oplus.appdetail
状态下安装的 APK, 需解冻后重新安装使用 App Ops 在权限管理中手动授予 ACCESS_RESTRICTED_SETTINGS 权限
关闭无障碍警告弹窗
建议
授予 写入安全设置权限
后可自行开启无障碍, 而无需设置此项
这个方案不一定适用所有机型
大多数设备开启无障碍时都会出现 10s 的无障碍警告弹窗
若是只需要开启一次则无所谓但是如果开启次数比较多每次都有这个警告等待就很烦人了
你可能已经看到这个界面还有一个开关, 也就是下方的 快捷方式
开关
打开一次下面这个快捷方式开关后, 上面的的开启按钮就不会出现警告弹窗了, 但是你会发现屏幕侧边出现了一个应用小图标, 多数情况下我们并不需要这个图标
到无障碍界面-"无障碍"按钮-使用按钮或手势-点击切换为手势即可隐藏
以 Xiaomi HyperOS 为例子, 下面是完整的关闭弹窗流程截图
adb 授权失败
在使用 adb 手动授予 写入安全设置权限
时可能会提示权限不够,具体报错如下:
adb shell pm grant li.songe.gkd android.permission.WRITE_SECURE_SETTINGS
Exception occurred while executing 'grant':
java.lang.SecurityException: grantRuntimePermission: Neither user 2000 nor current process has android.permission.GRANT_RUNTIME_PERMISSIONS.
at android.app.ContextImpl.enforce(ContextImpl.java:2384)
at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:2412)
at com.android.server.pm.permission.PermissionManagerServiceImpl.grantRuntimePermissionInternal(PermissionManagerServiceImpl.java:1383)
at com.android.server.pm.permission.PermissionManagerServiceImpl.grantRuntimePermission(PermissionManagerServiceImpl.java:1365)
at com.android.server.pm.permission.PermissionManagerService.grantRuntimePermission(PermissionManagerService.java:573)
at android.permission.PermissionManager.grantRuntimePermission(PermissionManager.java:610)
at com.android.server.pm.PackageManagerShellCommand.runGrantRevokePermission(PackageManagerShellCommand.java:2717)
at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:301)
at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
at android.os.ShellCommand.exec(ShellCommand.java:38)
at com.android.server.pm.PackageManagerService$IPackageManagerImpl.onShellCommand(PackageManagerService.java:6840)
at android.os.Binder.shellCommand(Binder.java:1092)
at android.os.Binder.onTransact(Binder.java:912)
at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4352)
at com.android.server.pm.PackageManagerService$IPackageManagerImpl.onTransact(PackageManagerService.java:6824)
at android.os.Binder.execTransactInternal(Binder.java:1392)
at android.os.Binder.execTransact(Binder.java:1299)
下面参考 shizuku 文档 的解决方案
HyperOS/MIUI(小米、POCO)
在开发者选项
中开启USB 调试(安全设置)
。注意不是USB 调试
ColorOS(OPPO & OnePlus)
在开发者选项
中关闭权限监控
或打开禁止权限监控
Flyme(魅族)
在开发者选项
中关闭Flyme 支付保护
关闭限制后重新运行命令即可, 授权成功后可重新打开这些限制