AudioFileOpenURL上的现有文件返回-43(AudioFileOpenURL retur

2019-10-20 03:01发布

我在我的应用程序中的步骤,其中一个用户多次听到3个口语数字。

如果我离开这个步骤运行一段时间(为“而”某些未定义的值),我的调试日志显示这个(去除不相关的日志条目):

2010-03-01 13:44:21.283 iPhoneHearChk[1236:207] AudioFileOpenURL returned 0
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
2010-03-01 13:44:35.493 iPhoneHearChk[1236:207] AudioFileOpenURL returned 0
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
2010-03-01 13:45:17.916 iPhoneHearChk[1236:207] AudioFileOpenURL returned 0
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
2010-03-01 13:47:00.408 iPhoneHearChk[1236:207] AudioFileOpenURL returned -43
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)

从我读过,MacErrors.h定义为-43 fnErr,文件未找到。 但显然该文件存在,因为我成功之前打开了它。 是什么赋予了?

我怎么打开文件:

NSString *soundFilePath = [[NSBundle mainBundle] pathForResource: name ofType: type];
if (!soundFilePath) { NSLog(@"No path found for sound file %@.%@", name, type); }
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];
rc = AudioFileOpenURL((CFURLRef) fileURL, kAudioFileReadPermission, 0, &file);

其中,文件是一个AudioFileID instvar和名称和类型的NSString *参数。

Answer 1:

难道你用完了文件句柄? 你关闭你打开你与他们完成后的文件?



文章来源: AudioFileOpenURL returns -43 on an existing file