我正在尝试在android中制作一个提醒应用程序。我已经编写了代码来存储提醒的日期和时间信息以及提醒标题。现在我想在适当的时间通知用户我正在计划的提醒使用可以跟踪系统当前时间和存储在数据库中的时间的服务。我对如何执行此操作感到困惑。任何人都可以提出一些建议。
我能想到的唯一方法是检索剩余表中的所有行并不断保持系统时间以检查它是否与检索到的行数据中指定的任何行匹配。(但我想这会非常效率低下)
我正在尝试在android中制作一个提醒应用程序。我已经编写了代码来存储提醒的日期和时间信息以及提醒标题。现在我想在适当的时间通知用户我正在计划的提醒使用可以跟踪系统当前时间和存储在数据库中的时间的服务。我对如何执行此操作感到困惑。任何人都可以提出一些建议。
我能想到的唯一方法是检索剩余表中的所有行并不断保持系统时间以检查它是否与检索到的行数据中指定的任何行匹配。(但我想这会非常效率低下)
您应该使用AlarmManager。你可以检查这个问题或谷歌教程。
您应该使用 AlarmManager 来触发事件。您不应该尝试自己重新创建此机制(听起来您打算这样做)。
AlarmManager 将触发服务在特定时间或间隔执行某些操作:
这是一个很好的 SO 示例: How to start Service using Alarm Manager in Android?
您可以传递一个带有您意图的 Extra 来保留一个触发通知的句柄。就像在这个 SO 问题中一样:
stackoverflow.com/questions/15731259/how-to-use-requestcode-in-pendingintents