每个人都知道在用户按下锁定按钮(静音)后保持应用程序活跃的标准程序。如果我用 AVAudioPlayer 开始播放声音(在 iPhone 被锁定之前),声音会一直播放到结束(在锁定之后)。该应用程序仍在运行。如果我在 iPhone 锁定时尝试启动另一个声音,它将永远不会播放。所有其他的东西都可以正常工作,但声音却不行。
如何在 iPhone 锁定时播放声音?
每个人都知道在用户按下锁定按钮(静音)后保持应用程序活跃的标准程序。如果我用 AVAudioPlayer 开始播放声音(在 iPhone 被锁定之前),声音会一直播放到结束(在锁定之后)。该应用程序仍在运行。如果我在 iPhone 锁定时尝试启动另一个声音,它将永远不会播放。所有其他的东西都可以正常工作,但声音却不行。
如何在 iPhone 锁定时播放声音?
我不确定您的问题出在哪里,但是您是否设置了音频类别以允许混合?
const UInt32 categoryProp = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(categoryProp), &categoryProp);
UInt32 category = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(category), &category);
const UInt32 setProperty_YES = 1;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryMixWithOthers, sizeof(setProperty_YES), &setProperty_YES);
现在一切正常!我错过了一个日志声明。看来我淹没了音频缓冲区!
感谢所有试图帮助我解决此问题的人。