If you’re using SQLite for your project and you’d like to query the database directly. For Android based devices or emulators, you can do the following:
You’ll need to remember your database name, if you’re using commonJS, you can do something similar to:
exports.getDatabase = function() {
return Ti.Database.open('app.db');
};
Next, find out what devices you have connected using adb:
adb devices
This will return a list similar to this:
List of devices attached
10.0.0.2:5555 device
Next, use the ADB shell command to boot into the device:
adb -s 10.0.0.2:5555 shell
This will drop you into a shell on the device. Next, find the database file. In the first code snippet here, you can see our database name is app.db, so we’ll use a combination of find and grep to find the file on the device:
cd /; find * | grep app.db
And this will return the SQLite file and it’s journal, like this:
root@vbox86p:/ # cd /; find * | grep app.db
data/data/com.example.audit/databases/app.db
data/data/com.example.audit/databases/app.db-journal
Now you can use the CLI tool to open the database, like so:
sqlite3 data/data/com.example.audit/databases/app.db
And you’ll be dropped into the CLI tool. You can get a list of tables by using .tables and exit the program via .quit.
The reference for this post came from this wonderful blog post.