我正在尝试添加将YouTube中的某些视频观看到我正在创建的iOS应用中的功能.我有一个来自Google的API密钥,并且已根据评论提示从开发者控制台启用了YouTube API.这不是问题.
我有一个非常简单的方法,从它的ID收集特定YouTube频道的详细信息,然后我将用它来查找所有频道上传的视频.我遇到的问题是它说我的Access没有配置.以下是我所做的一切:
获取信息的方法(显然我没有包含我的密钥或通道ID):
- (void)collectChannelData { GTLServiceYouTube *service = [[GTLServiceYouTube alloc] init]; service.APIKey = @"API_KEY"; GTLQueryYouTube *query = [GTLQueryYouTube queryForChannelsListWithPart:@"contentDetails"]; query.channelId = @"CHANNEL_ID"; GTLServiceTicket *ticket = [service executeQuery:query completionHandler:^(GTLServiceTicket *ticket, id object, NSError *error) { if (!error) { GTLYouTubeChannelListResponse *channelItem = object; NSLog(@"%@", channelItem); } else { NSLog(@"%@", error); } }]; }
我确保已在Google Developer Console中启用了YouTube Data API v3,并且Bundle Identifier与我的Info.plist中的内容相匹配
我收到的错误消息是:
错误域= com.google.GTLJSONRPCErrorDomain代码= 403"无法完成操作.(未配置访问.请使用Google Developers Console激活项目的API.)"UserInfo = 0xa3aa0e0 {error = Access Not Configured.请使用Google Developers Console激活项目的API.,GTLStructuredError = GTLErrorObject 0x8a74630:{message:"Access Not Configured.请使用Google Developers Console激活项目的API." 代码:403 data:[1]},NSLocalizedFailureReason =(访问未配置.请使用Google Developers Console激活项目的API.)}
我找不到任何理由说这不起作用.我认为我是正确的,因为我不需要为此特定请求设置结算帐户或需要oAuth.我还可以在Developer Console上的应用程序概述中看到已收到多个请求,但每个请求都有错误.我只是想不通为什么它会拒绝它.
谢谢你的帮助.
Bundle标识符存在已知问题,请暂时省略,它应该可以正常工作.
您可以在此处跟踪问题:https://code.google.com/p/gdata-issues/issues/detail?id = 5770