0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Autojs的无障碍服务自启动是什么

汽车电子技术 来源:安卓脚本 作者:Dcrclub 2023-03-03 14:08 次阅读

对于一个依赖无障碍服务的应用来说,App关闭的时候就会关闭无障碍服务权限,以至于每次启动都需要去手动打开一次无障碍服务,这无疑会让人很抓狂.但是这对于用户来说这又是安全的,否则各种流氓岂不是可以随意操控你的手机了,有限制才会有安全...

今天的这篇文章呢,是利用一个系统的权限

android.permission.WRITE_SECURE_SETTINGS

这个权限对于开发安装的人来说,都应该明白,如果我们直接在AndroidMainifast.xml中声明,会报错,原因就是我们不是系统应用,属于第三方,所以没有权限使用这个权限.但是如果我们使用adb调试来针对某一个app来授权,那就可以拿到这个权限了,授权的命令为:

adb shell pm grant PACKAGE_NAME android.permission.WRITE_SECURE_SETTINGS

其中PACKAGE_NAME为你要授权的应用包名.例如: org.autojs.autojspro

adb命令如何安装到你的电脑上,如何使用我就不教了,自行百度吧.其他的废话,我也不多说了,直接上我们今天的脚本代码.

importClass(android.content.Context);
importClass(android.provider.Settings);
importClass(android.content.pm.PackageManager);


if (!checkSelfPermission("android.permission.WRITE_SECURE_SETTINGS")) {
    toastLog("出错了,请查看日志界面内容");
    console.error("\\n您没有为autojs/autojsPro授予WRITE_SECURE_SETTINGS权限!\\n"+
             "授权方法: 您需要打开USB调试并连接一台电脑,使用adb命令给autojs授权,命令为:\\n"+
             "adb shell pm grant "+context.getPackageName()+" android.permission.WRITE_SECURE_SETTINGS");
    setClip("adb shell pm grant "+context.getPackageName()+" android.permission.WRITE_SECURE_SETTINGS");
    toastLog("命令已写入到剪贴板");
    exit();
}


if (auto.service == null) {
    //这里没有启动无障碍服务 这里我启动了autojs免费版和pro版的无障碍服务
    try {
        var enabledServices = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES);
        var Services = enabledServices + ":org.autojs.autojspro/com.stardust.autojs.core.accessibility.AccessibilityService"+
                                         ":org.autojs.autojs/com.stardust.autojs.core.accessibility.AccessibilityService";
        Settings.Secure.putString(context.getContentResolver(), Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES, Services);
        Settings.Secure.putString(context.getContentResolver(), Settings.Secure.ACCESSIBILITY_ENABLED, '1');
    } catch (e) {
        toastLog("您没有为autojs/autojsPro授予WRITE_SECURE_SETTINGS权限");
        exit();
    }
}


/**
 * 检查自身是否开启某权限
 * @param {string} permission 权限名称
 */
function checkSelfPermission(permission) {
    return context.checkSelfPermission(permission) == PackageManager.PERMISSION_GRANTED
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • APP
    APP
    +关注

    关注

    33

    文章

    1529

    浏览量

    71631
  • 系统应用
    +关注

    关注

    0

    文章

    2

    浏览量

    5061
  • adb
    adb
    +关注

    关注

    1

    文章

    33

    浏览量

    10342
收藏 人收藏

    评论

    相关推荐

    2023“科技无障碍”不谈价值观

    “实用”只是无障碍改造的第一步
    的头像 发表于 12-06 09:35 667次阅读
    2023“科技<b class='flag-5'>无障碍</b>”不谈价值观

    怎样做才能让RK3326 Android为自己的APK服务开启无障碍默认权限呢

    怎样做才能让RK3326 Android为自己的APK服务开启无障碍默认权限呢?
    发表于 02-17 07:35

    RK3322 Android 8.1是如何为自己的APK服务开启无障碍权限的

    RK3322 Android 8.1是如何为自己的APK服务开启无障碍权限的?求解
    发表于 02-17 06:21

    微信支付宝等将进行适老化及无障碍改造

    将优先推动8大类115家网站、6大类43个App进行适老化及无障碍改造。 65岁以上老年人拨打客服电话时,将不再需要经过语音菜单即可直接进入人工客服服务。 首批适老化及无障碍改造App名单中,包括腾讯新闻、新浪微博等新闻资讯类产
    的头像 发表于 12-25 11:47 2464次阅读

    小米MIUI12.5全球首发无障碍触感功能

    12月30日,MIUI官方微博线上发布MIUI12.5无障碍触感功能。无障碍触感是通过手机线性振动马达,向无障碍用户传递准确信息的一种全新交互方式,可以有效提升视障用户的操作效率。
    的头像 发表于 12-30 11:29 2282次阅读

    工信部:年底将授予首批无障碍标识

    今年一月,工业和信息化部正式启动了“互联网应用适老化及无障碍改造专项行动”,同时还发布了老年人一键呼入人工客服、电信服务营业厅爱心通道以及主流手机“老人模式”等三项重要适老化措施成果。首批公共
    的头像 发表于 03-31 16:47 1822次阅读

    迅远RFID无障碍通道门实现无障碍通道人员及物品的跟踪管控

    开放式无障碍快速门禁通道系统是一种新型的安防管理系统,可实现无障碍通道人员及物品的跟踪管控。
    的头像 发表于 10-11 15:13 2786次阅读

    让每一个人受益,收获更大的成功 | 一文了解无障碍体验

    的问题: 什么是无障碍? 它为什么重要?或者说,打造无障碍产品对团队有何好处? Google 怎么帮助开发者打造无障碍体验? 我的团队该如何长期确保 "无障碍氛围"? 本文接下来会一一
    的头像 发表于 11-15 18:40 593次阅读

    为应用打造更好的无障碍体验

    Android 应用的目标应该是让所有人都可以使用,包括具有无障碍功能需求的人。 视力受损、色盲、听力受损、精细动作失能的人、以及有认知障碍和许多其他残疾的人可以使用 Android 设备来处
    的头像 发表于 11-17 18:25 443次阅读

    测试应用无障碍功能,助力构建适合更多人的精彩应用

    效果,请使用本文档中介绍的所有方法: 手动测试 :  使用 Android 无障碍服务与您的应用互动。 使用分析工具进行测试 : 使用各种工具发现改进应用无障碍功能的机会。 自动化测试 : 在 Espresso 和 Robole
    的头像 发表于 11-22 17:45 773次阅读

    最佳实践 | 助您提升应用的无障碍功能

    某些使用 Android 设备的用户具有不同于他人的无障碍功能需求。为了帮助具有共同的无障碍功能需求的特定人群,Android 框架为开发者创建无障碍服务提供了相关功能,这种
    的头像 发表于 11-28 18:00 643次阅读

    借助 Material Design,帮助您打造更好的无障碍应用 (上篇)

    随着时代的发展,"无障碍体验" 对开发者的意义也愈发重大。我们准备了无障碍设计文章,帮助您为更多用户打造精彩应用。本文是第一篇内容,将为您介绍辅助技术,层次结构,颜色和对比度
    的头像 发表于 12-20 17:40 558次阅读

    Google 无障碍功能更新 | 第二期

    为了让每个人都能体验精彩世界,Google 无障碍团队始终致力于打造更舒适的日常生活、更完善的无障碍体验。我们希望通过专题系列视频 "Google 无障碍功能更新" 与您分享近期无障碍
    的头像 发表于 11-27 18:40 276次阅读

    自启动电路的工作原理 自启动电路需要输入吗

    自启动电路(Auto Start Circuit)是一种用于自动启动设备或系统的电路,其原理基于控制自动化技术和电子电路等基础知识。在本文中将详细解释自启动电路的工作原理以及所需的输入。 自启
    的头像 发表于 02-06 11:38 452次阅读

    如何判断电路能否自启动 电路能够自启动的条件

    电路的自启动指的是电路在断电或异常情况下,能够自动恢复正常工作状态的能力。自启动对于电路的可靠性和稳定性至关重要,尤其在一些关键应用场合,如天气监测系统、工业自动化生产线等。本文将从电路自启动
    的头像 发表于 02-06 11:41 1076次阅读