我正在编写一个简单的Android小部件,它显示每天都在变化的信息。因此,小部件需要在午夜刷新。整个刷新是作为服务实现的,并且运行良好,问题是调用:
我找到的唯一解决方案是使用AlarmManager
在每天的午夜添加一个确切的重复计时器。然后获取部分唤醒锁,以确保设备保持清醒并运行代码。这应该按预期工作,但由于唤醒锁的使用,我正在唤醒设备,所以我正在寻找更苗条的版本:
没有必要在正午夜唤醒设备,如果我在新的一天第一次再次启动设备时收到定时器事件就足够了。如果设备处于休眠状态,则没有人可以查看窗口小部件,因此,只要设备再次打开,窗口小部件就会更新。
换句话说:如何在设备未休眠的一天中的第一时刻运行服务,从而防止唤醒?我仍然需要让设备保持清醒而不是一段时间。
这个二人怎么办?
答案 0 :(得分:0)
您可以告诉AlarmManager延迟调用,直到设备唤醒为止。 然后不要在。
中使用WakeLock