Я пытаюсь заставить YouTube работать в моем приложении для iOS. Я успешно получаю список видео для конкретного пользователя, но я изо всех сил пытаюсь реализовать didSelectRowAtIndexPath, чтобы выбранное видео было вставлено в отдельный viewController. Вот код, с которым у меня возникли проблемы:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
DetailViewController *detailController = [self.storyboard instantiateViewControllerWithIdentifier:@"DetailController"];
GDataEntryBase *entry2 = [[feed entries] objectAtIndex:indexPath.row];
videoArray = [[(GDataEntryYouTubeVideo *)entry2 mediaGroup] mediaContents];
NSString *tempUrl = [videoArray objectAtIndex:0];
NSLog(@"The URL is:%@",tempUrl);
detailController.videoString = tempUrl;
[self.navigationController pushViewController:detailController animated:YES];
}
Каждый раз, когда я запускаю это, я получаю точку останова в 'detailController.videoString = tempUrl;'
Я вижу, что строка tempUrl заполняется следующим через NSLog:
The URL is:GDataMediaContent 0x69c76a0: {url:https://www.youtube.com/v/s36krFdPmYQ?version=3&f=user_uploads&app=youtube_gdata type:application/x-shockwave-flash medium:video isDefault:true expression:full duration:1913}
Как я могу извлечь только URL-адрес видео из GData API?
Заранее спасибо за ваши ответы.
Я внес следующие изменения, и теперь я получаю правильную строку URL:
GDataEntryBase *entry2 = [[feed entries] objectAtIndex:indexPath.row];
NSArray *mediaContents = [[(GDataEntryYouTubeVideo *)entry2 mediaGroup] mediaContents];
GDataMediaContent *flashContent = [GDataUtilities firstObjectFromArray:mediaContents withValue:@"application/x-shockwave-flash" forKeyPath:@"type"];
NSLog(@"The URL is:%@",[flashContent URLString]);
detailController.videoString = [flashContent URLString];
Что дает мне следующее из NSLog:
The URL is:https://www.youtube.com/v/s36krFdPmYQ?version=3&f=user_uploads&app=youtube_gdata
Однако я все еще получаю точку останова в 'detailController.videoString = [flashContent URLString];