Если вам нужна вменяемая информация, я рекомендую вменяемые команды :) (без обид, просто шучу). Поэтому вопрос должен гласить:
Как получить информацию журнала с устройства Android?
И теперь мы на лучшей стороне. Существует несколько подходов, которые можно использовать:
- использовать приложения для отображения (с цветовой кодировкой) информации журнала
- использовать ADB (часть Android SDK) для удаленного извлечения той же информации
- используйте ssh с удаленного компьютера (или приложения локального терминала) для получения информации непосредственно с устройства
Чтобы полностью разобраться с этой темой, требуется нечто большее, чем этот простой ответ (если вы заинтересованы, например, вы можете найти более подробную информацию на многих веб-сайтах или в книге Эндрю Хуга « Криминалистика Android: расследование, анализ и мобильная безопасность для Google Android» , где я честь переводить на немецкий. Вероятно, есть и много других источников.
Поэтому я приведу несколько примеров, чтобы вы могли начать:
Использование приложений
Вероятно, самым известным приложением в этом контексте является aLogcat , доступное бесплатно в игровом магазине (и разработчик с радостью примет ваше пожертвование для другого варианта того же приложения). Вы найдете скриншот ниже 1 . Приложение позволяет фильтровать журналы, запускать / останавливать запись сообщений журнала и даже сохранять записанные фрагменты на SD-карту - конечно, в виде простого текста, как вы и просили.
Другое приложение в этом разделе - Log Collector , который просто пытается захватить весь доступный журнал и отправить его через меню общего доступа 2 .
![Лог Коллектор](https://i.stack.imgur.com/wVmZ5.jpg)
Android Debug Bridge (ADB)
Комплект разработчика программного обеспечения Android (SDK) включает adb
команду для различных задач. Среди многих других, он предлагает adb shell
выполнять команды на устройстве. Используя это, вы также можете собрать желаемую информацию журнала: просто введите префикс ниже команд с adb shell
.
Командная строка на устройстве
С помощью приложения терминала (например, Android Terminal Emulator или Terminal IDE ) вы можете получить доступ к журналам прямо из командной строки, локально на вашем устройстве. Немного более удобно, это можно сделать, запустив на своем устройстве ssh-сервер (например, DroidSSHd или DropBear SSH Server ) и получить к нему доступ со своего компьютера. Таким образом, вы можете работать на большом экране, изучая ваши журналы.
Команды для доступа к вашей информации журнала
Существует множество мощных команд, которые вы можете использовать для доступа к информации журнала из командной строки, и я приведу здесь лишь несколько примеров.
dmesg
Команда dmesg
извлекает журнал ядра:
$ 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.
<7>[82839.242279] PM: Entering mem sleep
<4>[82839.242889] Suspending console(s) (use no_console_suspend to debug)
<7>[82839.252410] vfp_pm_save_context: saving vfp state
<6>[82839.252716] PM: Resume timer in 26 secs (864747 ticks at 32768 ticks/sec.)
<6>[82842.091369] Successfully put all powerdomains to target state
<6>[82842.092468] wakeup wake lock: wifi_wake
LogCat
С помощью logcat
вы можете получить доступ ко многим данным журналов, но в большинстве случаев для этого потребуется root. Он имеет некоторые параметры для фильтрации информации, например, путем выбора буфера журнала для чтения -b
. Пожалуйста, прочитайте информацию, предоставленную на странице разработчиков на LogCat для деталей. Чтобы дать вам два примера: logcat -b events
перечислите события или logcat -b radio
информацию о модуле радиосвязи вашего устройства.
dumpsys и dumpstate
Две команды dumpsys
и dumpstate
дают вам подробную информацию о системе:
$ 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>
DUMP OF SERVICE alarm:
$ 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
Buffers: 14136 kB
Cached: 145460 kB
<snip>
отчет об ошибке
И если вам лень вспоминать их все, просто используйте bugreport
команду, которая вызывает все вышеперечисленное и связывает ее для красивого, хм, сообщения об ошибках для разработчика ...
Конечно, вы можете перенаправить вывод всех этих команд в файл для копирования на ваш компьютер, и в большинстве случаев вам следует это сделать - так как ваш экранный буфер будет слишком мал, чтобы справиться со всем этим: bugreport > /mnt/sdcard/bugreport.txt
это будет один пример для эта часть.
$ dmesg
илиdmsg
? Должна быть опечатка в одном из них :)