2014-10-02 3 views
4

Есть ли способ, чтобы получить ссылку в настоящее время играет video.I я загрузки m.youtube.com .Для некоторых видео он даже не входя делегатов . Я тоже пытался использовать NStimer. Но для некоторых видео это не щелчок URL-адресКак получить URL в настоящее время воспроизведения видео в UIWebView

ответ

9

Существует хакерский способ сделать это, прослушивая уведомление AVPlayerItemBecameCurrentNotification. Это уведомление вызывается, когда UIWebView показывает медиаплеер, и он отправляет AVPlayerItem в качестве объекта уведомления.

Например:

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(playerItemBecameCurrent:) 
              name:@"AVPlayerItemBecameCurrentNotification" 
              object:nil]; 


-(void)playerItemBecameCurrent:(NSNotification*)notification { 
    AVPlayerItem *playerItem = [notification object]; 
    if(playerItem == nil) return; 
    // Break down the AVPlayerItem to get to the path 
    AVURLAsset *asset = (AVURLAsset*)[playerItem asset]; 
    NSURL *url = [asset URL]; 
    NSString *path = [url absoluteString]; 
} 

Это работает для любого видео (и аудио). Тем не менее, я заметил, что вы упомянули YouTube - стоит отметить, что Apple WILL отклоняет ваше приложение, если оно имеет возможность загружать видео на YouTube НА ВСЕХ, потому что это против YouTube's Terms of Service.

+0

Спасибо, его работа. До сих пор я не могу получить текущий URL-адрес, соответствующий видео. Есть ли способ? – Jeff

+0

@Jeff Что значит? Мой примерный код показывает, как URL-адрес NSURL и NSString. Это URL-адрес воспроизводимого видео. – ttarik

+0

Я получаю кодированный url.I спрашиваю о ссылке youtube на видео – Jeff

Смежные вопросы