我正在尝试在我的iOS应用程序中播放音频文件.这是我目前的代码
NSString *soundFilePath = [NSString stringWithFormat:@"%@/test.m4a", [[NSBundle mainBundle] resourcePath]];
NSLog(@"%@",soundFilePath);
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance] setActive: YES error: nil];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
[audioPlayer setVolume:1.0];
audioPlayer.delegate = self;
[audioPlayer stop];
[audioPlayer setCurrentTime:0];
[audioPlayer play];
Run Code Online (Sandbox Code Playgroud)
我正在检查一堆其他帖子,但他们通常都做同样的事情.我没有收到错误,但我没有听到模拟器或设备上播放任何音频.
这是我在模拟器上获得音频文件的路径
/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/long-numbered-thing/BookAdventure.app/test.m4a
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏!
试试这个:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error];
if (error) {
NSLog(@"Error setting category: %@", [error description]);
}
Run Code Online (Sandbox Code Playgroud)
获取错误"错误设置类别:UIView"但不知道如何解决这个问题.不完全确定它告诉我的是什么.
请帮忙!
编辑
音频播放:
NSURL *audioFileURL = [[NSBundle mainBundle] URLForResource:@"DemoSong" withExtension:@"m4a"];
NSError *error;
self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:audioFileURL error:&error];
if (error) {
NSLog(@"%@", [error localizedDescription]);
}
[_audioPlayer setNumberOfLoops:-1];
[_audioPlayer setMeteringEnabled:YES];
[_visualizer setAudioPlayer:_audioPlayer];
[_audioPlayer prepareToPlay];
[_audioPlayer play];
NSLog(@"play audio");
Run Code Online (Sandbox Code Playgroud)