これがバグなのか、心配する必要があるのか どうかはわかりません。私は Eclipse MAT プラグイン (Memory Analyzer Tool) にかなり慣れていませんが、 Leak Suspect Reportを実行すると、次のようになります。
さらに見ると、これは私が見ているものです:
現在、私のアプリでは、オブジェクトに OpenGL テクスチャとして適用する約 8 つのビットマップをロードしています。これが完了したら、すべてのビットマップで.recycle()を呼び出し、それらをnullに設定します。これに加えて、スプラッシュスクリーンとして機能する View クラスがあります。このクラス内に、ロード、スケーリング、および表示される 1 つのビットマップがあります。それからまた、リサイクル。
しかし、これは本当に奇妙な部分です。問題をテストして追跡するために、プロジェクト全体のビットマップへのすべての参照を削除しました。すべての宣言、すべての作成、すべてのリサイクルの呼び出しなど...完全に削除されました。その後、未使用のインポートも削除しました。
もちろん、これにより私のアプリケーション (ゲーム) は空白の画面を表示するだけでまったく役に立たなくなりますが、リーク容疑者レポートを再度実行すると、この謎のビットマップがまだ存在しています!
生データを保存して、 Gimp グラフィック エディターで開いてみましたが、アルファ チャネルだけを含むやや「空白」の画像のように見えます。私が認識できるものは何もありません。
これはある種のバグですか、それとも実際の問題ですか? 犯人を追跡するのに役立つアドバイスをいただければ幸いです。
これは、Android 4.4.4 を実行している Google Nexus 10 タブレットで実行されています。
編集
mGlow が原因のようです。これが何であるかはわかりませんし、明示的に実装していません。多分バグ?これを無効にする方法はありますか?