adb是Android的调试桥程序,这里简单介绍一个利用adb查看模拟器中的数据库文件的方法。
首先,在确认打开了模拟器之后,在命令行下进入android-sdk文件夹下的platform-tools子目录中,因为adb程序在这个目录中,为了以后方便访问,可以将此目录添加到系统的环境变量中。
现在已经进入了模拟器的文件系统根目录下,现在可以利用ls命令(列表子项)和cd命令(切换文件夹)进入数据库文件所在目录。
一般数据库文件的目录为data/data/yourpackage/database/databases目录下。
比如现在我已经找到了我所创建的数据库smsdata。
然后利用sqlite3工具打开数据库,命令为:sqlite3 yourdatabase
打开后可以利用.help查看相关命令,另外,在此时就可以直接运行sql命令了,比如我要查看message表中的数据
在写与SharedPreferences相关的程序时,调试有时会显得非常麻烦,因为SharedPreferences会保存配置文件到模拟器或者测试设备中,这有时会给调试带来很大麻烦甚至会造成莫名其妙的错误,这里介绍下利用adb调试桥来查看和修改设备中的SharedPreferences配置文件的方法。
修改设备中的SharedPreferences配置
每个应用程序都有自己的私有空间,一般这个私有空间都是在目录/data/data/yourpackagename下。
而应用程序的SharedPreferences配置文件一般在目录/data/data/yourpaceagename/shared_prefs/目录下。
这里笔者在程序中建立了一个名为data的数据项,那么此数据项保存在/data/data/com.tobacco.pro/shared_prefs/data.xml中。
知道了配置文件的路径就好办了。
如果要查看配置文件,可以运行adb shell后进入配置文件目录再运行cat filename就可以了。
还可以利用adb的导入导出命令push和pull来修改配置文件。
pull devicefile localpath来导出配置文件,例如笔者的pull /data/data/com.tobacco.pro/shared_prefs/data.xml d:\
然后会在d:\目录下得到配置文件,编辑之,再导入设备,命令为:
push localfile devicepath ,例如笔者的为push d:\data.xml /data/data/com.tobacco.pro/shared_prefs/
导入后再查看,会发现配置文件已更改。