Android

Where Does Android Room Store Its Database?

Room databases live in a databases folder inside the app's private data directory. The folder is sandboxed, so reach it through Android Studio.

Last updated

Room is a thin layer over SQLite, and the database file sits exactly where Android puts every app private database: a databases folder under the app's data directory, named after the package. The filename is whatever the developer passed to the database builder, usually ending in db.

Sandboxing keeps you honest here. On a production phone no file browser reaches that path. Developers should use the running app plus Android Studio inspection, and testers should pull copies through adb rather than hunting on device.

Where Android Room stores this, by platform

Android
/data/data/[package]/databases/[name].db

Private per app directory named after the package. The db filename comes from the app's database builder call. Reach it via Android Studio inspection or adb on debug builds; production phones hide it.

Frequently asked questions

How do I view a Room database without root?

Use Android Studio's App Inspection database inspector while the app runs on a debug build. It reads and queries the live database with no root and no copying. For release builds use an adb backup of the app.

There are extra files next to my db file. Do they matter?

Yes. Write ahead logging keeps sibling files with wal and shm extensions next to the main db. Copy all three together or the copy may open empty or report corruption.

Notice an outdated path? Let us know.