您好我在android中創建sqlite數據庫有一些問題。創建數據庫的Android權限
在模擬器上一切正常,我可以創建數據庫。但它在實際的機器上不起作用。當我嘗試在手機上調試應用程序時,它只是無法創建數據庫。
那麼誰能告訴我發生了什麼事?我需要在Manifest文件中添加什麼特殊權限?我試過ACCESS_CHECKIN_PROPERTIES或WRITE_EXTERNAL_STORAGE,但仍然無法獲取數據庫。
順便說一句,自定義數據庫只能存儲在SD卡,但根目錄?
非常感謝!
您好我在android中創建sqlite數據庫有一些問題。創建數據庫的Android權限
在模擬器上一切正常,我可以創建數據庫。但它在實際的機器上不起作用。當我嘗試在手機上調試應用程序時,它只是無法創建數據庫。
那麼誰能告訴我發生了什麼事?我需要在Manifest文件中添加什麼特殊權限?我試過ACCESS_CHECKIN_PROPERTIES或WRITE_EXTERNAL_STORAGE,但仍然無法獲取數據庫。
順便說一句,自定義數據庫只能存儲在SD卡,但根目錄?
非常感謝!
對錯誤沒有任何反饋,不可能告訴你代碼中有什麼問題。不過,我可以告訴你,你需要使用自己的數據庫而不是需要ACCESS_CHECKIN_PROPERTIES
。除非您嘗試訪問SD卡,否則您不應該需要WRITE_EXTERNAL_STORAGE
。
的數據庫默認存儲在您的應用程序文件夾中的內部存儲的子文件夾,即:
/data/data/YOUR_APP/databases/YOUR_DATABASAE.db
如果你這樣做,一個物理設備上它雖然植根。
@Aleadam謝謝Aleadam。這個權限在這裏都不起作用。問題是沒有這些模擬器上的權限,我可以創建數據庫並使用遊標獲取記錄。我無法在手機上完成。那麼你能告訴我爲什麼? – 4af2e9eb6 2011-05-30 06:48:33
@Kitten不,我不能。出於與昨天相同的原因:**您需要閱讀logcat **。請參閱http://developer.android.com/guide/developing/tools/logcat.html或在Eclipse中檢查調試透視圖。 – Aleadam 2011-05-30 06:52:22
@Aadadam謝謝你們一切!祝你今天愉快!! – 4af2e9eb6 2011-05-30 15:57:20
我有完全相同的問題。我的應用程序會在模擬器上創建一個數據庫,讀取和寫入數據,但在設備上時會崩潰。
我找到了一個非常簡單的解決方案:在/data/data/YOUR_APP/databases/YOUR_DATABASAE.db手動刪除設備上的數據庫,然後重新運行您的應用程序。
在我的情況下工作,希望它有幫助。
也許你有這個問題,因爲你的手機上安裝了先前版本的應用程序。在安裝新版本之前,嘗試通過「應用程序管理器」卸載以前的版本。我以這種方式解決。
這很容易解決您必須在DB Java文件 對於如宣佈你的數據庫名稱還沒有添加.db擴展名,public static final String DB_NAME = "tasks.db";
不要忘了.db擴展
沒關係。數據庫名稱幾乎可以是任何東西。 – laalto 2016-07-11 19:37:30
它爲我工作。 – 2016-07-19 16:07:25
在首先我檢查權限和運行時獲得權限,但由於targetSdkVersion是25,問題未解決, 與db一起工作而不使用.db的EXTENSION總是很好用,但它看起來像targetSdkVersion的25需要.db的EXTENSION 和我的問題解決了。
閱讀logcat。它會告訴你問題是什麼。 – Aleadam 2011-05-29 04:10:34
本示例應用程序演示瞭如何使用數據庫,它適用於仿真器和設備:https://github.com/commonsguy/cw-android/tree/master/Database/Constants – CommonsWare 2011-05-29 11:06:17
非常感謝大家。我已經解決了它。問題是仿真器不需要擴展「.db」,而實際的手機需要它。 – 4af2e9eb6 2012-05-20 23:04:42