【问题标题】:MPMoviePlayerController shows blank screen or crashes appMPMoviePlayerController 显示空白屏幕或应用程序崩溃
【发布时间】:2013-05-09 19:01:22
【问题描述】:

我有一个名为 videoPlayerViewController 的 UIViewController 子类。 在情节提要中,我拖出了一个 UIViewController。我在 Storyboard 中正确设置了课程。 我在屏幕上放了一个按钮。当我点击按钮时,它会执行 playVideo: 方法。

- (IBAction)playVideo:(id)sender
{
 NSURL *movieURL = [NSURL URLWithString:@"http://www.ebookfrenzy.com/ios_book/movie/movie.mov"];

 MPMoviePlayerController *player =
 [[MPMoviePlayerController alloc] initWithContentURL: movieURL];
 [player prepareToPlay];
 [player.view setFrame: self.view.bounds];  // player's frame must match parent's
 [self.view addSubview: player.view];
 [player play];
}

我得到一个什么都不做的黑屏。

这是我在过去 6 小时内使用此方法获得的最简单的代码版本。

我已经尝试了所有 StackOverflow 的答案。 我只想播放从互联网上流式传输的视频。

如果我设置:

player.movieSourceType = MPMovieSourceTypeStreaming;

屏幕显示“正在加载”一秒钟,然后崩溃。 我到底做错了什么?

我知道那里有很多 MPMoviePlayerController 问题,而仅仅问一个笼统的“它是如何工作的”问题似乎很可笑。我已经在这将近 6 个小时了,没有 Google/Stack Overflow/Apple 文档搜索能够完成这项工作。

【问题讨论】:

    标签: ios objective-c mpmovieplayercontroller ios6.1


    【解决方案1】:

    我使用了您提供的代码,但在创建后分配给播放器的头文件中创建了一个名为 mcp 的 MoviePlayerController 属性。这对我有用。电影加载和播放都很好。

    在.h文件中:

    @property (strong, nonatomic) MPMoviePlayerController *mcp;
    

    .m 文件中:

    - (IBAction)playVideo:(id)sender
    {
        NSURL *movieURL = [NSURL     URLWithString:@"http://www.ebookfrenzy.com/ios_book/movie/movie.mov"];
    
        MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL: movieURL];
        [player prepareToPlay];
        [player.view setFrame: self.view.bounds];  // player's frame must match parent's
    
        _mcp = player;
    
        [self.view addSubview: _mcp.view];
        [_mcp play];
    }
    

    【讨论】:

    • 那么答案就交给你了,先生。我创建了一个新项目并使用了您的代码,它可以工作。我一直在我当前的项目中尝试它,但它没有在那里工作,现在仍然没有。不知道是什么问题,但至少我可以看看别处
    • 很高兴我能帮上忙。我记得有一个问题,即 ARC 没有正确保留 MPMoviePlayerController 对象,因此您需要将其分配给属性作为解决方法。这在我的一个项目中起作用。
    • 2013 年 12 月 .. 提示 - 关于文件扩展名(文件来自网络)非常不稳定。在我的应用程序中,.MOV 有效,.mov 使 iPhone 严重崩溃。奇怪。模拟器也根本不起作用,它完全没用,只会崩溃。最后,在 MPMoviePlayerViewController 方法有效时,MPMoviePlayerController 无用且损坏。
    • 我已经使用了 MPMoviePlayerViewController 并展示了它,但是在加载视频时出现黑屏
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-05
    相关资源
    最近更新 更多