2010-05-20 51 views
0

我正在使用此代碼在每次調用時播放不同的mp3文件。第一次通過偉大的作品。第二次崩潰,如下所示。第二次打電話給AVAudioPlayer - > EXC_BAD_ACCESS(代碼發佈,我錯過了什麼?)

.H

AVAudioPlayer *player; 
@property (nonatomic, retain) AVAudioPlayer *player; 

.M

-(void)load:(NSURL *)aFileURL { 
if (aFileURL) { 

    AVAudioPlayer *newPlayer = 
    [[AVAudioPlayer alloc] initWithContentsOfURL: aFileURL 
         error: nil]; 

    [aFileURL release]; 
    self.player = newPlayer; // CRASHES HERE EXC_BAD_ACCESS with second MP3a 
    [newPlayer release]; 

    [self.player prepareToPlay]; 
    [self.player setDelegate:self]; 
} 
} 

我知道我必須錯過了一些東西,任何想法?

回答

0
[aFileURL release]; 

你不應該-release的URL -load:,因爲該功能並非所有者。 EXC_BAD_ACCESS可能是由於該URL的雙重釋放。

嘗試刪除此行。

+0

這就是你知道你一直在盯着屏幕太長!完全忘記了這一點。約旦時間到了一個休息,非常讚賞! – Jordan 2010-05-20 21:08:43

相關問題