UIWebView
et MPMoviePlayerController
ne sont pas disponibles pour tvOS. Notre prochaine option est d'utiliser AVPlayer
pour lire des vidéos YouTube.
AVPlayer
Impossible de lire une vidéo YouTube à partir d'une URL YouTube standard, c'est-à-dire. https://www.youtube.com/watch?v=8To-6VIJZRE
. Il a besoin d'une URL directe pour le fichier vidéo. En utilisant HCYoutubeParser, nous pouvons accomplir exactement cela. Une fois que nous avons l'URL nous avons besoin, nous pouvons jouer avec notre AVPlayer
comme ceci:
NSString *youTubeString = @"https://www.youtube.com/watch?v=8To-6VIJZRE";
NSDictionary *videos = [HCYoutubeParser h264videosWithYoutubeURL:[NSURL URLWithString:youTubeString]];
NSString *urlString = [NSString stringWithFormat:@"%@", [videos objectForKey:@"medium"]];
AVAsset *asset = [AVAsset assetWithURL:[NSURL URLWithString:urlString]];
AVPlayerItem *avPlayerItem = [[AVPlayerItem alloc]initWithAsset:asset];
AVPlayer *videoPlayer = [AVPlayer playerWithPlayerItem:avPlayerItem];
AVPlayerLayer *avPlayerLayer = [AVPlayerLayer playerLayerWithPlayer:videoPlayer];
avPlayerLayer.frame = playerView.layer.bounds;
[playerView.layer addSublayer:avPlayerLayer];
[videoPlayer play];
Notez que c'est pas autorisés sous YouTube's TOS. Utilisez-le à vos risques et périls. Votre application peut cesser de fonctionner à tout moment si YouTube remarque que vous ne suivez pas les conditions d'utilisation ou si YouTube modifie le code d'intégration généré.
Avez-vous vu? http://stackoverflow.com/questions/32493872/how-do-i-play-a-video-on-tvos-for-apple-tv/32551565#32551565 Il vous suffit d'échanger l'URL de 'launchPlayer' sur votre URL YouTube. –
Je suppose que nous allons avoir besoin d'une bibliothèque de Google pour le faire sans violer les conditions d'utilisation. Cela pourrait donc prendre quelques mois avant qu'ils ne le fassent (avec leur propre application YouTube tvOS qui viendra en premier). – Nick
Plex est capable de lire des vidéos YouTube et Vimeo depuis leur nouvelle [AppleTV App] (https://blog.plex.tv/2015/11/02/plex-on-the-new-apple-tv/) via leur [ Regarder plus tard/Fonction Plex It] (https://support.plex.tv/hc/fr/articles/200392326-Using-the-Plex-It-Bookmarklet). Sur la base d'un rapide poke certains de leur [GitHub souce] (https://github.com/plexinc-plugins/Services.bundle/blob/master/Contents/Service%20Sets/com.plexapp.plugins.youtube/URL/YouTube /ServiceCode.pys), il semble qu'ils ne font que gratter la page. Est-ce exact? Comment s'en tirent-ils ou a-t-on remarqué? – Nick