我在后台在我的应用程序中运行了一个 Android 服务,该服务运行多个线程,其中一个线程旨在每 30 分钟运行一次命令。
Thread InternetThread = new Thread() {
public void run() {
while (true){
try {
Thread.sleep(1800000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.i("test", "We are running");
runCommand();
}
}
};
但是我发现这段代码并不总是每 30 分钟运行一次,有时运行之间可能长达一个小时,从不会少于 30 分钟,但可以更多。我认为这与Android所追求的服务有关吗?但我不太确定,因为这仅限于我对 Android 服务和线程的理解。
希望有人可以帮助确保“runCommand()”确实每 30 分钟运行一次。