For a user, you can fetch the feed of playlist links; each of those has the URL to a playlist, which contains video entries.
- (void)fetchPlaylistLinksFeed {
NSURL *feedURL = [GDataServiceGoogleYouTube youTubeURLForUserID:kGDataServiceDefaultUser
userFeedID:kGDataYouTubeUserFeedIDPlaylists];
GDataServiceGoogleYouTube *service = [self youTubeService];
GDataServiceTicket *ticket = [service fetchFeedWithURL:feedURL
delegate:self
didFinishSelector:@selector(playlistLinksTicket:finishedWithFeed:error:)];
}
- (void)playlistLinksTicket:(GDataServiceTicket *)ticket
finishedWithFeed:(GDataFeedYouTubePlaylistLink *)feed
error:(NSError *)error {
// fetch the user's first playlist
GDataEntryYouTubePlaylistLink *entry = [feed firstEntry];
[self fetchPlaylistLink:entry];
}
- (void)fetchPlaylistLink:(GDataEntryYouTubePlaylistLink *)entry {
GDataServiceGoogleYouTube *service = [self youTubeService];
NSURL *playlistFeedURL = [[entry content] sourceURL];
GDataServiceTicket *ticket = [service fetchFeedWithURL:playlistFeedURL
delegate:self
didFinishSelector:@selector(playlistTicket:finishedWithFeed:error:)];
}
- (void)playlistTicket:(GDataServiceTicket *)ticket
finishedWithFeed:(GDataFeedYouTubePlaylist *)feed
error:(NSError *)error {
NSLog(@"feed=%@", feed);
NSLog(@"video entries=%@", [feed entries]);
}