복잡한 안드로이드 코딩 소스 Log.i 로 잡아내자!


Android/안드로이드 프로그래밍 2011. 12. 6. 14:45



안드로이드로 어플리케이션을 제작 시에 굉장히 소스가 복잡해지는 경우가 있는데, 이와 같을 때에는 곳곳에
Log.i(stirng, string) 값을 넣어 DDMS 를 통해 오류를 해결해봅시다.

기존의 Logcat 의 Exception 이나 error Message로는 너무 광범위해서 오류를 찾기 힘든 경우가 많은데,
DDMS 를 통해서 오류를 잡는 습관을 기르셔야 나중에 삽질이 훨씬 줄어든다는 점!

조만간, 이클립스 안드로이드 개발의 툴팁을 포스팅할 예정인데,
그에 앞서 Log 문에는 여러 종류가 있습니다.

여러분의 이클립스에서 log를 치시고 . 을 치시면 인텔리센스에 굉장히 많은 종류의 Log 형태들이 나오실텐데요
(위 여러가지 Log 문들도 조만간 포스팅하겠습니다)

간단하게 예를 들면
(너무 급하게 작성하다보니 이상한 예제가 되어버렸지만...)


Log.i("before if" , "me value is : " + me );

if ( me == true )
{
parser.login_id 를 불러와 맞으면 'A'로 진입한다.
Log.i ("me true" , "login id : " + parser.login_id);
}
else
{
parser.login_id 를 불러와 맞으면 'B'로 진입한다.
Log.i ("me false" , "login id : " + parser.login_id);
}

분명 나는 me 값이 true 로 바뀌어서 A로 진입을 해야 하는데 자꾸만 B로 진입하는 경우라 생각을 해보면,
알아보아야 할 것이 그 상황에서의 me값과 login_id 값입니다. 이럴 때 위와 같이 조건의 다음 부분에 Log 를 사용해서 정확히 어떤 부분에서 어떠한 곳으로 진입을 하는지 그리고 me값을 무엇으로 받아오고 login_id 값을 어떤 값으로 받아오는지 등등을 DDMS 에서 알아보실 수 있습니다.

정말 기본적인 부분이지만, 꼭 습관을 들여서 디버그 시에는 로그를 통해 에러를 확실하게 잡아내고 업그레이드 하는 것이 바람직하다고 생각해서 올립니다.

삼성전자 갤럭시 S20 플러스 자급제폰, 코스믹 그레이, 256GB Apple 에어팟 프로 (노이즈캔슬링 방수 블루투스 5), MWP22KH/A, 단일 색상 삼성전자 갤럭시탭S6 10.5 128G WIFI, SM-T860N, 마운틴 그레이

WRITTEN BY
ShakeJ

트랙백  0 , 댓글  0개가 달렸습니다.
secret