Android studio查看手機/data/data下數據並導出,歷經N小時的摸索,查閱資料,最終解決這個問題。雖然看起來是小問題,可是不解決內心很差受。網上的資料不少,可是能用的,能有效果的不多,下面我來總結個人方法。
首先要查看data/data下的數據,要求手機必須root.
打開Android studio點擊這個html
點進以後發現data文件打不開,沒有權限,java
so linux
此時的你,應該是手機root過了 吧,可是你點擊data發現目錄下邊,由於你沒有權限打開。而後咱們再看看 Permissions 下面的顯示 是權限的意思 而drwxrwx–x 是須要linux的文件權限訪問權限下邊進入命令行受理權限。shell
接下來找到咱們的SDK 目錄下的文件數據庫
從這裏打開咱們的DOS 命令 接下來重點來了工具
三、輸入圖中命令修改權限spa
修改權限命令: adb shell su -c 「chmod 777 /data/data/包名」命令行
想要修改怎麼樣的一個文件夾的訪問權限 加個文件路徑即可
執行完畢以後! 在DDMS 中就能夠看到咱們要訪問的文件夾了!code
接下來是怎麼導出咱們所需的文件。 好比我想導出聯繫人的數據庫表orm
可是當你點擊右上方工具欄的導出時,老是爆出如下的錯誤,很無奈,差了不少方法都解決不了。下面我給出能夠解決的方法,必定能夠導出
解決辦法是去到安卓的adb目錄\Android\sdk\platform-tools下按住Shift右鍵「在此處打開命令行窗口」,進入命令行窗口後:須要操做的命令有:
一、adb shell進入shell模式
1
|
adb shell
|
二、得到全部root權限
1
|
|
三、先把文件夾權限所有打開
1
|
chmod
777
/data/
|
四、給裏邊的db文件權限設置成可讀可寫可操做
1
|
chmod
777
/data/data/(項目全包名)/databases/xxx.db
|
五、cd命令進入db文件所在目錄:
1
|
cd /data/data/(項目全包名)/databases
|
六、複製內容到一個temp文件中去,這一步很關鍵,目的是爲了繞過有時候對文件直接pull的話,會找不到文件目錄這一後面會出現的狀況。
1
|
cat xxx.db > /sdcard/xxx.db
|
七、運行兩次exit直接返回到正常的終端提示符
八、將temp文件拉出來,拉到你進入命令行的文件下,就是說pull出來的數據庫文件在\Android\sdk\platform-tools文件夾下,打開個人電腦找到它!
1
|
adb pull /sdcard/xxx.db
|
再強調一點,怕你找不到pull到哪裏了,它就在你進入命令行的那個文件夾裏,本身瞪大眼睛看看就找到了!
到此目的達到,成功提取手機中的數據庫。
其餘的方法我都試過了,都不行,唉,大家網上能搜到的,我也已經試過了。。。假如你直接用命令 adb pull /data/data/全包名/databases/xxx.db將數據庫db文件拉出來的話,會找不到目錄的
以後將提取的數據庫文件使用專業軟件打開就能夠查看了,我是用的是