天天看点

AlarmManager轮训

1、设置系统时间需要"android.permission.SET_TIME"权限。

2、每当有新的Alarm设置或删除定时服务都会重新计算所属批次,把时间相近的Alarm打包到一个批次里(Batch)一起执行,起到优化电池节省耗电的目的。这就是导致非精确Alarm执行时间存在不确定误差的根本原因。

3、如果想要在低耗电模式下触发闹铃需要通过setAndAllowWhileIdle和setExactAndAllowWhileIdle方法来设置闹铃。

4、如果设置的闹铃时间已经过了,闹铃会被立即触发。这个问题可以通过比较闹铃设置时间和当前时间来解决。

5、根据实际需求选择是否设置精确闹铃以达到优化电池节省耗电的目的。

6、通过设置时区的源码可知,如果想要获取系统时区的相关信息可以通过监听Intent.ACTION_TIMEZONE_CHANGED广播或是直接读取系统属性TIMEZONE_PROPERTY。

作者:peter_RD_nj

链接:https://www.jianshu.com/p/8a2ce9d02640

来源:简书

简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

继续阅读