blob: 22fe02745dec9ad00654bf92d52e5120cc3e6961 [file] [log] [blame] [view]
# Debugging Tools
## Enable all verbose logs
Running `./logging.sh` will enable all verbose logs for the queries in the provider.
More details in the script itself.
## Querying the database
There are 2 different ways to easily query the database, `qc` and `contatcsproviderutils.sh`.
### QC usage
`qc` queries the deivce directly. For usage, append the query in single quotes after the command:
e.g.
```
qc/qc 'select * from raw_contacts'
```
or to get all the tables
```
qc/qc '.tables'
```
QC support SQLite language, but it might have some limitations working with complex nested queries.
### contactsproviderutils.sh usage
This script downlaods the database locally and logins into a local version. It is also possible to push any change back to the device.
* Add tools to path
```
source contactsproviderutils.sh
```
* Pull `contacts2.db` and query:
```
sqlite3-pull
```
This will open a sql terminal with `rlwrap` which can be easily used for queries.
* Pull `contacts2.db` and query with a graphical interface:
```
sqlitebrowser-pull
```
* Push local updates to the device:
```
sqlite3-push
```