我已经在我的适配器类中关闭了数据库,所以这个错误在logcat上显示但是我的应用程序不是forcr关闭但只有错误显示在log cat ..其中我shuold必须关闭数据库以忽略此错误... ?
我的错误是......以下...我离开哪个班级关闭数据库.....我从这个链接中获取帮助http://www.vogella.de/articles/AndroidSQLite/article.html
ERROR/Database(265): Leak found ERROR/Database(265): java.lang.IllegalStateException: /data/data/expenceanywhere.mobile/databases/data SQLiteDatabase created and never closed ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1581) ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:638) ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:659) ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:652) ERROR/Database(265): at android.app.ApplicationContext.openOrCreateDatabase(ApplicationContext.java:482) ERROR/Database(265): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:193) ERROR/Database(265): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:98) ERROR/Database(265): at expenceanywhere.mobile.NotesDbAdapter.open(NotesDbAdapter.java:56) ERROR/Database(265): at expenceanywhere.mobile.AddEditExpense.onCreate(AddEditExpense.java:199) ERROR/Database(265): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123) ERROR/Database(265): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2364) ERROR/Database(265): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2417) ERROR/Database(265): at android.app.ActivityThread.access$2100(ActivityThread.java:116) ERROR/Database(265): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) ERROR/Database(265): at android.os.Handler.dispatchMessage(Handler.java:99) ERROR/Database(265): at android.os.Looper.loop(Looper.java:123) ERROR/Database(265): at android.app.ActivityThread.main(ActivityThread.java:4203) ERROR/Database(265): at java.lang.reflect.Method.invokeNative(Native Method) ERROR/Database(265): at java.lang.reflect.Method.invoke(Method.java:521) ERROR/Database(265): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791) ERROR/Database(265): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549) ERROR/Database(265): at dalvik.system.NativeStart.main(Native Method)I have closed the database in my adapter class, so whay is this error showingup on logcat but my application is not forcr closing but only error is showing on log cat..where i shuold have to close the database for ignoring this error...?
my errors are...below..in which class i left for closing the database.....i took help from this link http://www.vogella.de/articles/AndroidSQLite/article.html
ERROR/Database(265): Leak found ERROR/Database(265): java.lang.IllegalStateException: /data/data/expenceanywhere.mobile/databases/data SQLiteDatabase created and never closed ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1581) ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:638) ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:659) ERROR/Database(265): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:652) ERROR/Database(265): at android.app.ApplicationContext.openOrCreateDatabase(ApplicationContext.java:482) ERROR/Database(265): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:193) ERROR/Database(265): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:98) ERROR/Database(265): at expenceanywhere.mobile.NotesDbAdapter.open(NotesDbAdapter.java:56) ERROR/Database(265): at expenceanywhere.mobile.AddEditExpense.onCreate(AddEditExpense.java:199) ERROR/Database(265): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123) ERROR/Database(265): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2364) ERROR/Database(265): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2417) ERROR/Database(265): at android.app.ActivityThread.access$2100(ActivityThread.java:116) ERROR/Database(265): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) ERROR/Database(265): at android.os.Handler.dispatchMessage(Handler.java:99) ERROR/Database(265): at android.os.Looper.loop(Looper.java:123) ERROR/Database(265): at android.app.ActivityThread.main(ActivityThread.java:4203) ERROR/Database(265): at java.lang.reflect.Method.invokeNative(Native Method) ERROR/Database(265): at java.lang.reflect.Method.invoke(Method.java:521) ERROR/Database(265): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791) ERROR/Database(265): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549) ERROR/Database(265): at dalvik.system.NativeStart.main(Native Method)最满意答案
请记住始终在Helper类中关闭db
//---closes the database--- public void close() { DBHelper.close(); }类似的问题: Android中的Sqlite数据库LEAK FOUND异常?
Remember to always close db in Helper class
//---closes the database--- public void close() { DBHelper.close(); }The similar question: Sqlite Database LEAK FOUND exception in android?
更多推荐
发布评论