美文网首页
About AVAudioRecorder Stop issue

About AVAudioRecorder Stop issue

作者: Kare | 来源:发表于2016-12-28 16:09 被阅读260次

基于xCode8.2.1 Swift3.0 开发科大讯飞时,当录音没有完成时就取消,就会出现以下问题显示“AVAudioSession.mm:1074:-[AVAudioSession setActive:withOptions:error:]:” Deactivating an audio session that has running I/O. All I/O should be stopped or paused prior to deactivating the audio session."

这是我的停止录音方法,结果会报错

func stopRecoreder() {

        recorder.stop()
        let audioSessions = AVAudioSession.sharedInstance()
        
        do {
            try audioSessions.setActive(false)
            print("stop!!")
        } catch {
        }
    }

后来找到了方法

第一步,停止方法改成以下方法

func stopRecoreder() {
        self.recorder.stop()
        self.recorder.prepareToRecord()
    }

第二步

实现AVAudioRecorder的delegate方法

func audioRecorderDidFinishRecording(_ recorder: AVAudioRecorder, successfully flag: Bool) {
        do {
           try audioSession.setActive(false)
        } catch {
            print(error)
        }
    }

然后问题搞定,不再报错。

相关文章

网友评论

      本文标题:About AVAudioRecorder Stop issue

      本文链接:https://www.haomeiwen.com/subject/vubyvttx.html