【发布时间】:2014-07-18 08:03:35
【问题描述】:
我有一个小应用程序。在这个应用程序中,我设置的每个特定时间扬声器都会发出噪音。
现在,我希望它通过内置扬声器发出噪音,即使设备中插入了耳机插孔。
我该怎么做?
【问题讨论】:
标签: ios iphone core-audio
我有一个小应用程序。在这个应用程序中,我设置的每个特定时间扬声器都会发出噪音。
现在,我希望它通过内置扬声器发出噪音,即使设备中插入了耳机插孔。
我该怎么做?
【问题讨论】:
标签: ios iphone core-audio
您可以尝试以下代码在扬声器上播放代码。
同时检查this
希望这会对你有所帮助。
[[AVAudioSession sharedInstance] setDelegate:self];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (
kAudioSessionProperty_OverrideAudioRoute,
sizeof (audioRouteOverride),
&audioRouteOverride
);
【讨论】:
您必须在插入耳机后覆盖音频路由。您的应用可以在发生这种情况时请求音频会话通知,然后再次进行覆盖。
【讨论】:
这对我有用。
+ (void)sessionAudioPort {
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);
}
【讨论】: