SQLite Browser in Android Studio

(verfügbar ab Android Studio 4.1)

Inhaltsverzeichnis

Wie war es vorher?

Vor Android Studio 4.1 war man auf externe Programme angewiesen (wie “DB Browser for SQLite”), um die Daten aus einer SQLite Datenbank lesen zu können. Dazu musste die Datenbankdatei zuerst vom Emulator oder realem Gerät auf den eigenen Rechner kopiert werden. Ich habe dazu meistens den integrierten Explorer genutzt. Es mussten auch immer die .db-wal Dateien mitkopiert werden, da man sonst die letzten Operationen auf der Datenbank nicht hatte.

File Explorer Toolfenster
File Explorer Toolfenster

Wie geht es nun?

Seit der Version 4.1 ist ein Betrachter (Database Inspector) für SQLite-Datenbanken direkt in Android Studio eingebunden. Damit ist es nun möglich, die Datenbank einer App direkt in Android Studio anzusehen, zu beobachten oder Daten zu ändern (siehe auch “Debug your database with the Database Inspector” Guide auf Android-Developer Seiten).

Der Betrachter kann nur mit Emulatoren / Geräten ab API 26 genutzt werden. Und es funktioniert nur, wenn es mit der integrierten SQLite-Bibliothek genutzt wird. Somit also nur mit Bibliotheken, die die mitgelieferte SQLite-Bibliothek nutzen, und nicht selbst eine mitbringen.
Aktuell gibt es Probleme mit Emulatoren mit API 30 (Android 11) und Datenbank Inspector. Die Apps stürzen dabei ab.

Was ist möglich?

Ist die Verbindung zur Datenbank möglich und aufgebaut, können die Änderungen an der Datenbank live verfolgt werden (siehe auch Video unten). Die Änderungen in den Tabellen werden direkt angezeigt, wenn für diese der Hacken Live updates aktiviert ist. Manuelles Aktualisieren der Ansicht wird natürlich auch unterstützt.

Wird als ORM die Jetpack-Bibliothek Room genutzt, können die Queries aus dem DAO auch direkt ausgeführt werden (siehe Video). Dabei werden die Parameter für parametrisierte Queries freundlich abgefragt.

Was bringt es?

Mit dem Inspektor kann die Programmierung nun deutlich schneller vonstattengehen. Da man die Änderungen sofort für die laufende App sehen kann, lassen sich die Fehler schneller analysieren, oder auch die neuen Abfragen auf vorhandenen App-Daten besser ausprobieren lassen.

Auch sehr hilfreich an dieser Stelle, dass der Emulator in einem Toolfenster platziert werden kann, statt neben Android Studio zu schweben. Damit hat man deutlich mehr Platz bei der Entwicklung und kann den Emulator jederzeit einblenden, wenn dieser benötigt wird.

Fazit

Es ist ein lang überfälliges Feature in Android Studio. Der “Datanbank Inspektor” macht die Entwicklung von Apps, die SQLite nutzen, deutlich komfortabler und schneller. Insbesondere der Live-Modus kann bei der Fehlersuche hilfreich sein, da man die Datenänderungen direkt in der Datenbank beobachten kann.