在android中观察日期

时间:2010-12-17 14:11:48

标签: android date contentobserver

是否可以观察日期(例如,像ContentObserver),以便每次日期更改(因为时间已过或用户手动更改),某些代码会被执行?

修改
我需要它的原因如下:我有一个由游标支持的列表。游标是包含谓词date >= strftime('%Y-%m-%d','now')的SQLite语句的结果。因此,如果日期发生变化,则必须从列表中删除一些列表项(这显然会在调用光标上的requery()后发生。)

2 个答案:

答案 0 :(得分:1)

我建议使用Timer类。

应用启动后, 1)计算到第二天睡觉所需的时间 2)启动计时器以“唤醒”,
3)一旦计时器结束,启动另一个计时器24小时后唤醒 4)执行您想要运行的代码 5)重复步骤3.

答案 1 :(得分:1)

只要您的应用恢复,只需重新查询?这将确保始终查询当前日期,因为他们无法在不暂停您的应用程序的情况下更改日期。另外需要注意的是,这似乎是一个真正的边缘情况。用户多久更改一次日期(而不仅仅是时间,因为您只是比较m,d,y)?