Sii*_*las 6 objective-c avaudioplayer ipad ios
我的应用程序中有一个奇怪的错误.我正在使用AVAudioPlayer播放声音(它的多个实例),声音通过耳机完美地工作,但使用没有耳机的应用程序不会产生扬声器发出的声音.所有音频剪辑都是AAC编码的.
我已经尝试通过Objective-C API([AVAudioSession sharedInstance])和C API设置AVAudioSession属性,但是这些选项似乎都不起作用.
tmr*_*tmr 19
接受的答案(在ios7中)对我不起作用,以下代码确实有效.(我没有足够的评论意见,将其作为单独答案发布)
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord
withOptions:AVAudioSessionCategoryOptionDefaultToSpeaker
error:nil];
Run Code Online (Sandbox Code Playgroud)
iPhone 上的问题 - 当声音非常低时 - 似乎是从手机耳机(不是耳机插孔)而不是底部扬声器出来的 - 更改为 DEFAULT TO SPEAKER
//http://stackoverflow.com/questions/3104562/avaudiorecorder-avaudioplayer-sound-output-on-internal-speaker-how-to-chang
UInt32 doChangeDefaultRoute = 1;
AudioSessionSetProperty (
kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,
sizeof (doChangeDefaultRoute),
&doChangeDefaultRoute
);
Run Code Online (Sandbox Code Playgroud)