最近到手了一部新机,装了个 Smart AutoClicker 在挂机单机游戏时自动点击跳过按钮。然而在无障碍页面,却无法授予点击器权限。
尝试用 adb 命令(adb shell settings put secure enabled_accessibility_services ...
)竟也无法启用。打开 logcat 后,发现了这么一条报错:
Skipping enabling service disallowed by device admin policy: ComponentInfo{com.buzbuz.smartautoclicker/com.buzbuz.smartautoclicker.SmartAutoClickerService}...
看了一下Android 代码库,才发现原来是 Android 引入的新安全机制。乘此机会,整理几种解决方案给有需要的朋友。
方法一:从 Google Play 重新安装
是的,Google 只限制了侧载应用的无障碍权限的开启。从 Google Play(或其他应用商店)安装就没有这个问题了。全文完。
等等,那如果这个应用并未在 Google Play 上架呢?
方法二:在应用设置里“允许受限制的设置”
且慢!无障碍功能权限很高。为侧载应用启用无障碍功能前,请务必确认应用的安全性。
如果你的系统没有被厂商魔改过度,那么在对应应用的系统设置里可以关掉这个限制。
具体位置如图:
方法三:用第三方应用安装器重新安装
然而,我用的 OxygenOS 15 已经被魔改得连菜单都没有了。这时候可以曲线救国,利用 SAI 应用安装器来重装应用。因为是由应用安装的应用,所以会被判定为非侧载。此时应用的无障碍设置就能正常启用了。
Android 的安全功能越来越多了。虽然明面上说是安全,实际上也是 Google 为了掌握 Android 生态,让应用开发者与用户尽可能离不开 Google Play。
像本文提到的无障碍功能限制尚可以绕过,而 Google 最近推的 Google Play Automatic Protection(又名 pairipcore)则更恶心,有机会再聊吧。(然而并不会,我太菜了!)
Coxxs
OxygenOS 15 還沒更新,不過經驗來說的話,用內建的檔案管理器安裝應該就可以正常打開無障礙設定 :P