BitmapFactory OOM napędza mnie

Szukałem dużo i wiem, że wiele innych osób ma takie same problemy z pamięcią OOMBitmapFactory. Moja aplikacja wyświetla tylko całkowitą dostępną pamięć 4 MBRuntime.getRuntime ().totalMemory(). Jeśli limit wynosi 16 MB, dlaczego całkowita ilość pamięci nie rośnie, aby zrobić miejsce na mapę bitową? Zamiast tego zgłasza błąd.

Nie rozumiem też tego, jeśli mam 1,6 MB wolnej pamięci zgodnie zRuntime.getRuntime().freeMemory() dlaczego pojawia się błąd mówiący „VM nie pozwoli nam przydzielić 614400 bajtów”? Wydaje mi się, że mam dużo dostępnej pamięci.

Moja aplikacja jest kompletna, z wyjątkiem tego problemu, który znika po ponownym uruchomieniu telefonu, aby moja aplikacja była jedyną działającą. Używam HTC Hero do testowania urządzeń (Android 1.5).

W tym momencie myślę, że jedynym sposobem na obejście tego jest uniknięcie używaniaBitmapFactory.

Każdy ma jakieś pomysły na ten temat lub wyjaśnienie, dlaczego VM nie przydzieli 614 KB, gdy jest 1,6 MB wolnej pamięci?

questionAnswers(5)

yourAnswerToTheQuestion