Skip to content

Instantly share code, notes, and snippets.

@tieubao
Forked from ignasi/db_getter.sh
Created March 10, 2014 03:10
Show Gist options
  • Save tieubao/9458804 to your computer and use it in GitHub Desktop.
Save tieubao/9458804 to your computer and use it in GitHub Desktop.
#!/bin/bash
# Android 4.3+ changes app's internal directory permissions and you can not just pull your
# databases to your computer, so I did this as a workaround to extract my databases.
# I only use it for debug, use it under your responsability.
package=$1
db_name=$2
path="/data/data/$package/"
rm $db_name
adb shell "su -c 'cd $path; chmod -R 777 databases; exit'; exit"
adb pull $path/databases/$db_name
open $db_name
@tieubao
Copy link
Author

tieubao commented Mar 10, 2014

Possible way around root, if the app does not have debuggable=false, is to pipe the db file contents...

package=$1
db_name=$2

adb shell "run-as $package cat databases/$db_name > /sdcard/$db_name"
adb pull /sdcard/$db_name
open $db_name

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment