Обработка нескольких растровых изображений на Android - PullRequest
2 голосов
/ 20 апреля 2011

Я создаю приложение для Android, которое в основном отвечает на события касания, когда происходит событие касания, я определяю, какое действие выполнить, и воздействую на него.Действие состоит из отображения разных растровых изображений, поэтому действие, по сути, является анимацией:

- OnTouchEvent -> draw Bitmaps on SurfaceView  

Обычно 1 анимация состоит из 20-30 изображений размером 28 КБ.Поскольку мне нужно, чтобы приложение было очень отзывчивым, я не могу выделять и освобождать память на основе «на прикосновение», поэтому я хотел, чтобы все битмапы были загружены (что должно быть около 12 МБайт)

Однако, когда я достигаю около0,5 МБ загруженных изображений:

E/AndroidRuntime(10553): java.lang.OutOfMemoryError: bitmap size exceeds VM budget
E/AndroidRuntime(10553):    at android.graphics.BitmapFactory.nativeDecodeByteArray(Native Method)

Снова и снова .... есть идеи?Можно ли рисовать изображения на холсте без создания растровых изображений?Могу ли я конвертировать файлы JPG в растровые изображения без использования BitmapFactory?(Я читал здесь: BitmapFactory OOM сводит меня с ума , что главная проблема заключается в том, что в растровых данных используется Native Heap вместо кучи VM)

Любая помощь очень ценится: DЗаранее спасибо,Ze

...