【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的依賴庫,我沒有遇到過,就不敘述了,方法跟上面差不多。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章