【发布时间】:2019-07-03 01:54:17
【问题描述】:
我的 Xcode 应用播放许多不同的音频文件。似乎存在最终导致应用程序崩溃的内存泄漏。我应该释放音频播放器的内存吗?我需要什么额外的代码来发布这些?我有大约 400 个音频文件。
NSString *file1Path = [[NSBundle mainBundle] pathForResource:@"50"ofType:@"mp3"];
NSURL *file1URL = [[NSURL alloc] initFileURLWithPath:file1Path];
file1Player = [[AVAudioPlayer alloc] initWithContentsOfURL:file1URL error:nil];
[file1Player play];
我可以添加这段代码吗?
-(void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
[file1Player release];
file1Player=nil;
}
【问题讨论】:
-
感谢您的回复。 1,不,我还没有为玩家设置委托。我去做。接下来我必须正确设置
file1Player.delegate = self;?我是否在每个音频播放器块中添加此语句? 2.我不想使用手动释放,但我不知道如何解决内存问题。 3. 我试过分析仪,是的,有很多泄漏,基于音频播放器设置。 -
谢谢。我正在使用一个旧应用程序来创建一个新应用程序,但它没有打开 arc。这可能是整个问题。
标签: objective-c xcode memory-leaks avaudioplayer