AVAudioPlayer在iPod touch 2G和3G上播放音乐

时间:2010-09-26 03:07:01

标签: ios avaudioplayer ipod-touch

我正在尝试使用 AVAudioPlayer 在iPhone和iPod touch上播放音频文件。该代码在 iPhone iPod touch 4G 中运行良好,我可以听到音乐。但是当我在 iPod touch 2G iPod touch 3G 上进行测试时,我听不到任何声音。

以下是我用来播放音频文件的代码:

NSString *zeroAudioPath = [[NSBundle mainBundle] pathForResource:@"TimerBell"
                                                          ofType:@"aif"];
NSURL *file = [[NSURL alloc] initFileURLWithPath:zeroAudioPath];
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:file
                                                                    error:nil];
[file release];

self.zeroAudioPlayer = audioPlayer;
zeroAudioPlayer.delegate = self;
[audioPlayer release];
[zeroAudioPlayer prepareToPlay];
[zeroAudioPlayer play];

2 个答案:

答案 0 :(得分:1)

你应该在玩之前使用这样的音频:

AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:&error];

答案 1 :(得分:1)

我发现从kAudioSessionCategory_PlayAndRecord更改为kAudioSessionCategory_AmbientSound更正了此问题。我怀疑这与iPod touch上与录制相关的硬件差异有关。