iPhone Gdata-client Youtube查询不起作用

时间:2011-03-07 15:00:28

标签: iphone youtube gdata

我正在玩google的object-c API(Gdata)与youtube进行交互(在我的情况下),但我遇到了问题。我正在尝试使用查询类搜索YouTube视频:

NSURL *feedURL = [GDataServiceGoogleYouTube youTubeURLForFeedID:nil];
    GDataQueryYouTube *query = [GDataQueryYouTube youTubeQueryWithFeedURL:feedURL];


    [query setVideoQuery:@"\"Fred Flintstone\""];

    ticket = [service fetchFeedWithQuery:query
                               delegate:self
                      didFinishSelector:@selector(entryListFetchTicket:finishedWithFeed:)];


    [ticket setShouldFollowNextLinks:NO];

但是当我执行它时,我在consol中有这个错误(甚至没有调用回调的entryListFetchTicket)

  

2011-03-07 13:48:35.625   samsungTV [23061:207] *终止   应用程序由于未捕获的异常   'NSInvalidArgumentException',原因:   “+ [NSInvocation的   invocationWithMethodSignature:]:   方法签名参数不能   零'   * 在第一次投掷时调用堆栈:(0 CoreFoundation
  0x011ddbe9 exceptionPreprocess + 185     1 libobjc.A.dylib
  0x013325c2 objc_exception_throw + 47     2 CoreFoundation
  0x0114db09 + [NSInvocation   invocationWithMethodSignature:] + 553     3三星电视
  0x00018d34 + [GDataServiceBase   invokeCallback:目标:票:对象:错误:]   + 83 4 samsungTV 0x000184a5 - [GDataServiceBase   handleParsedObjectForFetcher:] + 840     5基金会   0x003709a6 __NSThreadPerformPerform +   251 6 CoreFoundation
  0x011bf01f   __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION
  + 15 7 CoreFoundation 0x0111d28b __CFRunLoopDoSources0 + 571     8 CoreFoundation
  0x0111c786 __CFRunLoopRun + 470 9
  的CoreFoundation
  0x0111c240 CFRunLoopRunSpecific + 208     10 CoreFoundation
  0x0111c161 CFRunLoopRunInMode + 97 11   GraphicsServices
  0x018f9268 GSEventRunModal + 217 12   GraphicsServices
  0x018f932d GSEventRun + 115 13 UIKit   0x0060042e UIApplicationMain + 1160     14三星电视   0x00002964 main + 102 15 samsungTV
  0x000028f5 start + 53)终止   抛出一个实例后调用   'NSException'计划收到信号:   “SIGABRT”。

我不知道为什么......

但如果我使用饲料,那么在其他方面它可以运作......

NSURL *feedURL;
    feedURL = [GDataServiceGoogleYouTube youTubeURLForFeedID:kGDataYouTubeFeedIDMostPopular];


    ticket = [service fetchFeedWithURL:feedURL
                              delegate:self
                     didFinishSelector:@selector(entryListFetchTicket:finishedWithFeed:error:)];


    [ticket setShouldFollowNextLinks:NO]

somebdoy可以帮我一把吗?

由于

2 个答案:

答案 0 :(得分:0)

您是否在类中定义了一个方法entryListFetchTicket:finishedWithFeed:,并将其用作委托对象?

答案 1 :(得分:0)

GData提取的回调有三个参数,而不是两个。第一个代码片段错过了错误:在选择器的末尾。

确保为调试版本定义DEBUG = 1;图书馆将抓住这些问题。