当用户在iOS 5上锁定屏幕时,applicationMusicPlayer停止

时间:2011-10-05 09:32:25

标签: iphone ios audio locking ipod

我将音频会话类别设置为kAudioSessionCategory_MediaPlayback,我激活了会话,没有返回任何错误,当我锁定设备时,iPod音乐仍然停止。这发生在iOS 5 GM上,所以我猜这将在最终版本中发生。在iOS 4+上,当前代码工作正常。任何想法如何解决这一问题?非常感谢:))

2 个答案:

答案 0 :(得分:2)

这不是一个错误。为了节省电源锁定,现在将电话视为用户按下主页按钮。锁定时applicationMusicPlayer现在停止的事实只是这种变化的副作用。

要解决此问题,您应切换到AVPlayer并在后台模式下使用iOS 4的音频。

答案 1 :(得分:2)

修复了我的特定问题 - 如何在设备进入锁定屏幕时检测OS4和OS5行为之间的差异。

在OS4应用程序中执行'applicationWillResignActive'但在OS5上它会一直到'applicationDidEnterBackground',它看起来与用户点击Home按钮完全相同。

事实证明,如果检查' - (void)applicationDidEnterBackground:(UIApplication *)application'中给出的应用程序的UIApplicationState,它有3个可能的值:

typedef enum {
   UIApplicationStateActive,
   UIApplicationStateInactive,
   UIApplicationStateBackground
} UIApplicationState;

当用户在OS5上回家时,你会得到UIApplicationStateBackground,但当用户点击Lock时,你会得到UIApplicationStateInactive。

希望有所帮助。

祝大家节日快乐。