2012-01-30 11 views
28

Tôi muốn phát video trên YouTube từ ứng dụng iPhone của mình. Tôi phải thử phát video trên YouTube trong ứng dụng iPhone của mình bằng các mã sau,Phát video trên YouTube trong ứng dụng iPhone mà không cần sử dụng 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); 
} 

Nhưng mã này không hoạt động đối với tôi. Và tôi cũng đã thử với mã số 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]; 

Điều này cũng không hiệu quả đối với tôi. Bất cứ ai có thể xin vui lòng cho tôi biết nơi tôi đã làm sai và đề nghị tôi bất kỳ ý tưởng? Tôi muốn phát video YouTube trong MPMoviewPlayerController thay vì sử dụng UIWebView. Cảm ơn trước.

+0

Liên quan: http://stackoverflow.com/questions/1779511/play-youtube-videos-with-mpmovieplayercontroller-instead-of-uiwebview –

Trả lời

6

Mr.Yuvaraj.M mã trên của bạn là chính xác. Vui lòng chạy dự án trong thiết bị iPhone/iPod touch của bạn. Các video youtube có thể không hỗ trợ/không hoạt động trong Trình mô phỏng. Vui lòng kiểm tra điều này. Cảm ơn.

+0

Mr.Gopinath cảm ơn câu trả lời của bạn. Tôi sẽ kiểm tra câu trả lời của bạn. Cảm ơn. –

1

Thay vì mã nhúng HTML bạn đang sử dụng, hãy truy cập trang web YouTube, tìm video, sử dụng nút chia sẻ và sau đó nhấp vào nút Nhúng để tải một số ví dụ về Nhúng HTML. Sử dụng mẫu đó để nhúng video thay vì phiên bản Flash bạn hiện đang sử dụng.

8

Chỉ cần sử dụng XCDYouTubeVideoPlayerViewController. Nó liền mạch thêm video youtube vào ứng dụng của bạn mà không cần UIWebView.

Nó sử dụng tải xuống lũy ​​tiến + MoviePlayerAVFoundation khuôn khổ. Chỉ cần cung cấp nó với một ID video youtube và bạn tốt để đi.

Hỗ trợ cả màn hình toàn màn hình & không toàn màn hình và HOẠT ĐỘNG TRÊN SIMULATOR iOS !!!

Ví dụ:

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

tôi thêm thư viện này bằng cách sử dụng pod, và tiêu đề mà tôi muốn sử dụng cho điều này. –

+0

@ R.Mohan phải là '#import ' – Hlung

Các vấn đề liên quan