1

我正在编写一个使用 AVPlayer 来显示视频的 iPad 应用程序。有按钮可以跳转到视频的各个部分,当用户旋转设备时,我会更改包含 AVPlayer 层的视图的大小。

我的问题是,在设备方向发生一定程度的变化并在视频中跳转后,应用程序崩溃了。

我启用了 NSZombie - 这不会中断。我在我的代码中启用了一个断点来捕获异常——这不会中断。我已经运行了仪器并且代码没有泄漏。

分配只是显示“总字节数”随着每个动作不断增长,直到达到 14 meg 并且键盘崩溃。

我觉得我没有办法追根究底。我错过了解决这个问题的一些技巧吗?AVPlayer 发布时需要特殊处理吗?

任何帮助,非常感谢。

4

1 回答 1

0

使用工具检查您的分配。我最近遇到了一个非常相似的问题,没有内存泄漏,但是每次启动特定的 ViewController 时,我的总体字节都会不断增长(最终会崩溃)。

事实证明,ViewController 本身作为另一个类的委托是一个强引用(oops),每次我关闭 ViewController 时,其他类仍然有对它的引用。因此,每次我启动并关闭这个 ViewController 时,我都会创建另一个永远不会死(并且永远不会泄漏)的实例。

您的确切问题可能有所不同,但您应该能够通过查看分配来了解总体字节增长的原因。

于 2012-05-09T12:59:08.470 回答