相关疑难解决方法(0)

如何为项目中的单个文件禁用ARC?

我在我的项目中成功使用ARC.但是,我遇到了一些文件(例如,在单元测试和模拟对象中),其中ARC的规则现在更加脆弱.我记得听说有一种方法可以在每个文件的基础上禁用ARC,但我无法找到这个选项.

这可能吗?如何基于每个文件禁用ARC?

xcode objective-c automatic-ref-counting manual-retain-release

1332
推荐指数
14
解决办法
33万
查看次数

使用ARC从NSURL和AVAudioPlayer泄漏

我是iPhone 4S上的runung Instruments.我在这个方法中使用AVAudioPlayer:

-(void)playSound{
    NSURL *url = [self.word soundURL];
    NSError *error;
    audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
    if (!error) {
        [audioPlayer prepareToPlay];
        [audioPlayer play];
    }else{
       NSLog(@"Problem With audioPlayer on general card. error : %@ | url %@",[error description],[url absoluteString]);
}
Run Code Online (Sandbox Code Playgroud)

我在播放声音文件时遇到泄漏:

泄漏的物体:

1.

对象:NSURL

负责任的图书馆:基金会

负责框架:基金会 - [NSURL(NSURL)allocWithZone:]

2.

对象:_NSCFString

负责任的图书馆:基金会

负责框架:基础 - [NSURL(NSURL)initFileURLWithPath:]

仪器没有直接指向我的代码,因此我发现很难找到泄漏原因.

我的问题

什么可能导致泄漏? 或者当我对代码不负责时,如何定位泄漏?

编辑 这是仪器周期视图中的模式: 在此输入图像描述 谢谢Shani

memory-leaks nsurl instruments ios

20
推荐指数
1
解决办法
4080
查看次数