1

我正在为android制作一个闹钟应用程序。一旦用户安排了闹钟,线程将计数,直到到达闹钟,然后会有闹钟声音。

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

这使得一个非常奇怪的警报应用程序。我已经查看了 AlarmManager,但在我的情况下似乎不合适,因为我只希望在我的应用程序仍在运行时发生警报。退出应用程序应该会停止它。不过,AlarmManager 的文档是这样说的:

注意:警报管理器适用于您希望应用程序代码在特定时间运行的情况,即使您的应用程序当前没有运行。对于正常的计时操作(滴答声、超时等),使用 Handler 更容易、更高效。

它提到的“处理程序”类似乎用于与我试图实现的完全不同的东西。

所以我问你:即使设备被锁定,我怎样才能让我的线程保持活力和计数?还是有其他方法?

4

2 回答 2

2

你不必这样做。不要为警报保留线程。使用警报管理器

也没有你的应用程序“运行”与否的概念。你的意思是只有当它可见时?只需在 onPause() 中清除警报即可。

于 2011-01-17T00:20:33.817 回答
0

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

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

吉尔特

于 2011-01-16T22:11:24.257 回答