android - 在android中以固定速率安排java定时器间隔后如何修改它?

标签 android service timer

<分区>

我的服务有一个定时器。我在 onStart() 回调方法中调用了 timer.scheduleAtFixedRate()。但是我必须根据变量的值来改变定时器间隔。我发现定时器没有改变其间隔的功能。所以我想取消计时器并在满足该条件时重新安排。但我正在 timerTask 本身检查条件。因此,当我尝试取消 TimerTask 中的计时器时,它会抛出 IllegalStateException。谁能给我一些解决方案?

最佳答案

一个定时器只能被调度一次。如果在您调用 cancel() 时 IllegalStateException 没有发生,但是当您尝试重新安排计时器时,只需重新实例化计时器然后安排它。否则,我不确定。

关于android - 在android中以固定速率安排java定时器间隔后如何修改它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7593134/

相关文章:

android - 如何修改android中的最后一次通话记录

android - android中的视频录制错误

docker - 在 docker 上启用实时恢复并不能保持容器存活

java - 如果我想代理所有服务调用,以便在不显式调用记录器的情况下正确记录它们,我有什么选择?

android - 手机关机时会调用onDestroy吗?

iOS 应用程序秒表和计时器在后台停止计数

c# - Xamarin Android C# 计时器错误

c# - 在特定时间执行功能

android - 实现滑动以刷新布局后,回收站 View 无法正确滚动

android - Android 的 Kiosk 模式