0

まず、AsyncTaskビットマップをダウンロードして、ビットマップを配列に含めるために使用します。

myBitmap[0] = task.execute().get();

私の最初の質問は、recycle()私の配列をBitmap使用してダウンロードするかどうかです

ASyncTask再び開始するActivityと、これはメモリに問題を引き起こすかどうかに関係なく発生します。

すべてをデバイスにダウンロードするBitmapと、エラーが確実に発生するためです。だから私は

それらを何度もダウンロードして削除する必要があります。

そして2番目の質問は、私がBitmap次のようにいくつか持っている場合です:

Bitmap newBitmap = myBitmap[0];

メモリを減らす必要がありrecycle()ますか?newBitmap

4

1 に答える 1

0

はい、メモリ使用量を減らすために recycle を呼び出す必要があると思います。1. 既存のビットマップの場所を上書きするとき 2. アプリを終了するときにすべてのビットマップを解放する 3. 一度に読み込まれたビットマップの数を監視する。

LruCache を使用してビットマップを管理することをお勧めします。ビットマップが最も頻繁に使用されるタブなどを保持する場合に役立ちます。

于 2013-02-26T13:32:54.383 に答える