我创建了一个Android应用程序,可以将事件添加到我的任何谷歌日历中 . 它工作到目前为止,但我创建的事件只在我的本地日历应用程序中可见,而不是在网络上 . 这是我用来插入事件的代码:
ContentResolver contentResolver = getContentResolver();
for (Date date : getDates()) {
ContentValues values = new ContentValues();
values.put(Events.CALENDAR_ID, calendar.getId());
values.put(Events.TITLE, type.getName());
values.put(Events.DTSTART, buildStartDate(date));
values.put(Events.DTEND, buildEndDate(date));
values.put(Events.ALL_DAY, 0);
values.put(Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());
Uri event = contentResolver.insert(
CalendarContract.Events.CONTENT_URI, values);
Toast.makeText(getApplicationContext(),
"Inserted event: " + event.toString(),
Toast.LENGTH_LONG).show();
}
caledar.getId()
返回我之前选择的日历的ID . buildStartDate
和 buildEndDate
创建开始日期和结束日期,并以毫秒为单位返回 . type.getName()
只返回一个用作 Headers 的字符串 .
有谁知道为什么事件只显示在我的本地日历应用程序中?当我使用日历应用程序插入新事件时,它会同步到Web,因此同步确实有效 .
1 回答
我看不到你的
SyncAdapter
. 这是必需的 . 以下代码可以帮助您 .}
见link和this .
谢谢!