查询Android日历甚至检索已删除的事件

时间:2013-03-20 10:02:32

标签: android events calendar

我使用下面提到的代码从android的本机日历应用程序中保存的所有日历中检索所有事件。现在,如果我从本机日历中删除某个事件,我的代码仍会提取并显示该事件。这怎么可能。它是否设置了一些删除标志而不是实际删除事件。

Cursor cursor = cr.query(Uri.parse("content://com.android.calendar/events"),
                    projection, selection, selectionArgs, null);

1 个答案:

答案 0 :(得分:6)

请检查是否设置了'DELETED'标志

或者您也可以尝试在SELECTION中包含以下内容

AND (deleted != 1)

所以选择字符串变为,

String selection = "( ("+ "title" + " LIKE '"+name+"') AND ( deleted != 1 ) )";

有时,CalendarDB需要一些时间才能删除事件。但“已删除”的列将标记为“1”,表示它们很快就会被删除。延迟的原因可能是日历等待同步

p.s:尝试使用此工具 - http://www.cellobject.net/Tools/CellObjectSQLiteXMLBrowser.aspx可视化日历数据库。请检查db

中的“已删除”和“脏”列