2

我正在为音频通话开发 AppRTC,当应用程序打开时它工作正常。设备锁定时音频通话不工作,如果在通话时解锁设备并打开应用程序,它开始正常工作,但在锁定时它不工作。(音频不通过或播放)。

我已经在 plist 的“所需背景模式”中添加了“应用程序使用 AirPlay 播放音频或流式传输音频/视频”。

还配置了音频会话。请检查下面的代码。

- (void)configureAVAudioSession:(BOOL)isSpeakerOn
{
    // Get your app's audioSession singleton object
    AVAudioSession *session = [AVAudioSession sharedInstance];

    // Error handling
    BOOL success;
    NSError *error;

    // set the audioSession category.
    // Needs to be Record or PlayAndRecord to use audioRouteOverride:

    success = [session setCategory:AVAudioSessionCategoryPlayAndRecord
                             error:&error];

    if (!success) {
        NSLog(@"AVAudioSession error setting category:%@",error);
    }

    // Set the audioSession override
    success = [session overrideOutputAudioPort:isSpeakerOn?AVAudioSessionPortOverrideSpeaker:AVAudioSessionPortOverrideNone
                                         error:&error];
    if (!success) {
        NSLog(@"AVAudioSession error overrideOutputAudioPort:%@",error);
    }

    // Activate the audio session
    success = [session setActive:YES error:&error];
    if (!success) {
        NSLog(@"AVAudioSession error activating: %@",error);
    }
    else {
        NSLog(@"AudioSession active");
    }

}

请让我知道是否有任何遗漏或我执行错误。

问候,

4

0 回答 0