服务中的计时器与线程睡眠

发布于 2024-12-18 00:32:19 字数 417 浏览 1 评论 0原文

我需要每 15 分钟检查一次提要 RSS 文件,以便更新我的应用程序的结果;我知道我必须实现一项服务,但我想知道应该使用哪种方法来执行此操作;实现计时器是否更好(http://developerlife.com/tutorials/?p=356) 或服务内的线程 (http://www.youtube.com/watch?v=yfWsp9IHX1Y)? 我尝试了第一个教程,但收到错误“无法在 Android 中调用 Looper 准备的线程内创建处理程序”... 我应该怎么办?坚持第一种方法还是尝试另一种方法?

I need to check every 15 minutes a feed RSS file in order to update my application's results; I know I have to implement a service, but I was wondering which approach I should use to do this; is it better to implement a timer (http://developerlife.com/tutorials/?p=356) or a thread inside the service (http://www.youtube.com/watch?v=yfWsp9IHX1Y)?
I tried the first tutorial but I get the error "Can’t create handler inside thread that has not called Looper prepare in Android"...
What should I do? Stay stick with the first method or try the other one?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

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

发布评论

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

评论(1

赢得她心 2024-12-25 00:32:19

您应该使用 PendingIntent 并将其注册到 AlarmManager 将在未来 15 分钟后启动。这样,您的应用程序在警报触发之前不会使用任何资源。

您需要使用启动 Service 的 Intent 来创建 PendingIntent。服务完成后,您需要重新注册 PendingIntent 以便下次执行服务。

You should use a PendingIntent and register it with the AlarmManager to be started 15 minutes in the future. This way your app won't use any ressources until the alarm fires.

You need to use the Intent that starts your Service to create the PendingIntent. After your service finished you need to reregister the PendingIntent for the next execution of your service.

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