Подтвердить что ты не робот

Инструмент анализа памяти в android?

Я просто хочу знать, как работать с инструментом анализатора памяти в android. Скажите, пожалуйста, как это сделать, чтобы узнать о утечке памяти для конкретного проекта. Может ли кто-нибудь дать мне пошаговую процедуру для этого.

4b9b3361

Ответ 1

  • Открыть перспективу DDMS в Eclipse.
  • Выберите вкладку "Устройства".
  • Выберите процесс, для которого вы хотите создать дамп.
  • Нажмите кнопку Dump HPROF file. Дамп будет выполнен, и окно MAT будет открыто, если предполагается, что MAT установлен.
  • Выберите "Отчет о подозрениях в утечке" в окне мастера и нажмите "Готово".

Это все. Вы увидите список возможных утечек, но некоторые из них являются ложноположительными. Я рекомендую вам запустить действие, которое вы хотите проверить утечки в несколько раз, а затем снова запустить MAT.

Ответ 2

Попробуйте Использование инструмента анализатора памяти (MAT)

Посмотрите на эти статьи:

Также посмотрите на эти сообщения SO:

Ответ 3

Записывать hprof не удается, если вы не использовали android.permission.WRITE_EXTERNAL_STORAGE. В качестве особого случая, когда вы тестируете устройство, проверьте, подключена ли ваша SD-карта в режиме ТОЛЬКО ТОЛЬКО ДЛЯ ЗАКАЗА, иначе вы не будете иметь доступ на запись на SD-карте.

Ответ 4

  • Установите MAT.

  • Перейдите в Инструменты- > Android → Монитор устройств Android (DDMS)

  • В левой верхней части страницы Устройства выберите название проекта и нажмите Обновить кучу.

  • Затем нажмите Дамп HPROF и сохраните его на рабочем столе.

  • Затем запустите командную строку и укажите каталог Android-sdk.

    Пример: hprof-conv находится в каталоге E. Поэтому запустите команды cd android/sdk/platform-tools.

  • Затем, наконец, запустите эту команду, указав этот doc, чтобы преобразовать этот формат файла, чтобы прочитать его в MAT.

    E:\Android\sdk\platform-tools > hprof-conv "C:\Users\Steve\Desktop\yourfilename.hprof" "C:\Users\Steve\Desktop\leakage.hprof"

  • Теперь ваш файл будет преобразован в testage.hprof.check этот файл и откройте его в MAT.

Изменить: Нажмите данные, затем отобразите имена классов. В этом Left Click -> Path To GC Roots ->With all references. Затем он отображает имя класса.

Ответ 5

Квадратный открытый инструмент анализа памяти: LeakCanary.

Ядром LeakCanary является MAT.

Ответ 6

Я бы рекомендовал взглянуть на Leak Canary. Это не анализатор памяти как таковой, а больше детектор утечки. Просто используйте приложение, открывайте и закрывайте действия и позволяйте библиотеке выполнять эту работу. Он даже расскажет вам о том, где произошла утечка. Просто дайте анализу утечки некоторое время, чтобы выполнить свою работу после того, как произошла утечка - обычно это занимает около 2 минут или более, пока не обнаружен источник утечки.

Ответ 7

Обновите версию для Android версии 1.4 или 1.5. В этой версии Android поддерживает новый инструмент, называемый Analyzer Task Очень полезно избегать утечки памяти.