我试图从谷歌日历APIiOS应用程序的生日。现在我可以从谷歌日历获取事件。
- (void)fetchEvents {
GTLQueryCalendar *query = [GTLQueryCalendar queryForEventsListWithCalendarId:@"primary"];
query.maxResults = 10;
query.timeMin = [GTLDateTime dateTimeWithDate:[NSDate date]
timeZone:[NSTimeZone localTimeZone]];;
query.singleEvents = YES;
query.orderBy = kGTLCalendarOrderByStartTime;
[self.service executeQuery:query
delegate:self
didFinishSelector:@selector(displayResultWithTicket:finishedWithObject:error:)];}
- (void)displayResultWithTicket:(GTLServiceTicket *)ticket
finishedWithObject:(GTLCalendarEvents *)events
error:(NSError *)error {
if (error == nil) {
NSMutableString *eventString = [[NSMutableString alloc] init];
if (events.items.count > 0) {
for (GTLCalendarEvent *event in events) {
GTLDateTime *start = event.start.dateTime ?: event.start.date;
NSString *startString =
[NSDateFormatter localizedStringFromDate:[start date]
dateStyle:NSDateFormatterShortStyle
timeStyle:NSDateFormatterShortStyle];
[eventString appendFormat:@"\n %@\n %@\n\n%@\n", event.summary, startString, event.descriptionProperty];
}
} else {
[eventString appendString:@"No upcoming events found."];
}
NSLog(@"eventString %@",eventString);
} else {
[self showAlert:@"Error" message:error.localizedDescription];
}
}
如何从谷歌日历API获取生日iOS。我通过这个留档谷歌日历API:https://developers.google.com/google-apps/calendar/quickstart/ios
可以从google日历中获取所有生日,而无需复制到日历中
获取生日日历ID从谷歌。
>
使用该日历id获取事件
You can also get Calendar id through Google API
https://developers.google.com/google-apps/calendar/v3/reference/calendarList/list
对于iOS,请检查下面的代码
let query = GTLRCalendarQuery_EventsList.queryWithCalendarId("calendar id")
service.executeQuery(
query,
delegate: self,
didFinishSelector: #selector(displayResultWithTicket(_: finishedWithObject:error:)))
委托方法
func displayResultWithTicket(
ticket: GTLRServiceTicket,
finishedWithObject response : GTLRCalendar_Events,
error : NSError?) {
}
它对我有用
谢谢。
我以前做过这个,这就是我发现的。虽然默认情况下存在,但生日事件没有有效的“EventID”,看起来像2016年的生日(今年),所以当您使用events:list获取它时,不会返回任何内容。您必须首先添加它:
在您的谷歌日历上:
现在,重复的生日事件被添加到您的日历中,但这一次,它有一个有效的事件ID。因此,当您使用Events: list进行另一个调用时,它会返回事件。
如何在iOS做到这一点?
URI请求:
GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events
您可以使用NSURLConnection:
// Create the request.
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://google.com"]];
// Create url connection and fire request
NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self];
使用People API获取生日:
1.勾选“显示出生年份”,在谷歌基本信息中将您的生日设置为公开
使用人员API URI请求:
收到https://www.googleapis.com/plus/v1/people/userId
使用“立即试用”来测试参数:
userId -> me
fields -> birthday
Authorize and Execute.
我有一个python脚本,它将我的一些约会同步到两个不同的谷歌账户,两个账户都有一个谷歌日历,显然设置相同(时区设置也相同),在调用下载约会列表的时候然而,在日历上,调用返回具有不同日期格式的约会,具体取决于我要查询的日历。 使用的库是google开发的库(使用的Python版本是3.6) 脚本(在两种情况下都在同一台计算机上运行)如下所示: 我想这是一些关于日历配置的问题,但是我在设置中没有找到
在使用GoogleCalendarAPI(与python一起使用)时,我已经能够获得我想要的变量,因此我可以将事件导出到文本文件中。然而,一个变量(位置)触发了一个错误,我不知道为什么。 这直接来自google的开始代码,我还添加了我想要的变量: 它会打印一个即将到来的约会列表,包括地点,但它会停止并向我抛出这个错误 这是凭据/json的问题吗?我使用的是谷歌日历api的旧版本吗?我怎么检查?我的
谷歌日历API…/auth/Calendar查看、编辑、共享和永久删除您可以使用谷歌日历访问的所有日历 谷歌日历API…/auth/Calendar。acls查看并更改您拥有的Google日历的共享权限 谷歌日历API…/auth/Calendar。事件查看和编辑所有日历上的事件 CalendarQuickstart或CalendarReader很好,它们从日历中读取,但:当我尝试写入日历时,我得
我想知道我是否需要Google java客户端库才能从GAE访问我的Google日历。默认情况下,它们是Google App Engine SDK的一部分吗? 此外,我找不到一个很好的示例或教程来展示如何从Google Cloud Platform应用程序创建、读取、更新和删除Google日历事件。 非常感谢,如果您可以提供相同的代码示例或链接到适当的工作教程。
我有一个应用程序使用s2s与谷歌日历API的连接。我需要在不同的用户日历中创建事件。若要使之成为可能,用户应转到日历的设置并将其日历共享到服务帐户。但我想为用户简化这一点 - 这样他们就不需要去他们的日历设置。我没有用于用户交互的界面 - 这是一个机器人。如何以其他方式访问用户的日历?
我希望我的应用在用户的 Google 日历上添加/删除/更新事件。应用只需删除和更新应用本身已添加的事件。 我是否正确地理解了这一点,为了使其正常工作,用户必须向应用程序授予对其Google日历的完全访问权限,这意味着该应用程序可能会读取和删除任何日历上的私人事件? 或者,有没有办法限制用户对应用程序的访问权限,例如,允许应用程序创建单个日历,只允许它访问该日历上的事件? 我已经通读了相关的谷歌日