summaryrefslogtreecommitdiff
path: root/mediaproviderutils.sh
diff options
context:
space:
mode:
author Alessandra Loro <aloro@google.com> 2023-10-24 17:45:48 +0100
committer Alessandra Loro <aloro@google.com> 2023-10-24 17:45:52 +0100
commit41171819f497963feac0846268afbb63a21b7242 (patch)
tree5f3679f27be84f8644bc072e8688080a1f46c481 /mediaproviderutils.sh
parentdce80aa11236aee8b71ddd32356b7e796622f1cd (diff)
Add support for navigating DB with sqlitebrowser
Bug: N/A Dev tools Test: N/A Dev tools Change-Id: If71099a9948ae599683d0605751ea264e482e204
Diffstat (limited to 'mediaproviderutils.sh')
-rw-r--r--mediaproviderutils.sh35
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