В системном журнале Android есть много интересных вещей, которые полезны во многих отношениях.
- найти коренные причины проблем
- определить ненадлежащие приложения
Как я могу просмотреть и изучить журнал Android?
В системном журнале Android есть много интересных вещей, которые полезны во многих отношениях.
Как я могу просмотреть и изучить журнал Android?
Ответы:
Предпочтительным способом является загрузка SDK и его использование adb logcat
(требуется активировать «параметры разработчика» на устройстве).
Существуют приложения, доступные для просмотра полного системного журнала, однако они работают только на корневых устройствах или требуют ручного запуска команды, adb
чтобы заставить их работать. Для получения дополнительной информации см. Этот вопрос.
Вы можете либо загрузить SDK и использовать, adb logcat
либо получить Logcat Extrem из Google Play Store, где журнал отображается прямо на вашем телефоне.
Существует несколько каталогов, в которых могут отображаться журналы (в том числе журналы о сбоях) - не все они стандартизированы (то есть некоторые могут быть привязаны к ПЗУ).
/data/anr
: Некоторые файлы трассировки, похоже, попадают сюда (Dalvik записывает трассировки стека здесь в ANR, то есть «Приложение не отвечает» или «Force-Close»; см., Например, выдержки из журнала здесь )/data/dontpanic
кажется стандартным местоположением (AOSP) и содержит некоторые журналы сбоев, включая трассировки (см., например, viaForensics и StackOverflow )/data/kernelpanics
это другое место - у меня не было никакой «паники ядра» на моих устройствах Android, я пока не видел там никакого контента./data/panic/panic_daemon.config
может указывать на другие места , сконфигурированных - на моем Droid 2 он упоминает/sdcard/panic_data/
/data/panicreports
каталог (здесь пусто)/data/tombstones
может содержать несколько tombstone_nn
файлов ( nn
будучи серийным, увеличивается с каждым новым файлом). Поскольку надгробные плиты размещаются для мертвых, это делается здесь для «процессов, погибших в результате аварии» (т.е. сбой) - и это то, что называется «дампами ядра» в системах Linux / Unix. Однако не все приложения создают надгробия; это должно быть явно разрешено разработчиком (см. Отладка дампов ядра Android ).Может быть еще несколько мест, которые избежали меня; но поскольку большая часть записи ведется tmpfs
, эти данные теряются при перезагрузке и не соответствуют вопросу OP.
Несколько команд могут получить тонны информации. Для большинства из них рекомендуется перенаправить их в файл ( > filename.ext
) или передать через фильтр ( | grep search-for-this
):
Следующее работает без рута:
$ dmesg
<6>[82839.126586] PM: Syncing filesystems ... done.
<7>[82839.189056] PM: Preparing system for mem sleep
<4>[82839.189361] Freezing user space processes ... (elapsed 0.05 seconds) done.
<4>[82839.240661] Freezing remaining freezable tasks ... (elapsed 0.00 seconds) done.
<snip>
Здесь вы можете, например, указать, в какой области вы заинтересованы - радио, события ...
# logcat -b events
I/am_create_service( 3457): [1085416560,nitro.phonestats/.widget.WidgetProvider4x1$WidgetUpdateService4x1,,3721]
I/am_destroy_service( 3457): [1085416560,nitro.phonestats/.widget.WidgetProvider4x1$WidgetUpdateService4x1,3721]
I/notification_cancel( 3457): [nitro.phonestats,4,0]
<snip>
И тонны этого: особенности устройства, информация об учетной записи, услуги ...
$ dumpsys
Currently running services:
LocationProxyService
SurfaceFlinger
accessibility
account
activity
<snip>
DUMP OF SERVICE account:
Accounts:
1 Account {name=xxxxxxx@googlemail.com, type=com.google}
<snip>
$ dumpstate
========================================================
== dumpstate: 2012-08-18 23:39:53
========================================================
Build: Gingerbread GWK74 - CyanogenMilestone2
Bootloader: 0x0000
Radio: unknown
<snip>
------ MEMORY INFO (/proc/meminfo) ------
MemTotal: 487344 kB
MemFree: 10436 kB
<snip>
Сделайте большой шар со всем вместе, от logcat до dumpstate:
$ bugreport > /mnt/sdcard/bugreport.txt
Я уверен, что вы действительно хотите перенаправить эту последнюю команду ... xD
PS: Естественно, для доступа к этой информации может потребоваться root, так как большинство источников находятся во внутренней памяти.
Обнаружено, что CatLog отображает журнал Android немного лучше, чем aLogcat. Кроме того adb logcat
, это то, что я использую.
Метод без рута, который работает даже с новыми версиями Android:
Предпосылки:
Инструкции:
Terminal
Spotlight и откройте егоadb devices
чтобы убедиться, что ваше устройство правильно подключено.adb logcat
чтобы показать могучий и волшебный logcat aka stacktrace.(В основном скопировано с Леандроса )
Бесплатное приложение SysInfo ( Project Page ) будет отображать системные журналы, а также архивировать полный системный отчет для отправки по электронной почте, в Dropbox, NFC и т. Д. Не говоря уже о множестве другой интересной информации о системе.
Он расположен в /sdcard/bugreports
.