공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
이번 포스팅에서는 안드로이드의 Log 에 대해서 공부합니다.
Android Monitor 는 디버그 메세지를 표시하는 Logcat Monitor를 포함합니다.
logcat monitor 는 가비지 수집이 발생하는 시점과 같은 시스템 메시지 뿐만 아니라
Log 클래스를 사용해 앱에 추가할 수 있는 메시지도 표시해줍니다.
logcat 메시지의 형식
모든 Android Log message 는 연관된 태그와 우선순위가 있습니다.
로그는 간단하게 아래처럼 정의할 수 있습니다.
Log.d("permission", "granted");
2개의 인자가 들어가는데요 첫 번째는 tag, 두 번째는 msg 입니다.
우선순위
public static final int VERBOSE = 2; // 모든 로그를 표시합니다.
public static final int DEBUG = 3; // 개발 중에만 유용한 디버그 로그 메시지뿐 아니라더 낮은 레벨의 메시지도 이 목록에 표시
public static final int INFO = 4; // 일반적인 사용에 대해 예상할 수 있는 로그 메시지 뿐 아니라더 낮은 레벨의 메시지도 이 목룍에 표시
public static final int WARN = 5; // 아직 오류는 아니지만 발생 가능한 문제 뿐 아니라더 낮은 레벨의 메시지도 이 목룍에 표시
public static final int ERROR = 6; // 오류를 일으킨 문제 뿐 아니라 더 낮은 레벨의 메시지도 이 목룍에 표시
public static final int ASSERT = 7; // 개발자가 결코 발생해서는 안 된다고 생각하는 문제를 표시합니다.
Log.v < Log.d < Log.i < Log.w < Log.e
순입니다.
위 5개 로그 메서드를 호출해보았습니다.
Log.v("VERBOSE", "VERBOSE");
Log.d("DEBUG", "DEBUG");
Log.i("INFO", "INFO");
Log.e("WARN", "WARN");
Log.w("ERROR", "ERROR");
로그 같은 경우는 개발 단계를 제외하고는 상세 로그를 앱으로 컴파일하시면 안 됩니다.
디버그 로그는 컴파일 되지만 삭제되는 반면에
오류, 경고 및 정보 로그는 항상 그대로 유지됩니다.
그리고 일반적으로 로그메서드의 tag 인자는 해당 Activity나 클래스 이름으로 합니다.
ex)
private static final String TAG = "MainActivity";
@Override
protected void onStart() {
super.onStart();
Log.v(TAG, "This is MainActivity");
* 태그는 글자 수 제한이 있어서 23글자를 넘어가면 에러가 발생하며, 출력에서 잘립니다.
이상으로 Logcat을 이용해 로그를 찍어보기! 에 대해 공부했습니다.
감사합니다.
'안드로이드' 카테고리의 다른 글
안드로이드 코드로 화면 밝기 조절하기, Android control screen brightness with java,kotlin code (0) | 2018.06.25 |
---|---|
안드로이드 코틀린으로 간단한 메모 앱 만들기 (0) | 2018.05.30 |
안드로이드 WIfiManager 로 주변 wifi 스캔하기! Android WifiManager scan access point wifi list (6) | 2018.05.16 |
안드로이드 WIfi auto turn on 와이파이 자동으로 활성화시키기 (0) | 2018.05.15 |
안드로이드 레이아웃 width, height 구하기! (0) | 2018.05.10 |