Android отлично справляется со своей задачей, скрывая суету от своих пользователей. Когда что-то идет не так, вы не видите пугающую стену загадочного текста, как на Mac. Они просто … Идут не так.
Хотя это отлично подходит для большинства людей, это менее полезно для разработчиков, которые хотят видеть, почему их приложения не работают, и для опытных пользователей, которые хотят использовать более практический подход.
Вот почему logcat так невероятно полезен. Это позволяет получить дамп системных журналов вашего телефона или планшета для устранения неполадок. Хотя большинство пользователей не используют его, разработчики иногда просят пользователей предоставить им файлы журналов своего устройства при возникновении проблемы. Вот как вы можете установить logcat и как его использовать.
Получение Logcat
Прежде чем вы начнете создавать системные журналы, вам необходимо выполнить некоторые предварительные условия. Во-первых, установить Android Debug Bridge, широко известный как ADB.
, Содержит инструмент Logcat.
Если вы на Mac, как и я, самый простой способ сделать это — использовать менеджер пакетов HomeBrew
, После установки вам просто нужно запустить «brew install android-platform-tools».
Если вы работаете в Linux, шаги, необходимые для установки ADB, будут сильно отличаться в зависимости от дистрибутива. Если вы работаете в Ubuntu, вам просто нужно запустить «sudo apt-get install android-tools-adb».
Наконец, если вы работаете в Windows, у вас есть несколько вариантов. Во-первых, XDADevelopers имеет установщик ADB одним щелчком, который включает необходимые драйверы и FastBoot. Кроме того, вы можете установить его через менеджер пакетов Chocolatey, хотя доступная версия не самая новая.
Переведите ваше устройство в режим разработчика
Далее вы собираетесь включить режим разработчика на вашем устройстве. Для этого откройте настройки и перейдите к «О телефоне» или «О планшете». Затем прокрутите вниз до нижней части экрана и коснитесь «Номер сборки» семь раз. Как только вы это сделаете, он должен сообщить вам, что вы вошли в режим разработчика.
Нажмите назад и перейдите в корневой каталог настроек, где вы должны увидеть что-то с надписью «Параметры разработчика». Нажмите это.
Затем включите отладку по USB
и подключите устройство Android к компьютеру. Если все работает нормально, на вашем устройстве должно появиться строгое предупреждение.
Глядя на бревна
Теперь мы можем начать просматривать журналы. Откройте новый терминал или командную строку и запустите «adb logcat». Затем вы должны увидеть системные сообщения, расположенные каскадом вниз по окну вашего терминала. Если нет, значит, что-то пошло не так. Либо ваше устройство не подключено к вашему компьютеру, либо неправильно установлен ADB, либо на вашем устройстве не запущена отладка по USB.
Итак, что если вы хотите скопировать системные сообщения телефона или планшета в текстовый файл для последующего анализа? Ну, синтаксис для перенаправления вывода такой же в Windows, как и на Mac. Просто запустите «adb logcat> textfile.txt». Вы также можете сделать это, запустив «adb logcat -f filename».
Получив файл журнала, вы можете проанализировать его с помощью Sed и Awk.
или Grep, или вы можете просто отправить его разработчику, который его запросил.
Стоит отметить, что logcat будет работать столько, сколько вы скажете. Если вы копируете выходные данные в текстовый файл и забыли разорвать соединение, вы не удивитесь, если у вас не останется места на жестком диске. Чтобы закрыть его, просто нажмите CTRL-C.
Как скажет любой, кто когда-либо работал в DevOps или системном администрировании, файлы журналов могут легко растягиваться на десятки гигабайт и более. Вы были предупреждены.
Примечание о фильтрации вывода
Стоит отметить, что вы можете указать logcat расставить приоритеты для определенных типов вывода. Если вы запустите logcat с флагом «V» («adb logcat V»), вы увидите абсолютно все. Это потому, что вы включили «подробный режим».
Но есть и другие триггеры, которые показывают более конкретные типы сообщений об ошибках. Триггер «I» показывает только информацию о вас, а «D» показывает сообщения отладки. Для получения дополнительной информации ознакомьтесь с официальной документацией по Android Debug Bridge.
Хотя стоит отметить, что если вам не сказали иначе, лучше всего запустить logcat с настройками по умолчанию. Это сделано для того, чтобы человек, который запросил файл журнала, мог получить всю информацию, необходимую ему для исправления своего приложения, и он ничего не пропустил.
Есть ли решение для корневых устройств?
На самом деле да! Если у вас есть рутированный телефон или планшет, вы можете установить «aLogCat» из Google Play Store. Это входит в бесплатную версию и платную версию. Оба идентичны, хотя последний поддерживает разработчика в финансовом отношении.
Отличительной особенностью aLogCat является то, что он работает непосредственно на вашем устройстве и обладает некоторыми функциями, облегчающими работу с журналами ошибок.
Сообщения подсвечиваются, что позволяет визуально увидеть, какие сообщения являются ошибками, а какие — безобидными системными уведомлениями. Вы также можете поделиться ими по электронной почте, Bluetooth и PasteBin через PasteDroid.
Если вы хотите непрерывно сохранять свои журналы непосредственно на SD-карту, вам придется загрузить другое приложение под названием aLogRec. Это также поставляется в бесплатной и бесплатной версиях, и ее можно приобрести в магазине Google Play.
Но что, если вы хотите просматривать и редактировать файлы журнала прямо на вашем телефоне? Для этого я рекомендую Vim Touch — бесплатную мобильную версию текстового редактора VIM.
, Я впервые написал об этом несколько лет назад, когда обсуждал лучшие способы настройки среды разработки PHP на устройстве Android
,
Прежде чем закончить, хочу отметить, что рутинг вашего телефона может привести к тому, что ваш телефон будет более подвержен вредоносным программам, а некоторые приложения (особенно банковские приложения) не будут работать.
Если вы рассматриваете возможность рутирования вашего устройства
просто чтобы получить ваши файлы журнала, я сильно рекомендую вместо этого использовать привязанный подход на основе АБР. Это так же просто и намного безопаснее.
К вам!
Вам когда-нибудь приходилось брать системный журнал телефона или планшета? Как так? Вам было легко? Какой метод вы использовали? Позвольте мне знать в комментариях ниже.