Auto.js实现自动授权截屏权限

写在前面:

        本文章记录自己在开发过程中,遇到的基础问题,也同样便于在以后的开发中获得便利。

        如果你是初学Auto.js开发,建议可以读这篇文章Auto.js入门【超基础】,该文章是我入门时拜读的作品,整体感觉很好,基本内容都有所讲到,完全可以适合新手做出一些简单的脚本自用。

一、开发文档

         在开发文档中该方法也提到,有些系统是没有保持始终允许的选项的,题主也是遇到了这个问题,因为写的脚本时定时运行的,不可能自己再手动授权,所以自己写了一个能够自动授权方法,还有很多不足的地方,希望大家可以斧正。

二、进阶方法

1、定义方法(仅个人推荐)

        我一般会选择重新开一个js文件,单独存放我自己定义的一些便捷函数,这样开发时,我只需要复制该文件到文件夹,就可以调用使用我定义的所有函数。

2、代码

function getScreenCapture(){
    let Thread = threads.start(function(){
        if(auto.service != null){  //如果已经获得无障碍权限
                //由于系统间同意授权的文本不同,采用正则表达式
                let Allow = textMatches(/(允许|立即开始|统一)/).findOne(10*1000);
                if(Allow){
                    Allow.click();
                }
        }
    });
    if(!requestScreenCapture()){
        log("请求截图权限失败");
        return false;
    }else{
        Thread.interrupt()
        log("已获得截图权限");
        return true;
    }
}

         这里我主要是采用了多线程正则表达式来写这一段代码,不懂得小伙伴可以看开发文档:Auto.js官方API文档传送门,当然开发文档中有些地方写的比较含糊,如果是初接触这两个功能的话可能看不懂,可以自己搜索一些教程了解一下,也可以私信我,给你推荐。

3、调用方法

var mydefine = require("MydefineFun.js");

        在main.js方法中可以采用接收该导出的方式,然后用mydefine就可以就可以调用方法,其中MydefineFun.js是写了方法的文件名。

四、最后

        1、有什么不当之处,欢迎讨论。

        2、有什么问题可以私信我,也可以关注我,后面会找时间更新其他的进阶方法。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

C菌落

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值