Iphone @选择器()不工作?youtube API GData问题

Iphone @选择器()不工作?youtube API GData问题,iphone,youtube-api,gdata,Iphone,Youtube Api,Gdata,我正试图将GData/YouTubeAPI整合到我的项目中,但我有点卡住了。我使用了这篇文章中给出的代码: 我的问题是,当GData服务完成从互联网站获取数据时,没有调用函数“request:finishedWithFeed:error:” 我的程序可以编译和运行,并且不会出现运行时错误。我还进行了检查,feedURL返回了一个有效的URL。我对此进行了调试,“服务”确实返回了一个值 GDataServiceGoogleYouTube *service = [self youTubeServi

我正试图将GData/YouTubeAPI整合到我的项目中,但我有点卡住了。我使用了这篇文章中给出的代码:

我的问题是,当GData服务完成从互联网站获取数据时,没有调用函数“request:finishedWithFeed:error:”

我的程序可以编译和运行,并且不会出现运行时错误。我还进行了检查,feedURL返回了一个有效的URL。我对此进行了调试,“服务”确实返回了一个值

GDataServiceGoogleYouTube *service = [self youTubeService];

// feed id for user uploads
NSString *uploadsID = kGDataYouTubeUserFeedIDUploads;
// construct the feed url
NSURL *feedURL = [GDataServiceGoogleYouTube youTubeURLForUserID:USER_NAME userFeedID:uploadsID];

// make API call

[service fetchFeedWithURL:feedURL delegate:self didFinishSelector:@selector(request:finishedWithFeed:error:)];
这是我试图让服务在完成时调用的函数的标题,它与我发布的其他代码位于同一个对象中

- (void)request:(GDataServiceTicket *)ticket finishedWithFeed:(GDataFeedBase *)aFeed error:(NSError *)error;
解决方案--

确保它在主线程上运行--


代码是否在主线程上,并在启动提取后返回到运行循环?回调仅在应用程序的运行循环旋转时发生

-(id)initWithVideosArrayURLString:(NSString*)url {
    if (self = [super init]) {
        NSLog(@"loading");
        [self performSelectorOnMainThread:@selector(initMainThreadWithURLString:)     withObject:url waitUntilDone:NO];

    }
    return self;
}

-(void)initMainThreadWithURLString:(NSString*)url {
    GDataServiceGoogleYouTube *service = [self youTubeService];

    NSString *uploadsID = kGDataYouTubeUserFeedIDUploads;
    NSURL *feedURL = [GDataServiceGoogleYouTube youTubeURLForUserID:@"annoyingorange" userFeedID:uploadsID];
    [service fetchFeedWithURL:feedURL delegate:self   didFinishSelector:@selector(serviceTicket:finishedWithFeed:error:)];
    NSLog(@"sent");
}

- (void)serviceTicket:(GDataServiceTicket *)ticket finishedWithFeed:(GDataFeedBase *)aFeed error:(NSError *)error {
        self.feed = (GDataFeedYouTubeVideo *)aFeed;

    NSLog(@"success.");
}