安卓机没有无障碍服务设置,无法开启相关插件怎么办?
发布于 作者:苏南大叔 来源:程序如此灵动~
在寻找任务管理器相关的可替代方案的时候,偶然发现freemeos
这个爆改版的安卓系统里面,"无障碍服务"这个设置和其它安卓机的“无障碍服务”设置有很大的区别,里面并没有开启和关闭特定软件的无障碍服务的功能。这样的话,大量依靠打开“无障碍服务”才能使用的软件功能就都歇菜了。这该怎么处理呢?
苏南大叔的“程序如此灵动”博客,记录苏南大叔的编程经验文章。本文测试环境:doov@d80pro
,android@11
,win10
,adb@1.0.32
,shizuku@13.5.4
,无障碍管理
。
删减版的无障碍服务
下面的是基于freemeos
的测试机doov@d80pro
的“无障碍服务”的截图。显然和大家所认知的“无障碍界面”有着质的区别。
恢复无障碍插件控制
想要恢复真正的无障碍服务,这里就借助一位大神的作品了,插件源码地址:
同时发现,作者同时是shizukurunner
的作者...
成品下载地址:
使用方式
这款AccessibilityManager
的正常使用,需要使用到root
权限或者shizuki
授权器。参考文章:
代码原理
由于这款AccessibilityManager
的成品体积非常小,只有“62kb”。所以,它的原理实现也必然十分简单。核心代码:
((AccessibilityManager) getSystemService(Context.ACCESSIBILITY_SERVICE)).getInstalledAccessibilityServiceList();
提供无障碍服务的软件
例如“微软桌面”里面就提供了相关的手势服务,这个手势服务就是基于“无障碍”的。在这款“AccessibilityManager”软件中,就可以强制开启相关服务。从而实现微软桌面的相关高级功能。比如:双击屏幕就锁屏。
结语
更多安卓代码经验文章,请参考:


