您好 我正在开发一个应用程序,我正在使用AlarmManager
当我在特定的日期和时间使用警报管理器设置待处理的意图时,它的工作正常 但是假设我在30-05-2011和上午10:00设置闹钟时间,并假设当前时间是30-05-2011日期和时间09:50 AM 现在在创建待定意图后我关闭了我的设备,并在上午10:01之后我启动了我的设备 那时我希望通知上午10:00报警,但我没有得到它 知道如何在启动手机后获得通知
答案 0 :(得分:2)
通过AlarmManager,您只能在设备休眠时唤醒它。
要做到这一点 setRepeating(int type,long triggerAtTime,long interval,PendingIntent operation) 或设置(...)
使用RTC_WAKEUP或ELAPSED_REALTIME_WAKEUP
但它不能用于关闭设备。 因此,您应该考虑在数据库中显示警报,以及上次启动应用程序,并计算自上次启动以来错过的警报。
此致 斯特凡
答案 1 :(得分:1)
如果您阅读了AlarmManager API文档页面:
当设备处于睡眠状态时,会保留已注册的警报(如果设备在此期间关闭,则可以选择将设备唤醒),但如果设备关闭并重新启动,则会被清除。
作为替代方案,您可以为意图android.intent.action.BOOT_COMPLETED
注册广播接收器,并在需要执行操作时检查您的SharedPreferences。
有关广播的详细信息,请参阅此问题:Trying to start a service on boot on Android