AlarmManager-闹钟服务

2017-10-20  本文已影响122人  铸剑先生Joe

AlarmManager-闹钟服务

AlarmManager简介

在特定的时刻为我们广播一个指定的Intent,简单来说就是我们自己定一个时间,然后到时间时,
AlarmManager会为我们广播一个我们设定好的Intent,比如指向某个Activity或者Service。

获得AlarmManager实例

AlarmManager alarmManager = (AlarmManager) context.getSystemService(ALARM_SERVICE);

AlarmManager常用方法解析

  • set(int type,long startTime,PendingIntent pi):一次性闹钟

关键参数解析

  • Type(闹钟类型):
    有五个可选值:
    AlarmManager.ELAPSED_REALTIME:
    闹钟在手机睡眠状态下不可用,该状态下闹钟使用相对时间(相对于系统启动开始),状态值为3;
    AlarmManager.ELAPSED_REALTIME_WAKEUP:
    闹钟在睡眠状态下会唤醒系统并执行提示功能,该状态下闹钟也使用相对时间,状态值为2;
    AlarmManager. RTC
    闹钟在睡眠状态下不可用,该状态下闹钟使用绝对时间,即当前系统时间,状态值为1;
    AlarmManager.RTC_WAKEUP
    表示闹钟在睡眠状态下会唤醒系统并执行提示功能,该状态下闹钟使用绝对时间,状态值为0;
    AlarmManager.POWER_OFF_WAKEUP
    表示闹钟在手机关机状态下也能正常进行提示功能,所以是5个状态中用的最多的状态之一,该状态下闹钟也是用绝对时间,状态值为4;不过本状态好像受SDK版本影响,某些版本并不支持;
上一篇下一篇

猜你喜欢

热点阅读