我正在使用以下代码:
String selection = "((dtstart >= " + now
+ ") AND (dtend <= " + endTime.getTimeInMillis() + "))";
Cursor cursor = context.getContentResolver()
.query(Uri.*parse*("content://com.android.calendar/events"),
*PROJECTION*, selection,null, null);
我注意到一旦我添加/删除Event
到设备上的 Google 日历应用程序并立即运行上述代码,有时我无法从Cursor
。我必须手动刷新 Google 日历应用程序才能获取最新数据。
我错过了什么吗?我可以使用其他一些 API 吗?
Thanks!
你是对的。由于某些原因,无论是错误还是“功能” - Google 日历提供商在过去 4-5 个月内不会通过 CalendarContract 公开更改,直到与服务器同步后。
以前不是这样的,所有更改都可以通过 CalendarContract 立即用于第 3 方应用程序 - 现在只有在同步之后。这很烦人...你永远不知道你是否有新数据,除非你在 Google 日历应用程序中手动执行同步(或者你可以等到自动同步触发 - 这可能在几秒、几分钟或几小时内,它不在你的手)。
如此愚蠢、愚蠢的改变。经典的谷歌。他们已经搞砸了很多事情,这只是另一件事。它们只会让开发人员的生活变得复杂。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)