2014-03-18 2 views
0

У меня есть приложение, в котором я хочу показывать видео с urls внутри приложения.Проблемы при показе видеороликов в приложении через url в ios

Я использую для этого MPMoviePlayerViewController.

Ниже приведен код, который я использую, но каким-то образом видео не воспроизводится с urls.

NSURL *URL = [NSURL URLWithString:@"http://vimeo.com/81889151"]; 




    playercontroller = [[MPMoviePlayerViewController alloc] init]; 

    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(finishvideo:) 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:nil]; 
[playercontroller.moviePlayer setContentURL:URL]; 
     [self.view addSubview:playercontroller.view]; 

Я искал много, но не смог найти правильное решение для меня.

Что не входит в код с кодом выше?

Пожалуйста, помогите мне с этим.

Любая помощь будет оценена по достоинству.

Заранее спасибо.

ответ

0
[self.view.layer addSublayer:playercontroller]; 
[playercontroller play]; 

Попробуйте

2

URL, который вы пытаетесь загрузить стандартный веб-страницы. Вам необходимо загрузить принятый iOS формат, такой как h264. Вы можете отобразить этот фильм в UIWebView. Теперь MPMoviePlayer пытается загрузить HTML-страницу, которая по очевидным причинам не сработает.

Загрузка видео в UIWebView будет работать следующим образом:

NSString *htmlString = @"<iframe src=\"//player.vimeo.com/video/81889151\" width=\"100%\" height=\"100%\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>"; 

UIWebView *webView = [[UIWebView alloc] initWithFrame:FRAME]; 
[webView loadHTMLString:htmlString baseURL:nil]; 
[self.view addSubview:webView]; 
+0

Как я могу использовать «UIWebView». Для отображения видео .. а, пожалуйста, помогите мне? – BHUMICA

+0

Я обновил свой ответ, объяснив, как использовать UIWebView, чтобы отобразить Vimeo embed. – Jimmy

+0

UIWebView * webView = [[UIWebView alloc] initWithFrame: FRAME]; в этой строке что такое FRAME .. ?? и где я должен поместить этот код ... может у plz указать его ..... – BHUMICA

0
@interface VideoViewController : UIViewController <MPMediaPickerControllerDelegate> 

@property (strong, nonatomic) MPMoviePlayerController *moviePlayer; 

@end 

NSURL *movieURL = [NSURL URLWithString:@"http://vimeo.com/81889151"]; 

    _moviePlayer = [[MPMoviePlayerController alloc] 
        initWithContentURL:movieURL]; 

    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(finishvideo:) 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:_moviePlayer]; 

    _moviePlayer.controlStyle = MPMovieControlStyleDefault; 
    _moviePlayer.shouldAutoplay = YES; 

    [self.view addSubview:_moviePlayer.view]; 


    [_moviePlayer setFullscreen:YES animated:NO]; 
+0

Ваш код дает мне ошибку _itemFailedToPlayToEnd: { kind = 1; новый = 2; old = 0; } – BHUMICA

0

Вместо того чтобы добавлять как подвид, попробуйте представить контроллер представления Movie Player

NSURL *URL = [NSURL URLWithString:@"http://vimeo.com/81889151"]; 
    playercontroller = [[MPMoviePlayerViewController alloc] initWithContentURL:URL]; 


[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(finishvideo:) 
              name:MPMoviePlayerPlaybackDidFinishNotification 
              object:nil]; 
[self presentMoviePlayerViewControllerAnimated:playercontroller]; 
+0

ваш код показывает ошибку, как указано ниже ... samplevideocontroller [3410: 60b] _itemFailedToPlayToEnd: { kind = 1; новый = 2; old = 0; } – BHUMICA

+0

Если вы получаете сообщение об ошибке с помощью MPMoviePlayerController, вам необходимо перейти на веб-просмотр. Вот код. self.videoWebView.delegate = self; [self.videoWebView loadHTMLString: [NSString stringWithFormat: @ "% @», videoURL] BaseUrl: ноль]; –

+0

мои URLs приходят из веб-сервиса, так как передать, что динамически в HTML строку – BHUMICA

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