Android闹钟 AlarmManager的使用
Android闹钟 AlarmManager的使用 AlarmManager介绍 AlarmManager 这个类提供对系统闹钟服务的访问接口。 你可以为你的应用设定一个在未来某个时间唤醒的功能。 当闹钟响起,实际上是 系统发出了为这个闹钟注册的广播 ,会自动开启目标应用。 注册的闹钟在设备睡眠的时候仍然会保留,可以选择性地设置是否唤醒设备,但是 当设备关机和重启后,闹钟将会被清除 。 在alarm的receiver的 onReceive() 方法被执行的时候,Alarm Manager持有一个 CPU唤醒锁 ,这样就保证了设备在处理完广播之前不会sleep。 一旦onReceive()方法返回,Alarm Manager就会释放这个锁,表明一些情况下可能onReceive()方法一执行完设备就会sleep。 如果你的alarm receiver中调用了 Context.startService() ,那么很可能service还没起来设备就sleep了。 为了阻止这种情况,你的BroadcastReceiver和Service需要实现不同的唤醒锁机制,来确保设备持续运行到service可用为止。 注意 :Alarm Manager主要是用来在特定时刻运行你的代码,即便是你的应用在那个特定时刻没有跑的情况。 对于常规的计时操作(ticks