2011-05-30 61 views
1

嗨 我开发一个应用程序中,我使用AlarmManager如何获得它在关机之间传递给移动

问题交换报警的通知

当我设置使用警报管理未决意向其工作正常 但假设我设置闹钟时间日期30-05-2011和时间10:00 AM,并假设当前时间是日期30-05-2011和时间09:50上午 和现在创建后待定意图我关掉了我的设备,并在上午10点01分我开始我的设备 在那个时候我希望通知上午10:00报警,但我n OT得到它 任何想法如何,我可以得到通知的开关后,我的手机

回答

2

通过AlarmManager,你只能唤醒你的设备时,它正在睡觉。

要做到这一点使用 setRepeating(整型,长triggerAtTime,间隔长,操作的PendingIntent) 或设置(...)

与RTC_WAKEUP或ELAPSED_REALTIME_WAKEUP

但它不工作一个设备关闭。 因此,您应该考虑在数据库中存储警报,以及上次启动应用程序的时间,并计算自上次启动以来错过的警报。

问候, 斯特凡

+0

你的主意很好,谢谢 – Dharmendra 2011-05-30 08:10:29

1

如果你读了AlarmManager API文档页:

而设备是睡着了

已注册的警报被保留(并可任选唤醒装置如果在此期间熄灭),但是如果它被关闭并重新启动将被清除。

作为替代方案,您可以注册意向android.intent.action.BOOT_COMPLETED的广播接收器,并检查您的SharedPreferences是否需要执行操作。

请参阅有关广​​播的详细信息这个问题:Trying to start a service on boot on Android

+0

有没有什么办法让这些设备上冒充时间启动通知? – Dharmendra 2011-05-30 05:16:31

+0

不可以。正如我上面所说的那样。该应用程序收到电话启动的通知,然后应用程序本身必须检查状态。使用SharedPreferences可以轻松完成。 – Aleadam 2011-05-30 05:21:21