要通过命令行直接操作android真机上的SQLite数据库,可以直接通过adb shell来完成,不过,前提是必须获得root权限。
另外,android系统其实就是linux的shell,这个应该大家都知道,不过一般情况下,在/system/xbin/目录下,
没有sqlite3命令,需要手动copy一个进去,通常情况下,需要两个文件
解压后两个文件都有了,比如解压到:~/Downloads/sqlite3/
然后就是通过下面的这些个命令,一步一步来,基本就搞定了
# 获得root权限 adb root adb remount #拷贝sqlite3二进制文件到android真机中 adb push ~/Downloads/sqlite/sqlite3 /system/xbin/ #然后改一下这个文件的权限 adb shell chmod 4755 /system/xbin/sqlite3 #这个时候如果直接运行sqlite3还有问题,就需要拷贝libncurses.so到真机中 adb push ~/Downloads/sqlite/libncurses.so /system/lib/
ok,完成以上几步,应该没啥问题了,可以通过下面的命令进入android真机,并操作数据库:
#进入真机 adb shell #列出数据库 ls -R /data/data/*/databases
几个在android里常用的db数据库
/data/data/com.android.deskclock/databases/alarms.db
/data/data/com.android.providers.contacts/databases/calendar.db
/data/data/com.android.providers.contacts/databases/contacts2.db
/data/data/com.android.providers.settings/databases/settings.db
/data/data/com.android.providers.telephony/databases/mmssms.db
/data/data/com.android.providers.telephony/databases/telephony.db
时间: 2024-10-13 11:35:39