gpt4 book ai didi

java - 在android中每2小时调用一次方法的最佳方法?

转载 作者:行者123 更新时间:2023-12-01 18:32:16 25 4
gpt4 key购买 nike

我看到了这种方法:

TimerTask timerTask = new TimerTask() {
@Override
public void run() {
MyMethod();
}
};

Timer timer = new Timer(true);
timer.schedule(timerTask, 0, 7200000);

1.这是最好的方法吗?

2.我怎样才能确保这个方法不会“死”?

注意:如果应用程序关闭,我不需要此方法在后台工作,因此不需要执行服务或类似的操作。

最佳答案

我认为如果你使用 AlarmManager 来代替,这个方法可以改进。您可以设置每 2 小时重复一次的闹钟,然后使用广播接收器来接收闹钟,在这里您可以做您的事情。只要设备不重新启动,它就不会消失。如果它确实重新启动,那么您需要检测设备启动并重新设置周期性警报。

话虽如此,如果您的轮询持续时间高达 2 小时,上述方法似乎比 TimerTask 更可靠。 2 小时后,您的应用程序可能甚至无法运行,操作系统很可能会在那时杀死它,因此此代码将无法在这么长的时间内工作。我认为TimerTask方法更适合以秒为单位的轮询持续时间。在您的情况下,您最好使用 AlarmManager 和 RecurringAlarm。

关于java - 在android中每2小时调用一次方法的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23672539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com