在我的应用程序错误中录制音频

时间:2013-09-14 14:45:52

标签: ios avaudiorecorder

我想让用户在我的应用中录制他们的声音,我正在关注此tutorial。这是viewDidLoad中的代码:

NSArray *dirPaths;
NSString *docsDir;

dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
docsDir = dirPaths[0];

NSString *soundFilePath = [docsDir
                           stringByAppendingPathComponent:@"sound.caf"];

NSURL *soundFileURL = [NSURL fileURLWithPath:soundFilePath];

NSDictionary *recordSettings = [NSDictionary
                                dictionaryWithObjectsAndKeys:
                                [NSNumber numberWithInt:AVAudioQualityMin],
                                AVEncoderAudioQualityKey,
                                [NSNumber numberWithInt:16],
                                AVEncoderBitRateKey,
                                [NSNumber numberWithInt: 2],
                                AVNumberOfChannelsKey,
                                [NSNumber numberWithFloat:44100.0],
                                AVSampleRateKey,
                                nil];

NSError *error = nil;

self.recorder = [[AVAudioRecorder alloc]
                  initWithURL:soundFileURL
                  settings:recordSettings
                  error:&error];

if (error)
{
    NSLog(@"error: %@", [error localizedDescription]);
} else {
    [self.recorder prepareToRecord];
} 

我收到6个错误:

我知道错误来自viewDidLoad中的代码,因为当我注释掉该代码时,错误就会消失。这些错误意味着什么,我该如何解决?

1 个答案:

答案 0 :(得分:1)

“正常”这种错误与链接器无法找到您从代码中引用的框架这一事实有关,在您的情况下我认为问题是您没有链接您的项目 反对AVFoundation。因此,在构建阶段添加框架应该可以解决问题