我目前正在开发一个使用 MPMoviePlayerViewController 的网络电视应用程序。MPMoviePlayer 在 iphone 上播放流媒体视频内容。
我在这里遇到的问题是,一旦我拔下耳机(在看电视时),播放器就会停止。由于我没有显示标准控件(上一个按钮、播放/暂停按钮、下一个按钮)而是我的自定义控件,因此除非用户切换到新频道,否则用户会被冻结的图片卡住。
有什么方法可以检测到因拔下耳机而导致的播放中断?
提前感谢您的提示和技巧,
山姆
我目前正在开发一个使用 MPMoviePlayerViewController 的网络电视应用程序。MPMoviePlayer 在 iphone 上播放流媒体视频内容。
我在这里遇到的问题是,一旦我拔下耳机(在看电视时),播放器就会停止。由于我没有显示标准控件(上一个按钮、播放/暂停按钮、下一个按钮)而是我的自定义控件,因此除非用户切换到新频道,否则用户会被冻结的图片卡住。
有什么方法可以检测到因拔下耳机而导致的播放中断?
提前感谢您的提示和技巧,
山姆
我没有直接回答你的问题。但我认为 MPMoviePlayerPlaybackStateDidChangeNotification 足以解决您的问题。收到通知后,从电影播放器对象的播放状态属性中获取播放状态并采取适当的措施。
用一些代码详细说明接受的答案:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(videoPlaybackStateChanged:)
name:MPMoviePlayerPlaybackStateDidChangeNotification
object:moviePlayer];
- (void)videoPlaybackStateChanged :(NSNotification *)notification
{
if (moviePlayer != nil && [moviePlayer playbackState] == MPMoviePlaybackStatePaused)
{
[moviePlayer play];
}
}