品牌网站建设小蝌蚪a,辽宁省网站制作,比较酷炫的企业网站,php网站开发实战一、使用场景
所在公司的打卡软件可以单独变成一个可以点击的APP#xff0c;所以只需要实现以下步骤#xff1a; 自动解锁屏幕返回主屏幕并打卡锁定屏幕需要的环境#xff1a; 手机端下载并且安装 auto.js v4.1.1 PC端VS安装对应的插件学习资料 B站学习资料 对应 第三期所以只需要实现以下步骤 自动解锁屏幕返回主屏幕并打卡锁定屏幕需要的环境 手机端下载并且安装 auto.js v4.1.1 PC端VS安装对应的插件学习资料 B站学习资料 对应 第三期第五期auto.js文档
二、环境搭建
1. 手机端下载并且安装 auto.js v4.1.1 github链接记得要打开该APP所有手机权限不需要root
2. VSCode安装 Auto.js-Autox.js-VSCodeExt 插件
三、手机端auto.js和PC端进行连接
手机和PC位于同一个局域网必须先打开VSCode Auto.js-Autox.js-VSCodeExt 插件 的服务器 ctrl shift P 打开命令框
start server 选择打开auto.js服务器 打开手机端的 auto.js 应用程序点击左上角出现如下在整个过程中需要的功能如下图可以在PC端编辑对应的脚本并且使用以下过程进行调试 ctrl shift P 打开命令框
run 使得代码在对应的手机上运行
四、编辑脚本
注意每一步操作需要sleep来保证操作已经执行
1. 自动解锁屏幕
重要的全局函数的基本功能 // 当前设备屏幕的宽和高
device.width
device.height// 判断当前设备的屏幕是否熄屏
device.isScreenOn() // 唤醒屏幕
device.wakeup()// 输入对应的按键
click(keyWord);// 滑动手势
// 从(x1, y1)的位置到(x2, y2)的位置经过duration时间滑动ms
swipe(x1, y1, x2, y2, duration) 代码如下 // 基本过程唤醒屏幕 - 滑动屏幕 - 进入数字密码锁输入对应的密码
let device_width device.width;
let device_height device.height;
// 判断屏幕是否是打开状态
while(!device.isScreenOn()) {// 唤醒屏幕device.wakeUp();sleep(1000);// 滑动屏幕swipe(device_width / 4, device_height / 4, device_width / 4 * 3, device_height / 4, 1000);sleep(2000);// 输入密码let password xxxxxx;let length password.length;for(let i 0;i length;i ) {click(password[i]);sleep(500);}
}
2. 返回主屏幕并打卡
关键理解和步骤 auto.js对于主页的理解并没有如我们手机的分页所以只要返回主页就可以操作不同分页上的APP想要获取对应APP所在的位置可以看 五、获取APP所在位置全局函数理解 // 但会当前正在运行的页面可以用来判断是不是位于主页
currentActivity()// 利用全局函数selector选择器获取对用位置)
// 使用 五、获取主页名称、APP位置的方法 获取 代码如下 // 返回主页
if(currentActivity() ! 见 五、获取主页名称、APP位置的方法 ) {home();sleep(500);
}// 点击打卡
// 见五、获取主页名称、APP位置的方法
className(android.widget.TextView).desc(打卡).findOne().click(); 3. 锁定屏幕
由于auto.js并没有锁屏的函数只需要在主屏幕 添加锁屏 的小部件然后按照 2 方法进行点击即可代码如下: sleep(5000);
// 返回主页
home();
sleep(500);
// 点击锁屏 根据 五、获取主页名称、APP位置的方法
className(android.widget.TextView).desc(一键锁屏).findOne().click();
五、获取主页名称、APP位置的方法
获取主页名称 将手机页面置于主页运行以下代码即可在对应的命令窗口获取到主页的地址 let cur_Activity currentActivity()
console.log(cur_Activity) 获取APP位置
需要代开悬浮窗的功能 步骤如下 六、最终的代码
let device_width device.width;
let device_height device.height;
// 判断屏幕是否是打开状态
while(!device.isScreenOn()) {// 唤醒屏幕device.wakeUp();sleep(1000);// 滑动屏幕swipe(device_width / 4, device_height / 4, device_width / 4 * 3, device_height / 4, 1000);sleep(2000);// 输入密码let password xxxxxx;let length password.length;for(let i 0;i length;i ) {click(password[i]);sleep(500);}
}// 返回主页 需要 五、获取主页名称、APP位置的方法
if(currentActivity() ! com.huawei.android.launcher.unihome.UniHomeLauncher) {home();sleep(500);
}// 点击打卡 需要 五、获取主页名称、APP位置的方法
className(android.widget.TextView).desc(打卡).findOne().click();sleep(5000);
// 返回主页
home();
sleep(500);
// 点击锁屏 五、获取主页名称、APP位置的方法
className(android.widget.TextView).desc(一键锁屏).findOne().click();七、设置定时见 B站学习资料 第十六期