SOURCE

//脚本执行时保持屏幕常亮,默认5分钟
var keepScreenOnMinutes = 5;
 
//随机休眠时间段
var randomSleepMinutes = 3;
 
 
//进入打卡流程
punchTheClock();
 
function punchTheClock() {
  //唤醒手机
  device.wakeUp();
  sleep(2 * 1000);
 
  //判断屏幕是否唤醒成功
  if (!device.isScreenOn()) {
    console.error("屏幕未唤醒,退出脚本");
    exit();
  }
 
  //脚本执行时保持屏幕常亮  5分钟
  device.keepScreenOn(keepScreenOnMinutes * 60 * 1000);
 
  //随机休眠
  var sleep_time = random(0, randomSleepMinutes * 60 * 1000);
  sleep(sleep_time);
  //打开钉钉
  console.log("打开钉钉");
  launchApp("钉钉");
  sleep(3 * 1000);
 
  //判断是否已登录
  if (id("tv_welcome_name").exists()) {
    console.error("钉钉未登录");
    //启动自动登录
    reLogin();
  }
  //自动打卡通知
  if (click("我知道了")) {
    console.log("自动打卡成功");
  }
 
  //点击忽略更新(如果有)
  if (click("暂不更新")) {
    console.log("点击暂不更新");
  }
  sleep(5 * 1000);
 
  //点击工作台
  console.log("点击工作台");
  clickMessage("工作台");
  sleep(1 * 1000);
 
  //点击考勤进入打卡页面
  console.log("点击考勤打卡");
  clickMessage("考勤打卡");
  sleep(2 * 1000);
 
  //判断是否休息日
  if (className("android.view.View").text("今日休息").exists()) {
    console.log("今日休息");
    back();
    launchApp("Auto.js");
 
    exit();
  }
 
  //需要手动点击打卡按钮的 可以添加在这里
   
  //点击 查看打卡结果
  console.log("查看打卡结果");
  var x = className("android.view.View").textContains("已打卡").find();
  if(x.length == 0){
        x = className("android.view.View").textContains("打卡时间").find();
  }
  var send_msg = "未打卡成功";
  if (x.length > 0) {
    send_msg = x[x.length-1].text();
  }   console.log("打卡结果:", send_msg);
  //发送结果到微信
  sendWeiChat(getdate() + " " + send_msg);
  //返回控制台(避免下次启动出错)
  back();
  //返回主页
  home();
  sleep(1000);
  //打开autojs
  launchApp("Auto.js");
 
  //关闭屏幕常亮
  console.log("关闭屏幕常亮");
  device.cancelKeepingAwake();
  console.log("打卡完成");
  exit();
}
 
function reLogin() {
  sleep(2 * 1000);
  //启动自动登录
  if (id("cb_privacy").exists()) {
    //勾选协议
    id("cb_privacy").click();
    id("et_pwd_login").setText("xxxxxxx");
    clickMessage("登录");
    console.log("登录成功");
    sleep(1 * 1000);
  }
}
 
//判断网络情况,如果没有网络,结束脚本运行
function internetCheck() {
  var url = "m.baidu.com";
  var res = http.get(url);
  if (res.statusCode != 200) {
    console.error("网络不可用");
    exit();
  }
}
 
//判断GPS是否可用,如果不可用,结束脚本运行
function gpsCheck() {
  importClass(android.location.LocationManager);
  importClass(android.content.Context);
  var locationManager = context.getSystemService(Context.LOCATION_SERVICE);
  if (!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
    console.error("GPS不可用,无法打卡");
    exit();
  }
}
 
//根据控件文字点击,如果点击失败,则说明打卡流程无法正常进行,结束脚本运行
function clickMessage(message) {
  var n = 3;
  var logo = false;
  while (n--) {
    if (click(message)) {
      logo = true;
      break;
    }
    sleep(1 * 1000);
  }
  if (logo == false) {
    console.error("点击" + message + "出错");
    exit();
  }
}
 
//向企业微信发送信息
function sendWeiChat(send_data) {
  var corpid = "xxxxx"; //企业id  自己改
  var corpsecret = "xxxxx"; //企业应用secret  自己改
  var HEADERS = { "Content-Type": "application/json ;charset=utf-8" };
  var r = http.get(
    "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" +
      corpid +
      "&corpsecret=" +
      corpsecret,
    {
      headers: HEADERS,
    }
  );
  var js = r.body.json();
  var token = js.access_token;
  var data = {
    touser: "@all",
    msgtype: "text",
    agentid: 1000003, //应用id  自己改
    text: { content: send_data },
    safe: 0,
    enable_id_trans: 0,
    enable_duplicate_check: 0,
    duplicate_check_interval: 1800,
  };
  var wechaturl =
    "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + token;
  http.postJson(wechaturl, data, { headers: HEADERS });
}
 
function getdate() {
  fdate = new Date();
  year = fdate.getFullYear();
  month = fdate.getMonth();
  day = fdate.getDate();
  //脚本执行时保持屏幕常亮,默认5分钟
var keepScreenOnMinutes = 5;
 
//随机休眠时间段
var randomSleepMinutes = 3;
 
 
//进入打卡流程
punchTheClock();
 
function punchTheClock() {
  //唤醒手机
  device.wakeUp();
  sleep(2 * 1000);
 
  //判断屏幕是否唤醒成功
  if (!device.isScreenOn()) {
    console.error("屏幕未唤醒,退出脚本");
    exit();
  }
 
  //脚本执行时保持屏幕常亮  5分钟
  device.keepScreenOn(keepScreenOnMinutes * 60 * 1000);
 
  //随机休眠
  var sleep_time = random(0, randomSleepMinutes * 60 * 1000);
  sleep(sleep_time);
  //打开钉钉
  console.log("打开钉钉");
  launchApp("钉钉");
  sleep(3 * 1000);
 
  //判断是否已登录
  if (id("tv_welcome_name").exists()) {
    console.error("钉钉未登录");
    //启动自动登录
    reLogin();
  }
  //自动打卡通知
  if (click("我知道了")) {
    console.log("自动打卡成功");
  }
 
  //点击忽略更新(如果有)
  if (click("暂不更新")) {
    console.log("点击暂不更新");
  }
  sleep(5 * 1000);
 
  //点击工作台
  console.log("点击工作台");
  clickMessage("工作台");
  sleep(1 * 1000);
 
  //点击考勤进入打卡页面
  console.log("点击考勤打卡");
  clickMessage("考勤打卡");
  sleep(2 * 1000);
 
  //判断是否休息日
  if (className("android.view.View").text("今日休息").exists()) {
    console.log("今日休息");
    back();
    launchApp("Auto.js");
 
    exit();
  }
 
  //需要手动点击打卡按钮的 可以添加在这里
   
  //点击 查看打卡结果
  console.log("查看打卡结果");
  var x = className("android.view.View").textContains("已打卡").find();
  if(x.length == 0){
        x = className("android.view.View").textContains("打卡时间").find();
  }
  var send_msg = "未打卡成功";
  if (x.length > 0) {
    send_msg = x[x.length-1].text();
  }   console.log("打卡结果:", send_msg);
  //发送结果到微信
  sendWeiChat(getdate() + " " + send_msg);
  //返回控制台(避免下次启动出错)
  back();
  //返回主页
  home();
  sleep(1000);
  //打开autojs
  launchApp("Auto.js");
 
  //关闭屏幕常亮
  console.log("关闭屏幕常亮");
  device.cancelKeepingAwake();
  console.log("打卡完成");
  exit();
}
 
function reLogin() {
  sleep(2 * 1000);
  //启动自动登录
  if (id("cb_privacy").exists()) {
    //勾选协议
    id("cb_privacy").click();
    id("et_pwd_login").setText("xxxxxxx");
    clickMessage("登录");
    console.log("登录成功");
    sleep(1 * 1000);
  }
}
 
//判断网络情况,如果没有网络,结束脚本运行
function internetCheck() {
  var url = "m.baidu.com";
  var res = http.get(url);
  if (res.statusCode != 200) {
    console.error("网络不可用");
    exit();
  }
}
 
//判断GPS是否可用,如果不可用,结束脚本运行
function gpsCheck() {
  importClass(android.location.LocationManager);
  importClass(android.content.Context);
  var locationManager = context.getSystemService(Context.LOCATION_SERVICE);
  if (!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
    console.error("GPS不可用,无法打卡");
    exit();
  }
}
 
//根据控件文字点击,如果点击失败,则说明打卡流程无法正常进行,结束脚本运行
function clickMessage(message) {
  var n = 3;
  var logo = false;
  while (n--) {
    if (click(message)) {
      logo = true;
      break;
    }
    sleep(1 * 1000);
  }
  if (logo == false) {
    console.error("点击" + message + "出错");
    exit();
  }
}
 
//向企业微信发送信息
function sendWeiChat(send_data) {
  var corpid = "xxxxx"; //企业id  自己改
  var corpsecret = "xxxxx"; //企业应用secret  自己改
  var HEADERS = { "Content-Type": "application/json ;charset=utf-8" };
  var r = http.get(
    "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" +
      corpid +
      "&corpsecret=" +
      corpsecret,
    {
      headers: HEADERS,
    }
  );
  var js = r.body.json();
  var token = js.access_token;
  var data = {
    touser: "@all",
    msgtype: "text",
    agentid: 1000003, //应用id  自己改
    text: { content: send_data },
    safe: 0,
    enable_id_trans: 0,
    enable_duplicate_check: 0,
    duplicate_check_interval: 1800,
  };
  var wechaturl =
    "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + token;
  http.postJson(wechaturl, data, { headers: HEADERS });
}
 
function getdate() {
  fdate = new Date();
  year = fdate.getFullYear();
  month = fdate.getMonth();
  day = fdate.getDate();
  return year + "-" + month + "-" + day;
}
console 命令行工具 X clear

                    
>
console