美文网首页Android 编程Java实战编程
【黑科技】钉钉自动打卡

【黑科技】钉钉自动打卡

作者: At攻城狮 | 来源:发表于2017-08-11 15:33 被阅读398次

所需环境:

1、JDK

2、Android SDK

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Timer;

import java.util.TimerTask;

public class DDingAutoClock {

public static void main(String[] args) {

Timer timer = new Timer();

timer.schedule(new Task(), 60 * 1000);

}

static class Task extends TimerTask {

public voidrun() {

String str = getCurrentTime();

if(str.equals("08:00")){

System.out.println("定时任务执行");

//启动叮叮

try {

execCommand("adb wait-for-device");

execCommand("adb shell am start -n com.alibaba.android.rimet/com.alibaba.android.rimet.biz.SplashActivity");

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}

public static StringgetCurrentTime(){

SimpleDateFormat formatter  =  new  SimpleDateFormat  ("HH:mm");

Date curDate  =  new  Date(System.currentTimeMillis());//获取当前时间

String  str  =  formatter.format(curDate);

System.out.println(str);

returnstr;

}

public static void execCommand(Stringcommand) throws IOException {

// start the lscommandrunning

//String[] args =  new String[]{"sh","-c",command};

Runtime runtime = Runtime.getRuntime();

Process proc = runtime.exec(command);        //这句话就是shell与高级语言间的调用

//如果有参数的话可以用另外一个被重载的exec方法

//实际上这样执行时启动了一个子进程,它没有父进程的控制台

//也就看不到输出,所以我们需要用输出流来得到shell执行后的输出

InputStream inputstream = proc.getInputStream();

InputStreamReader inputstreamreader = new InputStreamReader(inputstream);

BufferedReader bufferedreader = new BufferedReader(inputstreamreader);

//readthe ls output

String line ="";

StringBuilder sb = new StringBuilder(line);

while((line = bufferedreader.readLine()) != null) {

//System.out.println(line);

sb.append(line);

sb.append("\n");

}

//使用exec执行不会等执行成功以后才返回,它会立即返回

//所以在某些情况下是很要命的(比如复制文件的时候)

//使用wairFor()可以等待命令执行完成以后才返回

try {

if(proc.waitFor() != 0) {

System.out.println(proc.exitValue());

}

}

catch (InterruptedException e) {

System.err.println(e);

}

}

}

相关文章

  • 【黑科技】钉钉自动打卡

    所需环境: 1、JDK 2、Android SDK import java.io.BufferedReader; ...

  • 钉钉自动打卡!同学免费福利

    钉钉自动打卡 软件名称:钉钉自动打卡(FreeDing) 软件版本:1.0.5 软件大小:1.7MB 平台:安卓 ...

  • Android实现钉钉自动打卡功能(AccessibilityS

    Android实现钉钉自动打卡功能(AccessibilityService版本) ===============...

  • 钉钉-自动打卡

    环境准备 Mac 1、uiautomator2 (1)先安装好uiautomator2环境:https://git...

  • 钉钉自动打卡

    你的打卡神器 很多公司考勤使用的钉钉软件,虽然手机一直在身,但难免会有遗忘打卡的时候,造成迟到、下班未打卡、加班未...

  • 钉钉自动打卡

    五点半下班赶地铁,又双叒忘记打卡了。 地铁开走了才想起来,赶忙打开钉钉,万万没想到的是,地铁行进途中居然自动打上卡...

  • iOS如何获取准确的时间

    因为钉钉出了一个打卡黑科技,离线打卡。我们这边老板说要跟进,我们也做一个打卡,我看了看,离线打卡无非就是获取到用户...

  • 钉钉有时候自动打卡有时候又没有自动打卡?

    节假日回来这两天,到公司打开钉钉打卡,居然没有自动打卡了,之前因为设置了极速打卡(自动打卡),所以这两天没有自动打...

  • Android 实现钉钉自动打卡

    前言 本文章旨在提供一种新的思路,在无需 Root 的情况下,实现自动化钉钉定时打卡,更多是为了自己方便而定制开发...

  • 钉钉定位打卡助手+虚拟定位

    你的打卡神器 钉钉助手是一款钉钉虚拟打卡app,用户可以通过钉钉助手app来进行钉钉工作打卡,随时随地都可以进行打...

网友评论

本文标题:【黑科技】钉钉自动打卡

本文链接:https://www.haomeiwen.com/subject/qlxrrxtx.html