在 Service 中重新启动 TimerTask 的最佳方法
当我更改配置活动中的刷新时间时,我想在我的服务中重新启动我的 TimerTask。
配置 Activity 更改 public static long UPDATE_INTERVAL
你有什么想法吗?
public void onStart(Intent intent, int startId) {
// init the service here
try {
if (prefs.getString("oauth_token_secret", null) != null) {
_startService();
}
} catch (Exception e) {
Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
}
}
private void _startService() {
timer.scheduleAtFixedRate(
new TimerTask() {
public void run() {
//doing things
}
}, 0, UPDATE_INTERVAL);
}
到目前为止谢谢。 斯特凡
i would like to restart my TimerTask in my Service when i changed the refresh time in the config Activity.
The config Activity changes the public static long UPDATE_INTERVAL
Have you some ideas for me?
public void onStart(Intent intent, int startId) {
// init the service here
try {
if (prefs.getString("oauth_token_secret", null) != null) {
_startService();
}
} catch (Exception e) {
Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
}
}
private void _startService() {
timer.scheduleAtFixedRate(
new TimerTask() {
public void run() {
//doing things
}
}, 0, UPDATE_INTERVAL);
}
Thanks so far.
Stefan
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不确定“配置活动更改公共静态长 UPDATE_INTERVAL”是什么意思,但您可以更新运行代码中的间隔时间,它将在下次运行 TimerTask 时生效。或者,如果您的 Activity 位于单独的类中,您可以为 UPDATE_INTERVAL 创建一个设置器,并且当在 Activity 中触发操作时,您可以通过这种方式设置时间间隔。
Not sure what you mean by "The config Activity changes the public static long UPDATE_INTERVAL", but you can update the interval timing in your run code and it will take effect the next time the TimerTask is run. Or if your Activity is in a seperate class you can create a setter for UPDATE_INTERVAL and when an action is triggered in the Activity you set the timing interval that way.