强制扬声器发出音频警报

时间:2014-07-18 08:03:35

标签: ios iphone core-audio

我有一个小应用程序。在这个应用程序中,扬声器每隔一段时间发出噪音。

现在,即使设备中插有耳机插孔,我也希望它在内置扬声器上产生噪音。

我该怎么做?

3 个答案:

答案 0 :(得分:0)

您可以尝试以下代码在扬声器上播放代码。

同时检查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
                         );

答案 1 :(得分:0)

插入耳机后,您必须覆盖音频路线。您的应用可以在发生这种情况时请求音频会话通知,然后再次进行覆盖。

答案 2 :(得分:0)

这项工作适合我。

+ (void)sessionAudioPort {
    UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
    AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
    UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
    AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);
}