2015年8月12日 星期三

Android DB 文件權限錯誤解決



有個專案碰到需要在android寫DB,但是因為硬體是客戶自己開發,所以常常會造成DB檔案權限問題而無法開啟,所以將.db副檔名的檔案權限全開(777)

但是有時候又會遇到
unable to open database file (code 14): , while compiling: PRAGMA journal_mode
就再也打不開DB啦!!
困擾了很久才知道,android db 除了建立db檔之外還會建立一個 .db-journal 是一個類似日誌檔,記錄DB所遇到的問題。
但是因為我沒有開啟它的權限,導致我也無法開啟我的DB檔,所以也必須將這個檔案開啟777模式。

777模式開啟方法如下:

File  file = new File("your file path");
file.setExecutable(true, false);
file.setReadable(true, false);

file.setWritable(true, false);