AVAudioSession iOS 12.4.1无法在应用程序处于后台时使用Timer.scheduledTimer录制音频

AVAudioSession iOS 12.4.1无法在应用程序处于后台时使用Timer.scheduledTimer录制音频,ios,swift,timer,avaudiosession,avaudiorecorder,Ios,Swift,Timer,Avaudiosession,Avaudiorecorder,计时器工作正常即使在背景下也可以(我可以读取日志),但方法AVAudioRecorder.record()不工作。。。以下是计划的方法: @objc func timer(){ os_log("timer") if self.audioRecorder == nil { //...some stuff self.audioRecorder = try AVAudioRecorder(url: audioFileNam

计时器工作正常即使在背景下也可以(我可以读取日志),但方法AVAudioRecorder.record()不工作。。。以下是计划的方法:

@objc func timer(){
        os_log("timer")
        if self.audioRecorder == nil {
            //...some stuff
            self.audioRecorder = try AVAudioRecorder(url: audioFileName, settings: settings)
            self.audioRecorder.delegate = self
            self.audioRecorder.record()
        }
    }
计时器设置:

\=Timer.scheduledTimer(时间间隔:10.0,目标:self,选择器:#选择器(计时器),用户信息:nil,重复:false)

我在iOS 12.4更新后发现了这个问题

  • 我使用两个不同的AVAudioSession实例

  • 当应用程序位于前台时,它可以完美地工作

  • I播放音频文件并点击它,I使用计时器安排何时启动录音机

  • 因此,我启动音乐,我在背景中移动应用程序,音乐仍在播放计时器启动但是记录器不想启动


可能是一个错误

?我已经编辑了答案,以使我的问题更具可读性。这看起来像是一个错误。一些报告指出,上面描述的问题在iOS 13.1中已修复,但它仍然存在。。。