有没有人使用iPhone 5遇到过AVAudioPlayer的问题?我的代码在iPhone 4,iPhone 4S和iPad(第3代)上运行正常,但它现在随机无法在iPhone 5上运行。我看到了这个问题,但没有人解决实际问题:
AVAudioPlayer is not working in iPhone 5
NSURL *soundURL = [self urlForAlarmSong:songKey];
NSError *err;
self.audioAlert = [[[AVAudioPlayer alloc] initWithContentsOfURL:soundURL error:&err] autorelease];
[self.audioAlert prepareToPlay];
currentVolume=[MPMusicPlayerController applicationMusicPlayer].volume;
[[MPMusicPlayerController applicationMusicPlayer] setVolume:1.0];
[self.audioAlert play];
audioAlert是一个AVAudioPlayer我在我的标题中声明了(保留,非原子)。 err变量每次都是null,即使它不能在iPhone 5上播放。这个代码每次都在iPhone 4,iPhone 4S和iPad(第三代)上运行。
有没有人有任何想法?感谢
答案 0 :(得分:1)
-(void)viewDidLoad
{
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"click2" ofType:@"mp3"]];
NSError *error;
audioPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:url error:&error];
if(error)
{
NSLog(@"error in audio player:%@",[error localizedDescription]);
}
else
{
audioPlayer.delegate=self;
[audioPlayer prepareToPlay];
}
}
按钮操作,
-(IBAction)SoundButton:(id)sender
{
[audioPlayer play];
}
在你的.h文件中,不要忘记导入
#import AVFoundation/AVFoundation.h
并添加委托AVAudioPlayerDelegate
。
答案 1 :(得分:0)
确保设备的声音开关未处于“静音”且音量足够高。
看起来非常明显,但它可以节省数小时的压力。