iPhone Gdata-клиент Youtube запрос не работает - PullRequest
0 голосов
/ 07 марта 2011

Я играю с API Object-C (Gdata) Google, чтобы взаимодействовать с 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];

Но когда я его выполняю, у меня возникает ошибка в консоле (обратный вызов 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 + [назначение_сообщения]: NSInvation553 3 samsungTV
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_ФУНКЦИЯ
+ 15 7 CoreFoundation 0x0111d28b __CFRunLoopDoSources0 + 571 8 CoreFoundation
0x0111c786 __CFRunLoopRun + 470 9
CoreFoundation * +1019 * 0x0111c240 CFRunLoopRunSpecific + 208 10 CoreFoundation
0x0111c161 CFRunLoopRunInMode + 97 11 GraphicsServices * 1 021 * 0x018f9268 GSEventRunModal +217 12 GraphicsServices
0x018f932d GSEventRun + 115 13 UIKit 0x0060042e UIApplicationMain + 1160 14 samsungTV
0x00002964 main + 102 15 samsungTV
0x000028f5 запуск + 53) прекращение вызова после выдачи «сигнала» программы:SIGABRT ”.

Понятия не имею, почему ...

Но в другой руке, если я использую корм, это работает ...

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


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


    [ticket setShouldFollowNextLinks:NO]

МожетКто-нибудь, дайте мне руку?

Спасибо

Ответы [ 2 ]

0 голосов
/ 09 марта 2011

Обратные вызовы для выборок GData имеют три параметра, а не два.В первом фрагменте кода отсутствует ошибка: в конце селектора.

Обязательно определите DEBUG = 1 для ваших отладочных сборок;библиотека будет ловить такие проблемы.

0 голосов
/ 07 марта 2011

Вы действительно определяете метод entryListFetchTicket:finishedWithFeed: в своем классе, который вы используете в качестве объекта делегата?

...