AVAudioSession iOS 12.4.1无法在应用程序处于后台时使用Timer.scheduledTimer录制音频
计时器工作正常即使在背景下也可以(我可以读取日志),但方法AVAudioRecorder.record()不工作。。。以下是计划的方法: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
@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中已修复,但它仍然存在。。。