如何在前台运行的服务中设置计时器,以便每1分钟运行一段代码。在伪代码中我想要像这样的smth。
public int onStartCommand(Intent intent, int flags, int startId) {
startEveryMinTask()
return START_STICKY;
}
private void startEveryMinTask() {
//do stuf
}
答案 0 :(得分:2)
您可以使用java.util.Timer
Timer timer = new Timer();
public int onStartCommand(Intent intent, int flags, int startId) {
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
startEveryMinTask();
}, 60000, 60000); // 60000 milliseconds = 1 minute
return START_STICKY;
}
答案 1 :(得分:0)
只需使用AlarmManager即可在完成代码后再次调用您的服务。