我正在构建一个android系统,它将用户日程表的记录记录到本地数据库中,数据将包含日期和时间。 当时间和日期到期时,带有通知的警报将被推送给用户。
我的问题:
我想每秒检查数据库中的时间和日期,并知道它是否到期,然后我会将通知推送给用户。
这是正确的做法,如果不是,请做什么是最好的。感谢
答案 0 :(得分:1)
也许你可以考虑使用android的日历。
Intent intent = new Intent(Intent.ACTION_INSERT_OR_EDIT);
intent.setType("vnd.android.cursor.item/event");
startActivity(intent);
上面的代码片段将调用带有空字段的日历应用程序,并允许用户在添加之前输入事件详细信息。但是,您可以通过以intent extras形式传递详细信息来预填充事件详细信息。 Extras值描述事件详细信息,例如事件开始时间,事件结束时间,事件标题,事件描述等。
以下两个类对于添加事件非常重要。
CalendarContract:定义日历和事件相关信息的数据模型。该数据存储在下面列出的许多表中。 CalendarContract.Events:此表包含特定于事件的信息。此表中的每一行都包含单个事件的信息 - 例如,事件标题,位置,开始时间,结束时间等。该事件可以一次发生或可以多次重复发生。与会者,提醒和扩展属性存储在单独的表中。它们每个都有一个EVENT_ID,它引用了Events表中的_ID。 以下代码包可用于将信息传递给日历意图。
intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, startTime);
intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME,endTime);
intent.putExtra(CalendarContract.EXTRA_EVENT_ALL_DAY, true);
intent.putExtra(Events.TITLE, "Neel Birthday");
intent.putExtra(Events.DESCRIPTION, "This is a sample description");
intent.putExtra(Events.EVENT_LOCATION, "My Guest House");
intent.putExtra(Events.RRULE, "FREQ=YEARLY");
希望这有帮助...