使用Java将事件添加到特定的Google日历

时间:2011-03-08 05:39:33

标签: java events google-calendar-api

我已经搜索了所有内容,我发现了添加事件的点点滴滴,无论是.net还是php,而不是java。

那么如何将事件添加到由您的程序创建的Google日历中。

继承我所拥有的 我有 CalendarEntry日历,从我创建日历时返回。 条目条目,是要在我创建的日历中插入的有效事件。 CalendarService服务,这是一种有效的日历服务。

因此,基于日历变量,我想生成一个url,通过调用

来插入事件
service.insert(url, entry);

3 个答案:

答案 0 :(得分:2)

我碰巧在这里找到答案http://www.danwalmsley.com/2008/09/23/free-sms-service-notifications-using-google-calendar/

String postUrlString = calendarEntry.getLink(“alternate”,“application / atom + xml”)。getHref();

似乎工作!

答案 1 :(得分:1)

来自doc

URL postURL = new URL("http://www.google.com/calendar/feeds/root@gmail.com/private/full");
CalendarEventEntry myEvent = new CalendarEventEntry();

//Set the title and description
myEvent.setTitle(new PlainTextConstruct("Pi Day Party"));
myEvent.setContent(new PlainTextConstruct("I am throwing a Pi Day Party!"));

//Create DateTime events and create a When object to hold them, then add 
//the When event to the event
DateTime startTime = DateTime.parseDateTime("2007-03-14T15:00:00-08:00");
DateTime endTime = DateTime.parseDateTime("2007-03-14T17:00:00-08:00");
When eventTimes = new When();
eventTimes.setStartTime(startTime);
eventTimes.setEndTime(endTime);
myEvent.addTime(eventTimes);

// POST the request and receive the response:
CalendarEventEntry insertedEntry = myService.insert(postURL, myEvent);

如果您已经有CalendarEntry(未经测试):

/* CalendarEntry calendar = ...;  CalendarEventEntry myEvent = ... */
Service myService = calendar.getService();
myService.insert(new URL(calendar.getEditLink().getHref()), yourEvent)

答案 2 :(得分:0)

您可以使用Google的Data API创建活动。您可以从here下载Java库。 Developer's guide可以帮助您开始使用该库。

此处有关于创建活动的文档:http://code.google.com/apis/calendar/data/2.0/developers_guide_java.html#CreatingEvents