我的應用程序使用一個未捕獲的異常處理程序,在應用程序崩潰時向我發送堆棧跟蹤。我經常從隨機用戶那裏得到這份報告。隨機異常android.database.sqlite.SQLiteException:無法打開數據庫文件
我不能複製它,數據庫的開放總是成功的在我的情況。這不是存儲在外部SD卡上的數據庫,只有使用SQLiteOpenHelper(context, "SomeName", null, someVersionCode)
打開的數據庫。
你有這方面的經驗嗎?打開數據庫之前可以檢查的可能性有哪些?
謝謝!
android.database.sqlite.SQLiteException: unable to open database file
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
at android.app.ActivityThread.access$2200(ActivityThread.java:119)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4363)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.database.sqlite.SQLiteException: unable to open database file
at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)
at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1698)
at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:739)
at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:761)
at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:754)
at android.app.ApplicationContext.openOrCreateDatabase(ApplicationContext.java:476)
at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:193)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:98)
確保資產的文件夾內的數據庫名稱和申報數據庫名稱數據庫中的輔助類是一樣的。並在嘗試複製數據庫時使用數據庫名稱檢查數據庫的路徑。把你的代碼放在這裏,以便其他人可以檢查你的數據庫幫助類。 – Maulik 2013-10-15 12:37:04
錯誤顯示數據庫無法打開數據庫,這意味着您可能沒有在打開的數據庫方法中設置屬性「SQLiteDatabase.OPEN_READWRITE」條件,並且更改爲數據庫文件屬性更改讀取寫入權限。確保以上兩種情況。 – Maulik 2013-10-15 12:42:30
訪問此[鏈接](http://stackoverflow.com/questions/4187631/unable-to-open-database-file-when-using-sqliteopenhelper-with-instrumentation)可能它會幫你充滿 – Engineer 2013-10-21 06:52:07