MPMoviePlayerController崩溃而不是播放电影

时间:2013-08-21 07:44:43

标签: ios objective-c mpmovieplayercontroller mpmovieplayer

我正在尝试使用MPMoviePlayerController播放电影。当我调用play方法时,我会遇到崩溃。

*** Terminating app due to uncaught exception 'NSRangeException', reason: 'Cannot remove an observer <MPAVController 0x15786750> for the key path "currentItem" from <MPAVPlaylistManager 0x15787750> because it is not registered as an observer.'
*** First throw call stack:
(0x2f148ed3 0x391716c7 0x2f148e15 0x2fa7227f 0x2fa71ca7 0x30393977 0x3038d5ef 0x303889d5 0x3036a36b 0x3036c6bb 0x2f10ae79 0x2f07eb81 0x2fa463c5 0x2fa4acc7 0x303ef943 0x39672103 0x396720ef 0x396749a9 0x2f1135b9 0x2f111e85 0x2f07c541 0x2f07c323 0x33b10343 0x316957b5 0x3a719 0x3a6a0)
libc++abi.dylib: terminating with uncaught exception of type NSException

我不确定发生了什么,因为我没有从currentItem MPAVPlaylistManager设置任何KVO观察员,这是一个内部类。

其他人有这个问题吗?

2 个答案:

答案 0 :(得分:0)

您的应用程序正在使用已创建的MPMoviePlayerController实例进行批量处理。我有一段时间没有同样的问题,据我所知,可以有两件事情1.你正在改变你在播放视频时创建的实例的contentURL 2.你错误地发布了MPMoviePlayerController的实例。 / p>

答案 1 :(得分:-1)

我解决了这个问题,问题与iOS7有关(目前在NDA下)。如果从辅助线程启动播放器,则会更改AVPlayer行为。玩家对象将为零。解决了我的问题。