【Android开发】使用adb命令发现手机中sqlite3 not found的解决办法

前端之家收集整理的这篇文章主要介绍了【Android开发】使用adb命令发现手机中sqlite3 not found的解决办法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
原文:http://www.educity.cn/wenda/389797.html
使用adb命令发现手机中sqlite3 not found的解决办法

  在Android开发方面,我是小白,起步没多久。最近用到了sqlite本地缓存数据,我希望像MysqL一样通过命令行查看建立的表以及表中的数据,于是用adb shell进入,敲入sqlite3,提示 sqlite3: not found。 网上搜索了一下,网上的文章倒是不少,但如果直接复制人家的命令的话,发现仍然报错,于是自己研究了下,总结如下,希望遇到同样问题的朋友少走弯路:

  1. 需要获取手机的root权限,方法很多了,我用的是360一键Root,有时也用百度一键Root

  2. 从其他手机拷贝sqlite3文件到PC,我是从模拟器copy出来的,为方便大家,附件就有,可以直接下载哈

  3. 进入手机建立个临时目录

  开始---cmd---adb shell---mkdir /mnt/sdcard/tmp,然后退出到cmd下

  adb push D:/temp/sqlite3 /mnt/sdcard/tmp

  4. copy文件到/system/xbin

  adb shell

  su (这一步报permission denied的话是Root没有成功,重新Root吧)

  cp /mnt/sdcard/tmp/sqlite3 /system/xbin/sqlite3 (注意:这一步可能报两种错,第一种: cp not found,将命令换成cat /mnt/sdcard/tmp/sqlite3 > /system/xbin/sqlite3,第二种:read-only file system,说明/system是只读的,此时需要重新mount,改为可读写,然后继续拷贝)

  重新mount方法如下:

  mount (从屏幕列出来的mount数据中找到/system的mount信息,空格隔开的,第一列表示设备名,第二列表示目录,第三列表示文件系统,第四列表示权限。网上其他教程在这一步都直接列出了他们的命令,由于设备名和文件系统不一样,所以执行不成功)

  mount命令为:mount -o remount,rw -t 第三列信息 第一列信息 /system

  如下图,注意看圈红的地方:

  

  mount成功后,再执行上面说的文件copy的步骤,然后就能copy到 /system/xbin目录下了

  需要改下文件的权限,命令: chmod 4755 /system/xbin/sqlite3

  最后运行下,sqlite3,发现成功了吧

  注意:有些手机可能还需要导入sqlite的依赖库,我没有遇到过,就不叙述了,方法跟上面差不多。

猜你在找的Sqlite相关文章