diff options
author | 2023-10-24 17:45:48 +0100 | |
---|---|---|
committer | 2023-10-24 17:45:52 +0100 | |
commit | 41171819f497963feac0846268afbb63a21b7242 (patch) | |
tree | 5f3679f27be84f8644bc072e8688080a1f46c481 | |
parent | dce80aa11236aee8b71ddd32356b7e796622f1cd (diff) |
Add support for navigating DB with sqlitebrowser
Bug: N/A Dev tools
Test: N/A Dev tools
Change-Id: If71099a9948ae599683d0605751ea264e482e204
-rw-r--r-- | mediaproviderutils.sh | 35 |
1 files changed, 26 insertions, 9 deletions
diff --git a/mediaproviderutils.sh b/mediaproviderutils.sh index f25640d3d..f0b3dc63f 100644 --- a/mediaproviderutils.sh +++ b/mediaproviderutils.sh @@ -1,5 +1,6 @@ # Shell utility functions for mediaprovider developers. # sudo apt-get install rlwrap to have a more fully featured sqlite CLI +# sudo apt-get install sqlitebrowser to navigate the database with a GUI set -x # enable debugging function add-media-grant () { @@ -63,14 +64,9 @@ EOF fi } -function sqlite3-pull () { - adb root - if [ -z "$1" ] - then - dir=$(pwd) - else - dir=$1 - fi +function media-pull () { + adb root && adb wait-for-device + dir=$(get-dir $1) package=$(get-package) if [ -f "$dir/external.db" ]; then @@ -86,10 +82,21 @@ function sqlite3-pull () { sqlite3 $dir/external.db "drop trigger files_insert" sqlite3 $dir/external.db "drop trigger files_update" sqlite3 $dir/external.db "drop trigger files_delete" +} - rlwrap sqlite3 $dir/external.db +function sqlite3-pull () { + dir="$(get-dir $1)" + media-pull "$dir" + rlwrap sqlite3 "$dir"/external.db } +function sqlitebrowser-pull () { + dir="$(get-dir "$1")" + media-pull "$dir" + sqlitebrowser "$dir"/external.db +} + + function sqlite3-push () { adb root if [ -z "$1" ] @@ -145,6 +152,16 @@ function get-data-from-id () { adb shell sqlite3 $dir $clause } +function get-dir (){ + if [ -z "$1" ] + then + dir=$(pwd) + else + dir=$1 + fi + echo "$dir" +} + function get-package() { if [ -z "$(adb shell pm list package com.android.providers.media.module)" ] then |