use*_*977 2 java android clock
我正在制作的小部件中有一个时钟,我希望它每分钟与系统时钟同步更新。ACTION_TIME_TICK 似乎是完美的解决方案,但我的大部分研究表明这在 AppWidget 中是不可能的,而其他人则说有解决方法,但它们非常模糊。
我不想做 AlarmManager,因为我必须非常频繁地更新,以确保它在系统时钟改变分钟时改变分钟,这会消耗更多的电池。
ACTION_TIME_TICK 是否有解决方法,或者以最小的电池消耗与系统时钟同步更新每分钟的最佳方法是什么?
ACTION_TIME_TICK 有解决方法吗
ACTION_TIME_TICK只能通过registerReceiver()已经运行的程序进行注册。在你的情况下,“某事”需要是一个不断运行的Service,这通常是一种反模式。用户和操作系统可以在需要时删除该服务。
我会找到一种方法来稍微放松“与系统时钟同步”的要求,然后使用AlarmManager. 毕竟,Android 不是 RTOS,因此在任何有保证的意义上都不会“与系统时钟同步”。
使用AlarmManager,您可以将第一个警报指定为下一分钟的“顶部”,持续时间为 60 秒,并且setRepeating()。或者,您可以set()安排下一分钟的“顶部”,然后安排下一个通过set()作为您自己处理的一部分,如果您认为这样可以更好地手动纠正漂移。
| 归档时间: |
|
| 查看次数: |
2034 次 |
| 最近记录: |