AlarmManager定时器(记录)

AlarmManager.set 三个参数详解
第一个参数是一个整型参数,用于指定AlarmManager 的工作类型,有四种值可选,分别是
ELAPSED_REALTIME、ELAPSED_REALTIME_WAKEUP、RTC 和RTC_WAKEUP。
其中:
ELAPSED_REALTIME 表示让定时任务的触发时间从系统开机开始算起,但不会唤醒CPU。
ELAPSED_REALTIME_WAKEUP 同样表示让定时任务的触发时间从系统开机开始算起,但会唤醒CPU。
RTC 表示让定时任务的触发时间从1970 年1月1 日0 点开始算起,但不会唤醒CPU。
RTC_WAKEUP 同样表示让定时任务的触发时间从1970 年1 月1 日0 点开始算起,但会唤醒CPU。

使用SystemClock.elapsedRealtime()方法可以获取到系统开机至今所经历时间的毫秒数
使用System.currentTimeMillis()方法可以获取到1970 年1 月1 日0 点至今所经历时间的毫秒数。

然后看一下第二个参数,这个参数就好理解多了,就是定时任务触发的时间,以毫秒为单位。
如果第一个参数使用的是ELAPSED_REALTIME 或ELAPSED_REALTIME_WAKEUP,
则这里传入开机至今的时间再加上延迟执行的时间。
如果第一个参数使用的是RTC 或RTC_WAKEUP,
则这里传入1970 年1 月1 日0 点至今的时间再加上延迟执行的时间。

第三个参数是一个PendingIntent,就不详细解释了。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容