CalendarProvider在长时间查询实例表后停止插入重复实例

时间:2016-04-05 07:00:39

标签: android calendar google-calendar-api android-contentprovider android-calendar

我在Google日历中创建了一个名为" Rec1"。

的重复事件

然后在示例应用程序中查询实例表:

GregorianCalendar c = new GregorianCalendar(2000, 1, 1);
GregorianCalendar c2 = new GregorianCalendar(2050, 1, 1);
Uri.Builder builder = CalendarContract.Instances.CONTENT_URI.buildUpon();
ContentUris.appendId(builder,c.getTimeInMillis());
ContentUris.appendId(builder,c2.getTimeInMillis());
Cursor cursor2=getContentResolver().query(builder.build(),null,null,null,null);

然后我返回谷歌日历并创建一个名为" Rec2"的新重复事件。该事件已成功创建,但未显示任何内容!我查询Events表并查看" Rec2"已创建,但如果我查询Instances表,则最后一行是" Rec1"。

即使我卸载了示例应用,也无法再插入重复事件。无论我使用什么日历应用程序(Google日历,日出,在代码中动态创建事件,......),无论我使用什么日历(谷歌,交换,本地创建的日历......)。

似乎CalendarProvider不再为重复事件生成实例。 (插入非重复事件仍然没问题,只是重现是问题)。

我发现恢复正常生活的唯一解决方案是删除另一个重复事件。所以如果我删除" Rec1"," Rec2"插入Instance表格并显示在日历应用程序中!

注意:如果我重复整个方案但是在这个时间段内:

GregorianCalendar c = new GregorianCalendar(2016, 4, 1);
GregorianCalendar c2 = new GregorianCalendar(2016, 5, 1);

没有问题发生," Rec2"插入并显示,无需删除" Rec1"。

注意:我多次尝试此方案,问题出现在仿真器,Nexus 5,Nexus 5x,Sony z1 compact中,但不在Samsung Note 4中!

谢谢

0 个答案:

没有答案