我有一个Android服务在后台运行在我的应用程序中,该服务运行多个线程,其中一个线程用于运行30分钟的命令。在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分钟确实运行一次。
3600000/1000/60 = 60分钟呢? – Zong
是的我的不好应该是1800000已经写出了我使用1800000的代码并获得随机结果 –
@Lestat 1800000是正确的。 – timss