2011-09-28 23 views
1

特定の操作を何回か繰り返した後にアプリがクラッシュすることがあります。一般に、1つのメモリレベルがトリガーされた後に発生します。ビューがロードされています。この問題はシミュレータでは再現できません。クラッシュ情報のないデバイスでiOSアプリがクラッシュする

各実行時に軽微なメモリリークがありますが、メモリ使用量は非常に低くなります(「割り当てとリーク」を参照)。私はコードを削除しましたが、問題は解決しません。

問題は、コンソールにメッセージがなく、クラッシュログがないため、問題をデバッグしています。

提案がありますか?

+0

[クラッシュなしのクラッシュログ?](http://stackoverflow.com/questions/7416702/crash-log-without-crash) –

+0

これはすべてのレスポンスがクラッシュに関連付けられているため、重複していません。いくつかのデバッグ情報はEXC_BAD_ACCESSまたはSIGABRTで表示されます –

答えて

1

メモリリークの検索については、Memory leak detection tools in Xcodeで説明します。

メモリリークは予測できない影響を引き起こす可能性があるため、メモリリークを検出するのは困難です。 xcodeでLeakツールを使用し、コードを実行します。メモリ管理に関するプログラミングガイドを調べることは価値があるかもしれませんが、そうしないと何かをリリースするかもしれません(あるいは逆もあります)。問題は、必ずしもあなたが考えるところにあるとは限りません。

あなたのコードを細かくチェックして、何かがうまくいくと思っていても、必ず確認してください。そうでないと驚くかもしれません。

+0

hmm ..困惑しているのは、アプリケーションのメモリが不足していないことです...私はメモリリーク検出に精通しています...しかし、私の問題は、アプリケーションがクラッシュしたときにクラッシュログが作成されないようにする条件。 –

1

OpenGLは、不明瞭なクラッシュを引き起こす可能性があります。

私はOpenGLコードで保持サイクルを持っていました。

私のカスタムUIViewには、GLKViewサブビューがありました。このサブビューは決して解放されず、クラッシュにつながる可能性があります。解決策は、strongの代わりにweakを使用することでした。

@property (strong, nonatomic) GLKView* glkView; // Crash, no crash report, no errors 
@property (weak, nonatomic) GLKView* glkView; // this works 

ログにエラーはありませんでした。クラッシュレポートはありません。私は例外をスローすることができますが、例外はスローされませんでした。私はどこにでもNSLogを挿入しましたが、有用なものは何も明らかにしていませんでした。私はゾンビを有効にしましたが、珍しいことに気付かなかった。

関連する問題