Android는 사용자에게 핵심을 숨기는 일을 정말 잘합니다. 일이 잘못되었을 때 Mac에서와 같이 위협적인 텍스트의 벽을 볼 수 없습니다. 그들은 단지... 잘못되었습니다.
이는 대부분의 사람들에게 유용하지만 앱이 작동하지 않는 이유를 확인하려는 개발자와 보다 실질적인 접근 방식을 원하는 고급 사용자에게는 그다지 도움이 되지 않습니다.
이것이 logcat이 매우 도움이 되는 이유입니다. 문제를 디버그하기 위해 휴대전화나 태블릿의 시스템 로그를 덤프할 수 있습니다. 대부분의 사용자는 사용하지 않을 것이지만 문제가 발생하면 개발자가 사용자에게 장치의 로그 파일을 제공하도록 요청하는 경우가 있습니다. logcat을 설치하는 방법과 사용 방법은 다음과 같습니다.
Logcat 가져오기
시스템 로그 생성을 시작하기 전에 먼저 몇 가지 전제 조건을 충족해야 합니다. 첫 번째는 일반적으로 ADB로 알려진 Android 디버그 브리지를 설치하는 것입니다. 여기에는 Logcat 도구가 포함되어 있습니다.
저처럼 Mac을 사용하는 경우 가장 간단한 방법은 HomeBrew 패키지 관리자를 사용하는 것입니다. 설치가 완료되면 "brew install android-platform-tools"를 실행하기만 하면 됩니다. .
Linux를 사용하는 경우 ADB를 설치하는 데 필요한 단계는 배포판마다 크게 다릅니다. Ubuntu를 사용하는 경우 "sudo apt-get install android-tools-adb"를 실행하기만 하면 됩니다. .
마지막으로 Windows를 사용하는 경우 몇 가지 옵션이 있습니다. 첫째, XDADevelopers에는 필요한 드라이버와 FastBoot가 포함된 원클릭 ADB 설치 프로그램이 있습니다. 또는 사용 가능한 버전이 최신이 아니더라도 Chocolatey 패키지 관리자를 통해 설치할 수 있습니다.
기기를 개발자 모드로 전환
다음으로 기기에서 개발자 모드를 활성화합니다. 그렇게 하려면 설정을 열고 "휴대전화 정보" 또는 "태블릿 정보"로 이동합니다. 그런 다음 화면 하단으로 스크롤하여 "빌드 번호"를 7번 탭합니다. 완료하면 개발자 모드에 들어갔다는 메시지가 표시됩니다.
뒤로 누르고 설정 루트 디렉토리로 이동하면 "개발자 옵션"이라는 항목이 표시되어야 합니다. 탭하세요.
그런 다음 USB 디버깅을 켜고 Android 기기를 컴퓨터에 연결합니다. 모든 것이 제대로 작동했다면 기기에 엄격한 경고 팝업이 표시되어야 합니다.
로그 보기
이제 로그 보기를 시작할 수 있습니다. 새 터미널 또는 명령 프롬프트를 열고 "adb logcat"을 실행합니다. . 그러면 시스템 메시지가 터미널 창 아래로 계단식으로 표시되는 것을 볼 수 있습니다. 그렇지 않으면 뭔가 잘못되었다는 의미입니다. 기기가 컴퓨터에 연결되어 있지 않거나 ADB가 올바르게 설치되지 않았거나 기기에서 USB 디버깅이 실행되고 있지 않습니다.
나중에 분석을 위해 휴대폰이나 태블릿의 시스템 메시지를 텍스트 파일로 복사하려면 어떻게 해야 할까요? 음, 출력을 리디렉션하는 구문은 Mac에서와 마찬가지로 Windows에서도 동일합니다. "adb logcat> textfile.txt"를 실행하기만 하면 됩니다. . "adb logcat -f filename"을 실행하여 이 작업을 수행할 수도 있습니다. .
로그 파일이 있으면 Sed 및 Awk 또는 Grep을 사용하여 파싱하거나 요청한 개발자에게 보낼 수 있습니다.
당신이 지시하는 한 logcat이 실행될 것이라는 점을 지적할 가치가 있습니다. 출력을 텍스트 파일로 복사하고 연결을 종료하는 것을 잊어버린 경우 하드 드라이브 공간이 없어도 놀라지 마십시오. 닫으려면 CTRL-C를 누르십시오. .
DevOps 또는 시스템 관리 분야에서 일한 적이 있는 사람이라면 누구나 알겠지만, 로그 파일은 수십 기가바이트까지 매우 쉽게 확장될 수 있습니다. , 이후. 경고를 받았습니다.
필터링 출력에 대한 참고 사항
특정 유형의 출력에 우선 순위를 지정하도록 logcat에 지시할 수 있다는 점은 주목할 가치가 있습니다. "V" 플래그("adb logcat V")로 logcat을 실행하면 모든 것이 표시됩니다. "상세 모드"를 활성화했기 때문입니다.
그러나 보다 구체적인 유형의 오류 메시지를 표시하는 다른 트리거가 있습니다. "I" 트리거는 정보만 표시하고 "D"는 디버그 메시지를 표시합니다. 자세한 내용은 공식 Android Debug Bridge 설명서를 확인하세요.
그러나 달리 지시하지 않는 한 기본 설정을 사용하여 logcat을 실행하는 것이 가장 좋습니다. 이는 로그 파일을 요청한 사람이 앱을 수정하는 데 필요한 모든 정보를 얻을 수 있고 아무것도 놓치지 않도록 하기 위한 것입니다.
루팅된 기기에 대한 솔루션이 있습니까?
사실 맞아요! 루팅된 휴대폰이나 태블릿이 있는 경우 Google Play 스토어에서 "aLogCat"을 설치할 수 있습니다. 이것은 무료 버전과 유료 버전으로 제공됩니다. 후자는 개발자를 재정적으로 지원하지만 둘 다 동일합니다.
LogCat이 다른 점은 기기에서 직접 실행되고 오류 로그를 더 쉽게 처리할 수 있는 몇 가지 기능이 함께 제공된다는 것입니다.
메시지가 강조 표시되어 어떤 메시지가 오류이고 어떤 것이 무해한 시스템 알림인지 시각적으로 확인할 수 있습니다. 이메일, 블루투스를 통해 그리고 PasteDroid를 통해 PasteBin에서 공유할 수도 있습니다.
지속적으로 로그를 SD 카드에 직접 저장하려면 aLogRec라는 다른 애플리케이션을 다운로드해야 합니다. 이것도 무료 버전과 기부 버전이 있으며 Google Play 스토어에서 다운로드할 수 있습니다.
하지만 로그 파일을 직접 보고 편집하려면 어떻게 해야 할까요? 당신의 전화에? 이를 위해 VIM 텍스트 편집기의 무료 모바일 버전인 Vim Touch를 추천합니다. 저는 몇 년 전 Android 기기에서 PHP 개발 환경을 설정하는 가장 좋은 방법에 대해 논의할 때 이에 대해 처음 썼습니다.
마무리하기 전에 휴대전화를 루팅하면 휴대전화가 맬웨어에 더 취약해지고 특정 애플리케이션(특히 뱅킹 애플리케이션)이 작동하지 않을 수 있다는 점을 알려드립니다.
로그 파일을 얻기 위해 기기를 루팅하는 것을 고려하고 있다면 강력하게 대신 테더링된 ADB 기반 접근 방식을 사용하는 것이 좋습니다. 쉽고 방법 더 안전합니다.
당신에게로!
휴대전화나 태블릿의 시스템 로그를 잡고 있어야 했던 적이 있나요? 어떻게 왔어요? 쉽게 찾으셨나요? 어떤 방법을 사용하셨나요? 아래 댓글로 알려주세요.