2021. 11. 4. 01:25ㆍAndroid
디버깅을 위해 App 내부에서 생성한 SQLite DB 테이블을 확인하고 싶을 때가 있습니다. 다음과 같은 방법으로 확인할 수 있습니다.
- Android Studio의 Device File Explorer에서 내 앱에 저장된 db파일을 PC에 저장하고 Browser 프로그램으로 확인
- Android Debug Database 라이브러리를 이용하여 확인
Device File Explorer를 이용하여 테이블 확인
Android Studio에서 [View] -> [Tool Windows] -> [Device File Explorer]를 선택하면 Device File Explorer가 실행됩니다.
Device File Explorer에서 /data/data/[package name]/databases/ 디렉토리에 들어가면 내 앱이 생성한 db 파일을 찾을 수 있습니다. 다음과 같이 "Save As..." 버튼을 눌러 PC에 저장합니다.
'/data/data/[package name]/' 경로는 앱의 데이터가 저장되는 위치이며, databases 폴더 아래에 db 파일이 저장됩니다.
Database 파일 디버깅
저장한 db파일을 열어보려면 먼저 Database Browser 툴을 설치해야 합니다.
sqlitebrowser.org에서 SQLite Browser 툴을 OS 별로 다운받을 수 있습니다. (만약 SQLite 외의 다른 데이터베이스를 사용하는 경우, 그 파일을 열 수 있는 브라우저를 설치하시면 됩니다.)
Linux 사용자의 경우, 다음 명령어로 sqlitebrowser 설치하고 실행할 수 있습니다.
$ sudo apt install sqlitebrowser $ sqlitebrowser
SQLite Browser를 실행하여 위에서 저장한 db 파일을 열어보면, 다음과 같이 어떤 아이템들이 저장되어있는지 확인할 수 있습니다.
Android Debug Database 라이브러리를 이용하여 테이블 확인
이 라이브러리는 Database와 SharedPreference를 디버깅하는 라이브러리입니다. 루팅할 필요가 없으며 디바이스와 PC가 동일한 네트워크에 연결되어있으면 됩니다. 앱을 실행시키면 라이브러리가 Webpage를 생성하여 PC에서 쉽게 Database를 디버깅할 수 있도록 합니다.
GitHub - Android Debug Database에서 라이브러리에 대한 자세한 내용을 확인할 수 있습니다.
사용 방법
App의 build.gradle에 다음과 같이 의존성을 추가합니다.
dependencies { ... debugImplementation 'com.amitshekhar.android:debug-db:1.0.6' }
그리고 다음과 같은 코드가 실행되도록, Applicaiton이나 Activity에 넣어주면 됩니다. 이 코드는 Webpage의 주소를 출력해줍니다. 따라서 코드가 실행될 수 있는 위치에만 넣어주면 됩니다.
DebugDB.getAddressLog()
이제 앱을 실행해보면 DebugDB.getAddressLog()가 다음과 같은 로그를 출력시킵니다. 로그의 주소를 복사하여 웹페이지에서 실행하시면 됩니다.
08-30 16:53:08.947 10204 10204 D DebugDB : Open http://192.168.0.11:8080 in your browser
Browser에서 http://192.168.0.11:8080에 접속하면 다음과 같은 페이지가 보입니다. 여기서 DB 테이블에 어떤 아이템들이 있는지 확인할 수 있습니다.
출처 : https://codechacha.com/ko/android-studio-browse-database/
'Android' 카테고리의 다른 글
[안드로이드] 버튼을 이용해 이미지 조정 (0) | 2021.10.29 |
---|