iPhone:什么是MPMusicPlaybackStateInterrupted?它和MPMusicPlaybackStatePaused有什么区别

时间:2012-07-18 08:34:56

标签: iphone ios mpmusicplayercontroller

我对MPMusicPlayerController的{​​{1}}属性有疑问。

在文档中,playbackStateMPMusicPlaybackStateInterrupted的定义如下:

MPMusicPlaybackStateInterrupted
音乐播放器已被中断,例如来电。

MPMusicPlaybackStatePaused
音乐播放器暂停了。

我无法查看来电,因为我现在没有iPhone 但是只有几次我在用iPod touch播放音乐时才MPMusicPlaybackStatePaused状态。

(我不知道为什么中断状态发生了。除了刚播放音乐外,没有来电和其他操作。)

在那些时候,MPMusicPlaybackStateInterrupted暂停了播放音乐。

问题1
MPMusicPlayerControllerMPMusicPlaybackStateInterrupted之间有什么区别?

问题2
除了来电之外,MPMusicPlaybackStatePaused何时发生?

问题3
得到MPMusicPlaybackStateInterrupted后我该怎么办? 例如,当我收到MPMusicPlaybackStateInterruptedMPMusicPlaybackStatePaused时,我应该更改播放/暂停按钮。

1 个答案:

答案 0 :(得分:1)

我在iOS 5.1.1中确认了以下信息。

<强>问题1
MPMusicPlaybackStateInterruptedMPMusicPlaybackStatePaused之间有什么区别?

播放器暂停时发生

MPMusicPlaybackStatePaused MPMusicPlaybackStateInterrupted当播放器被其他音频输出中断时发生,例如来电或Apple时钟应用的定时器。

<强>问题2
除了来电之外,MPMusicPlaybackStateInterrupted何时发生?

当应用程序的计时器响铃时,会发生

MPMusicPlaybackStateInterrupted 当计时器响起时,也会调用-applicationWillResignActive: 但是MPMusicPlaybackStatePaused没有发生,并且在中断(定时器的闹钟)结束后播放音乐会自动恢复。

其他中断示例包括Siri /语音控制(按住主屏幕按钮),耳机遥控器(如果使用applicationMusicPlayer),来电。 按下耳机遥控器的播放按钮不会使应用程序重新启动。中断永远不会结束。

当通知横幅出现在屏幕顶部时,

MPMusicPlaybackStateInterrupted不会发生并且播放状态不会改变 VoiceOver也不会产生中断。

<强>问题3
得到MPMusicPlaybackStateInterrupted后我该怎么办? 例如,当我收到MPMusicPlaybackStatePausedMPMusicPlaybackStateStopped时,我应该更改播放/暂停按钮。

MPMusicPlayerControllerPlaybackStateDidChangeNotification发生MPMusicPlaybackStateInterrupted时,您无需回复​​{{1}} 因为播放音乐会在中断后自动恢复。

修改
我发现不经常播放音乐不会自动恢复。(这意味着你不能依赖自动恢复。)

在下列情况下,播放音乐不会自动恢复。

  • 按下耳机的遥控器按钮。 (如果您使用applicationMusicPlayer)

  • 当计时器响起时,您双击主页按钮,切换应用程序,停止计时器,然后切换回应用程序。

  • 当您在接听来电后拨打电话时切换回应用程序。