ハニカムの前に、ビットマップobejectはネイティブヒープ メモリスペース(mallocを使用)のポインタに過ぎず、私はそのネイティブメモリを.recycle()呼び出してきれいにすることができました。ハニカムの後、ビットマップ用のメモリはgc呼び出しを取得するアプリケーションヒープに割り当てられます。ビットマップメモリリーク
私の質問は、私のアプリが2.2+をサポートする必要があるので、どうすればよいですか?バージョンと電話番号を確認しますか?リサイクルをしないでください。あなたのアドバイスは何ですか?ビットマップインスタンスを保持するBitmapCacheを持っているので、それらを永遠にメモリに残したくないからです。
私は弱い参照を持っている場合は、GCは、右私のためにそれの世話をするのだろうか?私の実装では、以前のバージョンのリサイクル()を呼び出す必要がありますか?そのリサイクルはいつ呼びなければなりませんか?なぜこのチュートリアルでは、http://developer.android.com/training/displaying-bitmaps/cache-bitmap.html彼らはSoftとWeek Referencesを使用することは推奨されないと言いましたか? –
ビットマップを終了するときはいつでも、バージョンに関係なくrecycle()を呼び出してから、nullに設定する必要があります。それはあなたがいつ呼び出すべきかについてあなたがしたいことに依存します。 ビットマップを削除して新しいものを作成するのではなく、ビットマップを再利用する傾向があります。 –