在 Service 中重新启动 TimerTask 的最佳方法

发布于 2024-11-28 09:35:15 字数 700 浏览 0 评论 0原文

当我更改配置活动中的刷新时间时,我想在我的服务中重新启动我的 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

若无相欠,怎会相见 2024-12-05 09:35:15

不确定“配置活动更改公共静态长 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文