Вчера приложение работало нормально, и я не редактировал свои коды. Но сейчас это не работает. logcat -
close() was never explicitly called on database '/data/data/[myproject]/databases/MyDB' android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943) at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007) at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986) at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051) at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:770) at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221) at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157) at mn.emondo.parliament.DBAdapter.open(DBAdapter.java:46) at mn.emondo.parliament.ProfileActivity.onCreate(ProfileActivity.java:46) at android.app.Activity.performCreate(Activity.java:4465) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) at android.app.ActivityThread.access$600(ActivityThread.java:123) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4424) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native Method)
После того, как вы откроете базу данных и курсор, вы должны закрыть их перед выходом из класса или занятия.db.close ();cr.close ();
пожалуйста, используйте это.
Попробуйте этот метод, когда закончите выборку данных из базы данных. Когда вы открываете базу данных, вам нужно вызвать db.open (), а когда вы закончите работу с базой данных, вам нужно вызвать метод close (). используйте следующий метод.
db.close();
и вы должны позвонить, чтобы открыть базу данных из вашей Activity.java
Вы забыли close() вашу базу данных; при следующем открытии вы получите исключение DatabaseObjectNotClosedException.
close()
DatabaseObjectNotClosedException
Если раньше он работал, а не сейчас ,, попробуйте изменить название версии базы данных ,,,
даже после того, как это не сработает, измените имя версии и имя базы данных.
Вы не закрыли курсор.Это написано в вашей ОШИБКЕ.
Application did not close the cursor or database object that was opened here
Так как я не вижу ваш код, просто проверьте, что вы не закрыли свой курсор.
Или попробуйте очистить свой проект иПерестройте его.