В последнее время у меня были проблемы * с моим Samsung Galaxy S4 (Rooted, Echoe rom, SCH-i545, 4.4.2), и я пытался выяснить, почему. Проблема в том, что ни alogcat, ни adb не могут показать, что я вижу, сбой устройства, то есть когда все устройство отключается само по себе. Кроме того, в папке / data, похоже, не было какой-либо паники или папки kernelpanic (с использованием Root Explorer).
Есть ли способ сделать это? В идеале найти предыдущие журналы, но если нужно, я думаю, что могу воссоздать проблему с тем, что мне нужно установить.
* Сбой, по-видимому, вызван естественным переключением с 4g (LTE) на Wi-Fi, например, когда я возвращаюсь домой, и мой телефон автоматически подключается к моему (уже известному) Wi-Fi.
Если ничего не удается получить из logcat, возможно, вы столкнулись с паникой ядра.
Вы можете проверить через adb вывод:dmesg
Некоторые устройства также имеют функцию ядра, где при критических ошибках последнее полученное сообщение ядра может быть прочитано из/proc/last_kmsg
Возможно, это даст вам некоторые подсказки, что происходит не так. Если нет, вы можете передать полные журналы ядра через: cat /proc/kmsg
и воспроизвести завершение работы при этом.
Обычно при сбое системы запускается всплывающее окно. Его варианты обычно Inform или Cancel . Если вы нажмете «Информировать», запустится приложение, которое позволит вам просмотреть журнал (который вы отправляете в Google, чтобы сообщить об ошибке).
Вы не можете видеть ошибки Logcat, потому что, когда приложение скомпилировано для выпуска и включен Proguard, журналы, отправленные приложением, не видны конечному пользователю. Только для ОС Андроид. Это предохранительный механизм.
Скорее всего, одна из ваших системных служб сбрасывает ANR, и Android убивает ее, чтобы восстановить службу. Это приводит к программной перезагрузке или выключению устройства. вы не увидите никаких всплывающих окон (приложение разбилось...), так как ваш пользователь уже убит ОС.
вот несколько ссылок, которые могут помочь вам в получении журналов:
абебопаребоп