我有一个简单的小音乐播放器,用于在 10.8 下使用 AVFoundation。它工作得很好,但我最近才被介绍给 ARC,这给我带来了一些麻烦。
该应用程序是基于文档的,大量必要的代码位于预制的 Document.h/.m 文件中。头文件中定义了一个 __strong AVAudioPlayer 对象,实现中的所有函数都使用该对象来播放音频文件。文件使用标准的 readFromURL: 方法加载。
关闭文档时,文件不会被释放,甚至会继续播放。如果 AVAudioPlayer 设置为 weak,它几乎会立即被释放并且文件将不再播放。
我在这里缺少什么吗?我知道我不能在 ARC 下手动释放,那么是什么让对象被捆绑?