Android开发中使用adb shell命令出现sqlite3 : not found 问题


今天在工作中遇到这样的一个问题,在Android开发中使用adb shell下的sqlite3命令来查看SQLite数据库时,出现了 [ sqlite3 : not found]错误。在网上搜索了一下问题的原因:原来是模拟器或真机中的/system/xbin 目录下少了sqlite3 这个文件。解决方法如下:

[1] 让/system文件夹可读写

$ adb shell # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system

[2] 打开另外一个有sqlite3(/system/xbin/sqlite3)的模拟器或者真机(要获得root权限),把sqlite3文件导出,并把它导入到没有sqlite3的机器的 /system/xbin 目录下面。[注:可以使用DDMS或者File Exploer来完成这个操作]

$ adb push sqlite3 /system/xbin

[3] 修改 sqlite3 权限

# chmod 4755 /system/bin/sqlite3

[4] 设置 /system为只读文件

# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system

[5] 通过上面的4个步骤就可以使用 sqlite3 命令来操作 SQLite 数据库了。

相关内容