Androidのオーバーレイアイテムとして、デバイスの画面と同じ高さと幅の画像をプロットしています。しかし、画像の数がアプリを超えるとOut of Memoryエラーが発生します - ビットマップはVMの予算を超えています。リサイクルしようとすると、リサイクルされたビットマップを使用しようとするキャンバスとしてエラーが発生します。私が必要とするのは、地図上にたくさんの画像をプロットする最善の方法を持つことです。画像はサーバーから送られ、画像もキャッシュする必要があります。私はLinkedHashMapでこれをやっていますが、キャッシュ可能な場合は、ドロアブルオブジェクトを格納しているので、これでも問題が発生すると思います。メモリ不足エラー - マップでビットマップを使用しているときにビットマップがAndroidでVM予算を超えていますか?
地図上に大きなビットマップをプロットする例はありますか?
はい、関連する問題が見つかりました。私もリサイクルしようとしましたが、キャンバスがリクライニングされたビットマップを使用しようとしているので、別のエラーが報告されたので、それは私のためには機能しません。 – sunil
私はリサイクルがイメージによって使用されるメモリを廃棄すると考えています。リサイクルする場合は、オーバーレイからグラフィックを削除する必要があります。いくつのオーバーレイを描画していますか?各画像(画像とバイト)の大きさはどれくらいですか?あなたのアプリは他の場所で多くのメモリを使用していますか(例えば、DOMパーサは実際にメモリを消費しますか? – Kurru
画像はデバイスの画面の幅と高さに等しくなります。サイズは約5kb t0 8kbです。私はDOMパーサを使用せず、JSONレスポンスだけを解析しています。 – sunil