1. AndroidAlarm
1.1 简介
Alarm是android提供的定时器类,和Timer不同,使用Alarm可以在应用的生命周期之外定时触发特定操作。
1.2 构成要素
一个Alarm由以下4个要素构成:
(1)time type
Alarm有两种最基本类型,“elapsed real time”和“real time clock”,前者使用系统启动时的时间作为时间起点,后者使用UTC时间(
1970
年
1
月
1
日
0
时
)作为时间起点。所以“elapsedreal time”适用于间隔多长时间去触发一次操作,“real time clock”适用于在指定日期、时间(对时区敏感)去触发操作。
两种基本类型都扩展出了wakeup类型,wakeup类型的alarm触发时如果屏幕处在熄灭状态,cpu将会被唤醒。如果不使用wakeup类型,alarm将会在下次设备被唤醒时触发。
上述四种alarm类型标识如下:
ELAPSED_REALTIME
、
ELAPSED_REALTIME_WAKEUP
、
RTC
、
RTC_WAKEUP
。
(2)trigger time
触发时间,是从时间起点开始计算的毫秒数。
(3)interval (仅repeatingalarm需要)
间隔时间,单位为毫秒
(4)pendingintent
Pending intent 不仅用于指明Alarm触发后将要执行的操作