iPhone:应用程序运行时,iPod控件显示为灰色

时间:2011-01-09 10:10:13

标签: iphone objective-c audio

我的应用会产生一些声音,但我希望普通的iPod音乐能够同时播放。我使用以下方式设置了声音:

UInt32  sessionCategory = kAudioSessionCategory_AmbientSound;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);    

这应该允许我的应用产生的声音与iPod音频混合。

-

实际发生的事情:

如果在启动应用程序之前播放iPod音乐,则一切都与预期完全一致。

但是,如果没有播放iPod音乐,并且用户尝试通过双击主页按钮和使用iPod控制来播放音乐,则iPod控件将显示为灰色。

事实上,应用程序的背景仍然会使iPod控件变灰(尽管退出应用程序会导致控件再次被访问。

-

我可以遗漏哪些东西/我还需要做些什么来启用这些控件?在检查我的代码时,我可能忽略了哪些方法可能会禁用这些控件?

谢谢:)

1 个答案:

答案 0 :(得分:1)

我认为这是iOS中的一个错误,请参阅iPod mini controls disabled when certain audio session parameters are set

您仍然可以进入音乐/ iPod应用程序并开始播放。

在willResignActive中,您可以停止播放并停用音频会话,但这可能无法启用这些控件。如果您使用“播放”类别并设置允许混音,则会出现类似问题...即使没有其他应用正在播放音频,您的应用图标也不再出现在具有播放控件的多任务栏中,并且没有任何解决方法