Android:即使设备被锁定,也要保持线程运行

时间:2011-01-16 20:41:25

标签: android alarm

我正在为Android制作一个警报应用程序。一旦用户安排了警报,线程将计数直到达到警报,然后会发出警报声。

然而,当设备被锁定时,计数线程停止(我的意思是当屏幕在半分钟后关闭时)并且如果它再次解锁则从它离开的地方继续 - 即使这是几小时后。

这是一个非常奇怪的警报应用程序。我已经研究过AlarmManager,但在我看来这似乎并不合适,因为我只希望闹钟发生如果我的应用程序仍在运行。退出应用程序应该停止它。以下是AlarmManager的文档所说的内容:

  

注意:警报管理器是预期的   如果你想拥有你的   应用程序代码运行在特定的   时间,即使你的申请没有   目前正在运行正常时间   操作(滴答,超时等)   更简单,更有效率   使用Handler。

它提到的“处理程序”类似乎是为了与我想要实现的完全不同的东西。

所以我问你:即使设备被锁定,我如何保持线程活着并计数?或者还有另一种方式吗?

2 个答案:

答案 0 :(得分:2)

你不必不这样做。不要留下线程报警。使用AlarmManager

此外,您的应用程序没有“正在运行”的概念。你的意思是只有当它可见时?只需清除onPause()中的闹钟即可。

答案 1 :(得分:0)

为什么不使用通知?您可以在状态栏中设置声音,振动,灯光和显示图标。如果要取消通知,请使用NotificationManager。

http://developer.android.com/guide/topics/ui/notifiers/notifications.html#CreateANotification

Geert