2012-01-30 62 views
28

我想从我的iPhone应用程序播放YouTube视频。我必须尝试使用​​以下代码在我的iPhone应用中播放YouTube视频,在iPhone应用程序中播放YouTube视频而不使用UIWebView?

[self playVideo:@"http://www.youtube.com/watch?v=WL2l_Q1AR_Q" frame:CGRectMake(20, 70, 280, 250)]; 

- (void)playVideo:(NSString *)urlString frame:(CGRect)frame 
{ 
    NSString *embedHTML = @"\ 
    <html><head>\ 
    <style type=\"text/css\">\ 
    body {\ 
    background-color: transparent;\ 
    color: white;\ 
    }\ 
    </style>\ 
    </head><body style=\"margin:0\">\ 
    <embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \ 
    width=\"%0.0f\" height=\"%0.0f\"></embed>\ 
    </body></html>"; 
    NSString *html = [NSString stringWithFormat:embedHTML, urlString, frame.size.width, frame.size.height]; 
    UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame]; 
    [videoView loadHTMLString:html baseURL:nil]; 
    [self.view addSubview:videoView]; 
    [videoView release]; 
    NSLog(@"%@",html); 
} 

但是,此代码不适用于我。我也试过MPMoviePlayerController的代码是,

NSURL *fileURL = [NSURL URLWithString:@"http://www.youtube.com/watch?v=WL2l_Q1AR_Q"]; 
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL]; 
[moviePlayerController.view setFrame:CGRectMake(0, 70, 320, 270)]; 
[self.view addSubview:moviePlayerController.view]; 
moviePlayerController.fullscreen = YES; 
[moviePlayerController play]; 

这也不适合我。任何人都可以告诉我我做错了什么,并建议我有什么想法?我想播放MPMoviewPlayerController中的YouTube视频,而不是使用UIWebView。提前致谢。

+0

相关:http://stackoverflow.com/questions/1779511/play-youtube-videos-with-mpmovieplayercontroller-instead-of-uiwebview – 2012-02-03 16:45:21

回答

6

Mr.Yuvaraj.M您的上述代码是正确的。请在您的iPhone/iPod touch设备中运行该项目。 YouTube视频可能不支持/不适用于模拟器。请检查这一点。谢谢。

+0

Mr.Gopinath谢谢你的回答。我会检查你的答案。谢谢。 – 2012-01-30 07:26:10

1

而不是您正在使用的HTML嵌入代码,转到YouTube网站,找到一个视频,使用共享按钮,然后使用嵌入按钮来获得一些嵌入HTML的示例。使用该模式嵌入视频,而不是您当前使用的Flash版本。

8

只需使用XCDYouTubeVideoPlayerViewController。它无缝地将youtube视频添加到您的应用程序,而无需UIWebView

它使用渐进式下载+ MoviePlayerAVFoundation框架。只需提供一个YouTube视频ID,你就可以走了。

它支持全屏&非全屏和在iOS SIMULATOR上工作!

实施例:

XCDYouTubeVideoPlayerViewController *videoPlayerViewController = [[XCDYouTubeVideoPlayerViewController alloc] initWithVideoIdentifier:@"9bZkp7q19f0"]; 
[self presentMoviePlayerViewControllerAnimated:videoPlayerViewController]; 
+0

我使用pod添加这个库,以及我想为此使用哪个头。 – 2017-06-22 08:26:09

+0

@ R.Mohan应该是'#import ' – Hlung 2017-06-26 17:10:35

相关问题