Є кілька способів зробити це:
cat /proc/last_kmsg > /sdcard/last_kernel_message_log.txt
dmesg > /sdcard/kernel_boot_log.txt
- підключіть кабель usb із вимкненим смартфоном. Потім видайте команду
adb logcat
з вашого Windows cmd або Linux-терміналу, вона буде висіти в очікуванні, коли пристрій вийде в режим онлайн, і тепер увімкніть смарт-телефон. Після цього логкат повинен почати прокручуватися.
Оскільки ви виявили зацікавленість у з'ясуванні того, як далеко телефон потрапляє у стадії завантаження до його виходу , ці методи повинні допомогти. Вся справа в тому, що вам потрібно досить швидко схопити журнал ядра (перші два способи, показані вище).
Що я б робив, це це, на моєму вікні Arch Linux два вікна терміналу, одне для adb logcat
іншого, інше, щоб схопити журнал, коли лог-код починає прокручуватися!
Редагувати:
Будьте в курсі, існують відмінності у використанні adb
та fastboot
!
fastboot
працює по-іншому, він використовується лише для прошивки зображень у визначені розділи і більше пов'язаний з процесом завантажувача, тобто він може зрозуміти механізм завантажувача. Він також вимагає, щоб:
- під Windows, права адміністратора на його виконання
- під Linux, "root" привілей
Причина цього вимагає в тому, що він обходить певний вхід / вихід апаратного забезпечення, і, таким чином, не "розмовляє" в adb
протоколі, скоріше, це "розмова" безпосередньо з завантажувачем. Щось неможливо зробити як звичайний користувач. Ось довідка щодо використання fastboot
.
$ sudo fastboot
usage: fastboot [ <option> ] <command>
commands:
update <filename> reflash device from update.zip
flashall flash boot + recovery + system
flash <partition> [ <filename> ] write a file to a flash partition
erase <partition> erase a flash partition
getvar <variable> display a bootloader variable
boot <kernel> [ <ramdisk> ] download and boot kernel
flash:raw boot <kernel> [ <ramdisk> ] create bootimage and flash it
devices list all connected devices
continue continue with autoboot
reboot reboot device normally
reboot-bootloader reboot device into bootloader
help show this help message
options:
-w erase userdata and cache
-s <serial number> specify device serial number
-p <product> specify product name
-c <cmdline> override kernel commandline
-i <vendor id> specify a custom USB vendor id
-b <base_addr> specify a custom kernel base address
-n <page size> specify the nand page size. default: 2048
Добре відомо, використання fastboot
для блимати, наприклад, флеш - образ відновлення: sudo fastboot flash recovery recovery.img
, інший безпосередньо прошити необроблене зображення, sudo fastboot flash system system.img
. Для більшої частини випадку розробки ядра, використовуючи це fastboot boot new_kernel
, це тимчасово завантажує нове ядро та завантажує його, не торкаючись власного завантажувача завантажувача.
Існує також обмеження на розмір неочищеного зображення, яке потрібно прошивати, коли я кажу необработене зображення, я маю на увазі файл, який має .img
розширення, зображення не повинно перевищувати 128 Мб. ( Я дізнався це під час розробки ics4blade, після завершення збірки system.img становив 162 Мб, і я спробував пропустити його, але fastboot відмовився! Щоб обійти обмеження, довелося створити прошивний поштовий файл CWM, щоб це зробити і обійти це! )
Будьте обережні і переконайтеся, що розділ правильний, і двічі перевірити та повторно перевірити, якщо потрібно, піти від комп'ютера, зробити перерву, повернутися знову і ще раз перевірити, це може призвести до жахливих помилок, прошийте неправильний файл у неправильний розділ ... добре знизує