赞
踩
说来惭愧,玩了几年的Android竟然没有使用shell 调试过sqlite,今天突然想到要调试下,于是就找了下资料,发现网上吧的资料好多都是之前的了,而且好多重复的,不过好在广大码友还都是很给力的,找了几篇文章终于拼拼凑凑的搞出来了。
首先说下,调试的时候一定要root,不root的话中间会碰到很多坑,一整命令不好使了,或者权限不允许啦之类的,会搞得你想撞墙的。我开始就用的我的调试机,魅族来做的,因为魅族自带root ,但是那种的不是完全意义上的root,有些东西还是不行。所以我也碰了一鼻子灰。
说了这么多,开始进入主题,首先第一步:看下你的system/xbin目录下是否有sqlite3文件,没有的话就要去下载一份了,同时 记得要下载libncurses.so这个文件,很重要不然会不起作用的。
在这里,sqlite3在下载的时候要注意版本问题,5.0的版本是一个分水岭,老一点的设备下载5.0以下的就好了。下面是地址:
Android sqlite3 4.0:
http://download.csdn.net/detail/huang15984/9675871
Android sqlite3 5.0:
http://download.csdn.net/detail/huang15984/9675875
下载完两个主要文件之后我们就要把 文件放到 设备上了,
1. 在cmd中输入adb shell,如果你的不起作用甚至报错,就要去设置下adb的环境变量了。
2. 获取root,输入su 或者su root。输入完之后命令行的$ 会变成 #,表示成功了。
3. 因为默认的/system处于挂载状态,我们要设置成允许读写,命令如下
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
4. 我们将前面下载的sqlite3文件导入到手机中,先导入到sdcard,命令如下:
adb push E:\sqlite\sqlite3 /mnt/sdcard/sqlite3
5. 再将文件复制到system/xbin下,命令如下:
cat /mnt/sdcard/sqlite3 > /system/xbin/sqlite3
6. 同样的方式,将libncurses.so文件放入/system/lib文件夹下。
7. 上面都是用命令的方式来做的,考虑到一些赖癌患者不喜欢敲命令,这里我有一个方便的方式,使用[Root Explorre](http://dl.pconline.com.cn/download/79630.html%20%20Root%20Explorer)这个APP,将上面两个文件放到sd卡任意一个文件夹下,使用这个APP复制到对应的文件夹就可以了,还是很easy的。
8. 文件都准备就绪之后,我们要给sqlite赋予权限,不然在执行sqlite3的时候会出现:sh: sqlite3: cannot execute - Permission denied这个错误。命令如下:
chmod 4755 sqlite3
9. 验证sqlite3是否有权限,命令如下:
ll sqlite3
提示:-rwxr-xr-x root root 36860 2012-08-15 21:45 sqlite3
10. 再执行sqlite3命令,提示如下:
SQLite version 3.7.11 2012-03-20 11:35:50
Enter “.help” for instructions
Enter SQL statements terminated with a “;”
到这里就可以正常调试你的sqlite数据了,
cd data/data;
cd com.boanda.android.ydzf.chongqing/databases;
sqlite3 你的数据库。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。