Zastanawiasz się, jak robić logi na Androidzie? W tym przewodniku informujemy o różnych typowych dziennikach w systemie Android i o tym, jak je gromadzić.
Dzienniki są bardzo przydatne, gdy programista diagnozuje błąd w oprogramowaniu. Tak więc, gdy jako użytkownik złożysz skargę do programisty na temat problemu z jego aplikacją na Androida lub oprogramowaniem sprzętowym na rynku wtórnym (niestandardową pamięcią ROM), poprosi Cię on o przesłanie dziennika, który pomoże mu rozwiązać problem. Android zawiera wiele dzienników dotyczących różnych części oprogramowania sprzętowego, a istnieje wiele sposobów ich gromadzenia. W tym przewodniku omówimy różne typowe dzienniki i sposoby ich gromadzenia na Androidzie w celu raportowania błędów.
Zanim zaczniemy, skonfiguruj Android Debug Bridge na swoim komputerze, ponieważ dla niektórych z tych dzienników możesz potrzebować dostępu ADB. Mamy świetny przewodnik jak skonfigurować ADB na dowolnym komputerze.
Dzienniki paniki jądra
Dzienniki paniki jądra są przydatne, aby dowiedzieć się, co się stało podczas nieudanego rozruchu. Jeśli próbujesz uruchomić niestandardową pamięć ROM, ale telefon utknął w pętli rozruchowej, możesz zebrać dzienniki błędów jądra, aby pomóc programiście ROM dowiedzieć się, co poszło nie tak.
Większość producentów Androida korzysta z zewnętrznych sterowników „pstore” i „ramoops” do przechowywania dzienników jądra po panice. Ramoops zapisuje swoje logi w pamięci RAM przed awarią systemu. Dzięki dostępowi do konta root te dzienniki można pobrać z:
/sys/fs/pstore/console-ramoops
Nazwa pliku może być nieco inna, ale będzie znajdować się w katalogu pstore. Możesz to uzyskać za pomocą ADB pull lub w inny sposób. Na przykład:
adb pull /sys/fs/pstore/console-ramoops C:\Users\Gaurav\Desktop\filename
Wiadomości kierowcy
Dziennik z bufora komunikatów sterowników może zostać wykorzystany do zdiagnozowania problemów ze sterownikami systemowymi i wyjaśnienia, dlaczego coś nie działa. W systemie Android możesz użyć wyjścia „dmesg”, aby uzyskać te dzienniki. Będziesz potrzebował dostęp do roota aby jednak uzyskać te logi. Użyj następującego polecenia ADB, aby wyeksportować cały dziennik.
adbshellsu-cdmesg > dmesg.log
Dzienniki systemowe
Dzienniki systemowe są przydatne, gdy coś w systemie zgłasza błąd. Android umożliwia zbieranie logów systemowych za pomocą Logcat. Komunikaty dziennika można przeglądać w oknie Logcat w Android Studio lub można je pobrać za pomocą narzędzia wiersza poleceń.
W sklepie Google Play dostępnych jest także kilka aplikacji na Androida, które umożliwiają łatwy dostęp do tych narzędzi. Porozmawiamy o tych aplikacjach w dalszej części tego artykułu. Co więcej, kilka niestandardowych ROMów ma opcje w ustawieniach programistów umożliwiające zbieranie dzienników systemowych.
Aby zbierać dzienniki za pomocą ADB, użyj następującego polecenia. To polecenie wyeksportuje ciągły dziennik, więc użyj Ctrl + C, aby go zatrzymać.
adblogcat > logcat.txt
Możesz użyć parametru -d, aby wyeksportować cały dziennik za jednym razem.
adblogcat-d > logcat.txt
Jeśli chcesz, możesz także wyświetlić lub zapisać bufor radiowy za pomocą następującego polecenia.
adblogcat-dbradio > radio.txt
Jeśli Twoje urządzenie jest zrootowane, możesz używać aplikacji Terminal na samym urządzeniu do zbierania dzienników. Aby zapisać dziennik za pomocą terminala w telefonie, wpisz następujące polecenie, aby zapisać dziennik w telefonie.
logcat -d -f /sdcard/logcat.txt
Aplikacje na Androida do zbierania logów
Logcat Ekstremalny
Logcat Extreme może pomóc Ci odczytać dane wyjściowe logcat i dmesg, a także zapisać logi. Aby poprawnie wyświetlać logi, wymagane są uprawnienia roota.
Cena: za darmo.
3.9.
Czytnik Logcata
Logcat Reader to aplikacja typu open source, która umożliwia odczytywanie i zapisywanie dzienników systemowych. Oznacza kolorami dzienniki w oparciu o priorytet dziennika.
Cena: za darmo.
4.2.
LiveBoota
Ta aplikacja nie jest właściwym zamiennikiem logcata, ale na swój sposób jest fajna i zasługuje na wzmiankę. Celem tej aplikacji nie jest pomoc w debugowaniu, ale zapewnienie alternatywnej animacji rozruchu, która wygląda jak z filmu science-fiction.
LiveBoot zastępuje animację rozruchu urządzenia wynikami logcat i dmesg, gdy tylko to nastąpi. Jego konfiguracja wyjściowa obejmuje poziom logcat, wybór bufora i formatu, czy wyświetlać dmesg i wiele więcej. Wymaga uprawnień roota oraz wersji SuperSU 2.40 lub nowszej. Więcej o aplikacji znajdziesz na jej stronie wątek XDA.
Cena: za darmo.
4.2.
Oto niektóre ze sposobów gromadzenia dzienników w systemie Android. Jeśli szukasz sposobu na uzyskanie uprawnień roota na swoim telefonie z Androidem, zapoznaj się z naszym szczegółowym przewodnikiem na ten temat jak zrootować telefon.