Проблема с памятью Android - PullRequest
2 голосов
/ 09 ноября 2010

Привет
Мне нужно загружать разные файлы (изображения, видео и аудио).Но система падает из-за нехватки памяти.
У меня много элементов управления, и у каждого разные слушатели.Пожалуйста, укажите мне лучший способ, которым я должен идти, чтобы я эффективно использовал память.
Когда я проверил с помощью затмения DDMS, память ползет с экрана на экран.И когда я загружаю один раз, то память не удаляется.Я сохранил все файлы в SDCard и на момент загрузки это с помощью

FileBody bin = new FileBody(new File (path/filename) ,Fileformat); 

Я думаю, что память, используемая здесь, также нераспределена.Я объявил об этом в локальной области функций, надеясь, что GC справится с этим, когда область исчезнет.Но это не происходит для меня.
Пожалуйста, помогите мне, что мне нужно сделать здесь?Есть ли способ явно вызвать GC на некоторых объектах?Как удалить объект данных объекта?От затмения DDMS я понял, что это объект данных, который использует основную часть моей памяти.Которые все подпадают под это?
Спасибо

Ответы [ 2 ]

0 голосов
/ 06 марта 2011

Попробуйте также реализовать потоковую передачу везде, где можете. Вы также можете опрокинуть сборщик мусора, набрав null объекты, которые вам больше не нужны, и / или вызвав System.gc()

0 голосов
/ 01 февраля 2011

Вы пытались использовать org.apache.http.entity.FileEntity для создания объекта http post?Содержимое этого объекта http будет автоматически передаваться из данного файла с оптимизированным использованием памяти и процессоров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...