一开始按照书上的命令打,前面的还是顺风顺水,可惜到了后面打sqlite3的时候,就出现了not found,于是只能上网百度寻找答案,没想到第一条结果就是最正确的答案了。
(这里有个注意点,你需要键入 su 将权限改为root,即将前面的$改为#)
我也把自己按照它的结果再重新做一遍:
1.首先手机是要有获得root权限的!(这个用android手机的,很多人都会了,最简单的就是下载有一键root的软件)
2.因为你sqlite3 not found , 所以你需要去找一个sqlite3的文件,先运行一个你的模拟器,因为我的手机是4.1.3,所以我就运行一个也是4.1.3的模拟器,我现在不清楚其它版本的sqlite3的文件会不会对版本不同的手机有影响。因为我们要做的就是把从模拟器那里获得到的sqlite3文件复制到我们要运行的手机里。
先将你的手机从电脑断开,在eclipse里运行模拟器,然后在DDMS的File Explorer里的system/xbin/sqlite3 ,通过右上角把sqlite3 pull出来,我是放到E盘的。
3.连接上手机,进入adb shell ,然后在手机里临时建立个文件夹
这里因为我之前已经建立过了,所以是提示exists
然后输入exit(可能要输入多次)退回到一开始的cmd窗口,然后把你的sqlite3文件push进刚才创建的文件夹里。
接下来再把你这个文件copy到你手机里的/system/xbin/sqlite3里(这个位置不就是跟你刚才在模拟器里的位置是一样的是吧?)
最后那里提示的是Read-Only,所以不能copy进去,我们要改一些东西。(如果不是提示Read-Only,而是cp not found,那就将命令换成cat /mnt/sdcard/tmp/sqlite3 > /system/xbin/sqlite3)
先输入mount,它会显示一系列的信息,然后找到第一个/dev/....,看好第一列和第三列的信息。(我一开始就是卡在这里,按照网上其他人的答案打,但因为这第一列和第三列的信息不同机子是不一样的,所以就导致试了很多次总是不成功,因为他们po上去的是他们自己机子里的信息)
接着输入mount -o remount.rw -t 第三列信息 第一列信息 /system 回车!
然后再执行一遍刚才的copy语句 就会出现上图中后面的信息了。
最后再修改一下权限
这次键入sqlite3 就没有提示not found了,而且你还会看到版本号,我之前由于命令键入错误,当时没有提示not found,但也没有显示版本号,我还以为就成功了,但其实在进行以后的操作时就发现根本没有成功。