BitmapFactory OOM me deixando louca

Eu tenho feito muita pesquisa e sei que muitas outras pessoas estão tendo os mesmos problemas de memória OOM comBitmapFactory. Meu aplicativo só mostra uma memória total disponível de 4 MB usandoRuntime.getRuntime ().totalMemory(). Se o limite é de 16 MB, então por que a memória total não aumenta para criar espaço para o bitmap? Em vez disso, lança um erro.

Eu também não entendo que, se eu tenho 1,6MB de memória livre de acordo comRuntime.getRuntime().freeMemory() Por que recebo um erro dizendo "VM não nos permite alocar 614400 bytes"? Parece-me que tenho muita memória disponível.

Meu aplicativo está completo, exceto por esse problema, que desaparece quando eu reinicializo o telefone para que meu aplicativo seja a única coisa em execução. Estou usando um HTC Hero para teste de dispositivos (Android 1.5).

Neste ponto eu estou pensando que a única maneira de contornar isso é de alguma forma evitar o usoBitmapFactory.

Alguém tem alguma idéia sobre isso ou uma explicação de por que a VM não aloca 614KB quando há 1,6 MB de memória livre?

questionAnswers(5)

yourAnswerToTheQuestion