2012-06-16 35 views
23

私はインターネット\ goolge \ stackoverflow全体を見て、私のアンドロイドアプリにメモリリークがあるかどうかを知る方法を説明できる完全で簡単なガイドを見つけることができませんでした。 誰も私にそれをする方法を説明することができますか、それとも私にそれのための良いガイドを与えることができますか?Androidアプリにメモリリークがあるかどうかを確認するにはどうすればよいですか?

私のアプリはバッテリーに関するデータを収集し、それを電話機のDBに保存します。 バッテリの変更(ACTION_BATTERY_CHANGED)が変化するたびに、バッテリの割合が変更されているかどうかを確認します。この場合、データが保存されます。

このアプリは(25-30)MBのRAMを必要とします。これはあまりにも単純なapp.Iのためのあまりにも多くのメモリリークがあると思う。

答えて

23
1

の統合アプリケーションを使用し、それがメモリに

12メガバイト... 13.5メガバイトを蓄積しています場合.. .15 MB ...湿度を蓄積する雲などを考えてください。

あなたのアプリよりもこのパターンが見える場合は、メモリリークがあります。

もう1つの可能性は、リークはないが、あまりにも多くのオブジェクトや大きすぎるオブジェクトを使用すること、またはオブジェクトを十分に節約しないことです。 は、ビットマップが非常に高価であることを考慮して、メモリとリソースに制限のある環境であるアンドロイドでビットマップを処理することはそれほど簡単ではないかもしれません。

2

私はあなたと同じ問題に直面したとき、私はLeakCanaryを見つけました。デバッグビルドで実行時にメモリリークを検出するのに役立ち、スタックトレースの履歴に快適なUIを提供します。ここでは、メモリリークを検出するためのこのツールの詳細と、Android開発のその他のヒントとして、http://cases.azoft.com/4-must-know-tools-for-effective-android-development/を読むことができます。 あなたと他のモバイル開発者にとってうまくいきますように!

関連する問題