感谢您的时间。
我对iPhone中的扬声器控制有疑问。我们在iPhone上有两个扬声器:
我的疑问是:我已经使用了两个UISwitch,即Ear_speaker,Bottom_Speaker。
如果我在播放时打开Ear_speaker,声音应仅来自Ear_speaker,如果我关闭耳机扬声器,声音不应来自耳机扬声器。
Bottom_Speaker也有相同的功能。
答案 0 :(得分:2)
设置音频会话
[[AVAudioSession sharedInstance] setDelegate:self];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
在UISwitch中实现它:
这会将音频路线更改为底部发言人:
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (
kAudioSessionProperty_OverrideAudioRoute,
sizeof (audioRouteOverride),
&audioRouteOverride
);
这会将音频路由更改为“耳机”:
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_None;
AudioSessionSetProperty (
kAudioSessionProperty_OverrideAudioRoute,
sizeof (audioRouteOverride),
&audioRouteOverride
);