我正在构建一个需要在特定日期和时间执行操作的应用程序,并在执行此任务前一小时发出通知。
我搜索过并发现Alarm Manager类可以用于此目的,但我不知道如何使用它。此外,如果将来关闭并重新打开应用程序,取消或编辑它。
我创建了一个SQlite数据库,用于存储信息以及事件发生的日期和时间。
由于
答案 0 :(得分:2)
Google提供了"Scheduler" code sample,可以满足您的需求:在给定时间显示通知。此示例还说明了如何取消警报。
编辑:我刚看过示例代码并且你是对的,该示例没有解释在关闭并重新打开应用程序后如何获取PendingIntent。如果PendingIntent不存在,则以下代码创建PendingIntent,如果它已经存在,则返回现有的PendingIntent,这要归功于FLAG_UPDATE_CURRENT。因此,您不必关心警报是否已经启动:只需获取待处理的意图,然后取消它。
monetize :price_cents
before_save :dollars_to_cents
def dollars_to_cents
#convert dollar to cents
self.price_cents = self.price_cents * 100
end