在我自己写的边录音边转MP3的 https://github.com/ZXLBoaConstrictor/ZXLRecorder 中我最近遇到了以下的崩溃问题。
由于转MP3 的处理是异步线程处理,所以对而且我在操作文件的时候,有做删除录音文件处理。
-(void)prepareToRecord{
[self setAudioSession];
//清空历史录音文件
NSString *cafFilePath = [self cafPath];
if ([[NSFileManager defaultManager] fileExistsAtPath:cafFilePath]) {
[[NSFileManager defaultManager] removeItemAtPath:cafFilePath error:nil];
}
[self.recorder prepareToRecord];
}
最开始在考虑到 AVAudioRecorder 的 prepareToRecord函数会创建文件所以在开始的收先删除了历史文件。
fopen 失败的原因是文件不存在,所以在考虑到prepareToRecord 会创建也会清空文件状态,于是我就把删除文件操作取消了,修改后的函数如下。
-(void)prepareToRecord{
[self setAudioSession];
[self.recorder prepareToRecord];
}
如果有什么疑问欢迎留言!!!!