2012-05-07 7 views
1

私はAVPlayerを使ってビデオを表示するiPadアプリを書いています。ビデオのさまざまな部分にジャンプするボタンがあり、ユーザーがデバイスを回転させると、AVPlayerレイヤーを保持するビューのサイズが変更されます。iOSクラッシュ - リークなし、NSZombieを有効にしていて例外が発生しない

私の問題は、一定量のデバイス方向が変更され、ビデオの周りをジャンプすると、アプリケーションがクラッシュすることです。

NSZombieを有効にしました。これは中断しません。 例外をキャッチするために私のコードでブレークポイントを有効にしました。これは中断しません。 私は器具を使いましたが、コードは漏れていません。

割り振りは、14 MBのヒットとパッドがクラッシュするまで、すべてのアクションで成長し成長していることを示しています。

私はこれの底に到達する方法がないように感じる。私はこれを解決するためのいくつかのトリックを欠いていますか? AVPlayerはリリース時に特別な扱いが必要ですか?

何か助けてください。

+0

コンソールはあなたに何を伝えますか? – pho0

+0

具体的には、「LowMemory」ログファイルのロギングについて言及していますか? – mbm29414

+0

他のいくつかのTestFlightチェックポイントのコンソール内の唯一のメッセージは、 "Received memory warning"です。クラッシュ前の約250ミリ秒。 – theDuncs

答えて

0

計器を使用して割り当てを確認してください。私は最近、メモリリークのない非常に似た問題を抱えていましたが、特定のViewControllerを起動するたびにOverall Bytesが増え続けました(そして最終的にクラッシュする)。

ViewController自体が別のクラス(oops)への委任として強力な参照であり、ViewControllerを破棄して他のクラスにまだ参照が残っていることが判明しました。したがって、私はこのViewControllerを起動して却下するたびに、決して死ぬことのない別のインスタンスを作成します(漏れはありません)。

あなたの正確な問題は異なる場合がありますが、割り当てをチェックすることで、全体のバイト数が増える理由を確認できるはずです。

+0

SteveBありがとうございます。この問題は単一のViewController内で発生しており、割り振りには数千もの小さな割り当てがあり、それほど大きなものはありません。割り当てリストをより完全に分析して、パターンを見つけることができるかどうかを確認します。本当にありがとう。 – theDuncs

関連する問題