怎麼辦呢?要不要去告訴經理該需求難以實現呢?
哈哈,咱們回顧下開頭的那段對話,裡面有我們的解決方案!
沒錯,我們可以root嘛,雖然安卓並不是很喜歡root這個東西,但是針對這個需求,它卻是乙個好東西呢。
至於如何root,網上有太多太多的方案,這裡就不再贅述,只是給大家分享一下我參考的一種方式:
root方案
root之後,我們通過file的listfile去遍歷檔案試試,如果不出意外的話會報乙個no such file錯誤。可以我們通過device file explorer是可以看到對應檔案的,難道是root之後還是沒法訪問到data目錄嗎?
或許是沒有root成功?我們用adb shell來認證一下:
首先,我們開啟cmd視窗,輸入adb shell命令執行,結果如下圖:
輸入su之後執行
我們看到$變成了#,這說明手機是root成功了的。
既然我們已經開啟了cmd,不如通過命令的方式去檢視下資料庫所在的目錄?剛才提到過,我們借助device file explorer是能夠看到對應的目錄的,我們直接通過cd命令訪問某目錄,並ls列印列表看一下。
神奇不神奇?
通過命令我們竟然能夠訪問到資料庫所在的目錄,那麼在安卓**中是不是也可以通過命令來訪問呢?
答案顯然是可以的。
我們寫乙個方法來獲取資料庫列表,**如下:
private listgetdblistbypkg(string pkgname)}}
in.close();
out.close();
proc.destroy();
} catch (exception e)
return dbs;
}
如何讀取第三方應用的資料庫?(PART 2)
public static void move string oldpath,string newpath catch exception e finally process.destroy catch exception ee 將db檔案複製到公有空間 如外部儲存 之後,我們就可以通過sqlite...
IOS第三方資料庫 FMDB
ios中原生的sqlite api在使用上相當不友好,在使用時,非常不便。於是,就出現了一系列將sqlite api進行封裝的庫,例如fmdb plausibledatabase sqlitepersistentobjects等,fmdb 是一款簡潔 易用的封裝庫,這一篇文章簡單介紹下fmdb的使用...
IOS第三方資料庫 FMDB
ios中原生的sqlite api在使用上相當不友好,在使用時,非常不便。於是,就出現了一系列將sqlite api進行封裝的庫,例如fmdb plausibledatabase sqlitepersistentobjects等,fmdb 是一款簡潔 易用的封裝庫,這一篇文章簡單介紹下fmdb的使用...