본문 바로가기

안드로이드/팁

[안드로이드/Android] Stetho로 앱 디버깅 하기

반응형

수정 일자 : 21.11.04 

현재 크롬 업데이트로 인해 크롬에서 볼수 없습니다. 엣지 브라우저를 사용해주세요. ( 웨일도 사용 불가 ) 

 

 

stetho는 안드로이드 디버그 브릿지입니다.

크롬브라우저의 개발자도구를 사용해서 다양한 디버깅 기능들을 편리하게 사용할 수 있습니다.

참고페이지 , Github

 

 

 

기능목록

네트워크 

모든 통신에대한 정보들을 볼수 있습니다. ( Method나 요청 값,결과 값등 ) 

 

내부디비

sqlite와 sharedpreference등의 저장된 데이터들을 볼 수 있습니다.

 

레이아웃

화면에 보여지는 레이아웃을 히어라키뷰로 나타내며, 각 뷰마다 속성값들을 볼수 있습니다.

 

콘솔

자바 스크립트로 앱이나 앱내 sdk를 조작할 수 있습니다.

 

dumpapp  

위의 기능들이 아닌 콘솔을 통해 앱을 조작하는 기능으로만 알고있고 실제 사용해본적은 없습니다...

적용하기

build.gradle(app) > dependencies에 아래처럼 추가해주세요.

implementation 'com.facebook.stetho:stetho:1.5.1'

Applcation.java에 아래처럼 추가해주세요

Stetho.initializeWithDefaults(this);

위의 기본적인 세팅을 마치고 크롬 주소창에 'chrome://inspect' 라고 검색하시면 현재 디버깅중인 앱 이름과 하단에 'inspect'버튼을 찾으실 수 있습니다. 해당 버튼을 눌러 보다 나은 디버깅을 시작하시면 됩니다.

※기능을 사용하기 위해 추가 설정이 필요한 경우도 있습니다. 하단 '부가기능'을 참고해주세요

부가기능

네트워크 기능은 'okhttp' 라이브러리를 통한 통신을 훅킹하여 보여주기 때문에 'okhttp' 라이브러리를 사용중이어야 합니다. 

build.grade(app) > dependencies에 아래처럼 추가해주세요.

 

implementation 'com.facebook.stetho:stetho-okhttp3:1.5.1'

okhttp(3.x)를 사용하는 코드에 다음과 같이 추가해주세요.

new OkHttpClient.Builder()
    .addNetworkInterceptor(new StethoInterceptor())
    .build();

 

해당 포스팅은 지극히 주관적인 내용으로 저자의 복기 목적으로 작성된 것이고, 내용에대해 수정이나 추가 요청은 언제든 환영합니다. 

반응형