PIM返回的BlackBerry日历事件列表有时为空

时间:2010-07-14 00:08:55

标签: java events blackberry calendar pim

此问题与BlackBerry SDK上的PIM程序包有关。我需要在同步完成后更新设备上的日历事件。要检查新事件是否真的是新的,我可以打电话:

 EventList eventList = (EventList)PIM.getInstance().openPIMList(PIM.EVENT_LIST, PIM.READ_WRITE);
 Enumeration events = eventList.items(EventList.OCCURRING, Long.MIN_VALUE, Long.MAX_VALUE, true);

之后,我根据这些'事件'列表检查传入的事件。如果在那里找不到传入的事件,我将其添加到BB日历中。这应该可以防止BB日历中的事件重复。问题是这两行有时不能正常工作。这意味着,有时'事件'列表是空的(但BB日历包含那些事件!),这导致BB日历中的事件重复(三重,四重等)。 有没有人有这个问题,如果是的话如何修复它?

1 个答案:

答案 0 :(得分:0)

最后我发现Outlook事件重复的原因是什么。在与全局数据库同步期间,我们根据PIM接口提供的BB事件列表检查传入事件。如果在此列表中找不到传入事件,我们将再次使用PIM接口将其添加到日历中。问题是,如果事件发生的时间超过事件有效期,则BB日历服务会自动从日历中删除它。 “常规日历选项”中有一个名为“保留约会”的设置,默认为60天。我们的想法是在此期间检查传入的事件,如果事件不在日历中,并且“保持”期限已过期,则不再将其添加到日历中。所以,我们需要弄清楚这个“保持约会”设置是什么。我们可以使用PIM或任何其他接口吗?