Debug logger ui что за программа на Андроид

Для отладки приложений могут быть использованы всплывающие сообщения Toast. Однако это не эффективно. Android SDK включает средство просмотра отладочных сообщений Logcat. Оно не представляет сложности в освоении, поэтому широко используется программистами.

Logcat позволяет просматривать отладочные сообщения не только разрабатываемого приложения, но и протоколируемые системой сообщения. Так, например, Garbage Collection периодически протоколирует свои сообщения о выполнении определенных действий («сборке мусора»), которые можно просматривать с помощью Logcat.

Для протоколирования сообщений необходимо использовать класс android.util.Log, позволяющий объединять сообщения по категориям. В следующем списке приведены методы класса Log, отсортированные по приоритету (важности) от высшего к низшему :

  • Log.e(String, String) — ошибка (error)
  • Log.w(String, String) — предупреждение (warning)
  • Log.i(String, String) — информация (info)
  • Log.d(String, String) — отладка (debug)
  • Log.v(String, String) — подробно (verbose)

Пример протоколирования

private static final String TAG = «MyActivity»; . Log.i(TAG, «MethodName : get item number » + item.id);

В качестве первого параметра методов Log используется текстовый тег (в примере переменная TAG). Если имеется необходимость в качестве тега сообщения определить наименование класса, то можно использовать следующее определение :

Как начать пользоваться ADB Android «для чайников»


private static String TAG = this.getClass().getSimpleName();

Панель Logcat в Studio

Logcat в среде разработки Android Studio располагается на отдельной вкладке, интерфейс которой представлен на следующем скриншоте. Слева вертикально располагаются кнопки управления сообщениями : очистка, перемещение по списку и т.д. Интерес представляет расположенный сверху справа компонент с выпадающим списком/меню.

Если выбрать представленный на скриншоте пункт «Edit Filter Configuration», то можно определить фильтр сообщений, окно которого изображено на следующем скриншоте.

Фильтр сообщений

Logcat позволяет создать набор из нескольких фильтров. Достаточно только для каждого фильтра определить его наименование «Filter Name» и тег сообщений «Log Tag». Значение тега сообщения регистрируется классом android.util.Log.

Создадим простой пример протоколирования сообщений. В примере переопределим методы активности; в каждом методе будем протоколировать соответствующее сообщение.

Читайте также:
Карты в смартфоне что это за программа и нужна ли она

Листинг активности

После старта приложения переходим на вкладку Locat и просматриваем список регистрируемых сообщений. Чтобы исключить сообщений системы установим фильтр State (справа, сверху). После этого можно менять ориентацию устройства (portrait => landscape => portrait) и контролировать список сообщений.

Что такое лог (log) программы

Протоколируемые сообщения можно просматривать не только с помощью Logcat. Они также попадают и на вкладку Run (см. следующий скриншот), но только с ме́ньшей функциональностью (отсутствует время регистрации, нельзя фильтровать и т.д.).

Формат сообщения

Logcat представляет сообщения в определенном формате : «date time PID-TID/package priority/tag: message». Поле даты (date) имеет формат MM-DD (месяц–день). Формат времени (time) HH24:MI:SS.SSS (часы:минуты:секунды.мс) включает милисекунды. Значения идентификаторов процесса PID и потока TID могут совпадать, если существует только один поток. Пример сообщения : 02-08 08:43:51.557 11608-43308/com.android.test.p08activity D/ACTIVITY_STATE: onStop.

Английский вариант полного описания Logcat.

Контроль протоколирования, BuildConfig

На этапе разработки приложения вывод отладочных сообщений, конечно же, полезен и необходим. Но что делать с этими сообщеними в готовом релизе? Если проект включает несколько модулей с различными тегами отладочных сообщений, то подготовка очередного релиза потребует определенных усилий с ручным удалением отладочных сообщений и комментариев. Иногда программисты используют условные выражения для вывода сообщений/комментариев. Например :

public static final boolean IS_RELEASE = false ; public final String TAG_init = «INIT»; . . . public void WriteLog(String tag, String message) < if (!IS_RELEASE) Log.v(tag, message); >. . . WriteLog(TAG_init, «Read resources»);

В этом примере сообщения будут протоколироваться в отдельной процедуре WriteLog только если IS_RELEASE=false. Одним движением (IS_RELEASE=true) можно блокировать протоколирование сообщений перед созданием готового apk-файла.

Начиная с 17-ой версии Android Build Tools в приложении автоматически формируется класс BuildConfig, содержащий статическое поле DEBUG с признаком отладочной сборки. При использовании данного класса перед протоколированием необходимо выполнить следующую проверку :

if (BuildConfig.DEBUG)

Объект BuildConfig можно расширить и включить в него свой «тег». Для этого необходимо внести соответствующие изменения в секцию buildType сборочного build.gradle файла проекта. Вот как может выглядеть секция buildType для тега ACTIVITY_STATE :

buildTypes < release < minifyEnabled false buildConfigField «boolean», «ACTIVITY_STATE», «false» >debug < buildConfigField «boolean», «ACTIVITY_STATE», «true» >releaseWithLog.initWith(buildTypes.release) releaseWithLog < buildConfigField «boolean», «ACTIVITY_STATE», «true» >>

Читайте также:
Ai search что это за программа

Конфигурация releaseWithLog будет релизной сборкой с протоколированием. Соответственно в коде приложения необходимо будет выполнять следующую проверку :

if (BuildConfig.ACTIVITY_STATE) < // протоколирование . >

В IDE Android Studio файл build.gradle (Module: module_name) располагается в директории Gradle Scripts.

Источник: java-online.ru

Урок 12. Логи и всплывающие сообщения

Создадим в main.xml экран, знакомый нам по прошлым урокам про обработчики:

Алгоритм приложения будет тот же. По нажатию кнопок меняется текст. Обработчик — Activity.

Сохраним, запустим. Убедимся, что все работает.

Логи приложения

Когда вы тестируете работу приложения, вы можете видеть логи работы. Они отображаются в окне LogCat. Чтобы отобразить окно откройте меню Window > Show View > Other … В появившемся окне выберите Android > LogCat

Должна появится вкладка LogCat

Рассмотрим эту вкладку подробней. Логи имеют разные уровни важности: ERROR, WARN, INFO, DEBUG, VERBOSE (по убыванию). Кнопки V D I W E (в кружках) – это фильтры и соответствуют типам логов. Опробуйте их и обратите внимание, что фильтр показывает логи не только своего уровня, но и уровней более высокой важности. Также вы можете создавать, редактировать и удалять свои фильтры – это мы рассмотрим чуть дальше.

Давайте смотреть, как самим писать логи. Делается это совсем несложно с помощью класса Log и его методов Log.v() Log.d() Log.i() Log.w() and Log.e(). Названия методов соответствуют уровню логов, которые они запишут.

Изменим код MainActivity.java. Возьмем все каменты из кода и добавим в DEBUG-логи с помощью метода Log.d. Метод требует на вход тэг и текст сообщения. Тэг – это что-то типа метки, чтобы легче было потом в куче системных логов найти именно наше сообщение. Добавим описание тега (TAG) и запишем все тексты каментов в лог.

Eclipse ругнется, что не знает класс Log. Обновите импорт (CTRL+SHIFT+O) и, если спросит, выберите android.util.Log. Запустим приложение, понажимаем кнопки и посмотрим логи

Видно, что все отлично записалось. Чтобы сделать просмотр удобней, создадим свой фильтр. Жмем значок +

Читайте также:
Парциальные программы в доу по фгос что это означает

Имя фильтра произвольное, например, «My logs». Log Tag – это как раз значение константы TAG, которая описана в нашем коде и использовалась в методе Log.d, т.е. — «myLogs». Pid оставляем пустым, это id процесса. Уровень поставим Debug

и жмем OK. Появилась новая вкладка My logs, на которой отображаются логи, соответствующие только что созданному фильтру.

Зняття логів на Android-пристроях

Зняття логів на Android-пристроях

Однією з найнеобхідніших навичок QA-інженера під час тестуванні мобільних додатків є зняття логів помилок або ж екстреного завершення роботи тестованого додатку (crash- логів). Сьогодні ми з вами розберемося, що ж таке логи, для чого вони потрібні, і розглянемо деякі способи їх зняття на девайсах з Android.

Спершу давайте з вами все-таки розберемося, що ж таке логи?

Логи (чи як їх ще називають лог-файли ) – це файли, які містять інформацію про роботу сервера або комп’ютера, в які записуються певні дії програми, а також всі дії користувача над нею. Також іноді можна почути україномовний аналог поняття – журнал.

Для чого взагалі потрібні логи? Їх призначенням є протоколювання операцій, що виконуються пристроєм, для подальшого їх аналізу.

Якщо розглядати значення логів у рамках QA-професії, то для тестувальника ПЗ головним завданням є грамотне витягування цих самих логів при відтворенні помилки для детальнішого опису проблеми. Якщо тестувальник все зробив правильно, то розробникові буде набагато легше розібратися, в чому саме полягає проблема та знайти шляхи її вирішення.

Тож яким же способом ми можемо зняти логи з Android девайса?

Утиліта «Minimal ADB»

Найпростішим і найшвидшим способом є зняття логів за допомогою LogCat .

Процес налаштування умовно можна розділити на три * частини:

  1. Підготовка пристрою.
  2. Встановлення «Minimal ADB» на ПК.
  3. Зняття логів.

*Надалі перші 2 кроки повторно виконувати не треба.

Тепер розглянемо ці частини детальніше.

1. Підготовка пристрою

Перше, з чого треба почати – це активація режиму розробника на мобільному пристрої.

Для цього потрібно:

  1. Перейти до налаштування пристрою.
  2. Натиснути кнопку «Про телефон».
  3. Далі натиснути розділ «Відомості про ПЗ».

Источник: training.qatestlab.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru