Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序在Android/SQLITE错误中停止/_Java_Android_Eclipse_Sqlite - Fatal编程技术网

Java 应用程序在Android/SQLITE错误中停止/

Java 应用程序在Android/SQLITE错误中停止/,java,android,eclipse,sqlite,Java,Android,Eclipse,Sqlite,昨天应用程序运行正常,我没有编辑代码。但现在它不起作用了。 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

昨天应用程序运行正常,我没有编辑代码。但现在它不起作用了。 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)
从未对数据库“/data/data/[myproject]/databases/MyDB”显式调用过
close()
android.database.sqlite.DatabaseObjectNotClosedException:应用程序未关闭在此打开的游标或数据库对象
位于android.database.sqlite.SQLiteDatabase(SQLiteDatabase.java:1943)
位于android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
位于android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)
位于android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)
位于android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:770)
位于android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
位于android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)
在mn.emondo.parliament.DBAdapter.open(DBAdapter.java:46)
位于mn.emondo.parliament.ProfileActivity.onCreate(ProfileActivity.java:46)
位于android.app.Activity.performCreate(Activity.java:4465)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)上
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)上
在android.app.ActivityThread.access$600(ActivityThread.java:123)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
位于android.os.Handler.dispatchMessage(Handler.java:99)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:4424)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:511)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
在dalvik.system.NativeStart.main(本机方法)

您尚未关闭光标。它写在你的错误里

Application did not close the cursor or database object that was opened here
因为我看不到您的代码,所以请检查您是否未关闭光标


或者尝试清理您的项目并重新构建它。

您忘了创建数据库;下次打开时,您将收到一个
DatabaseObjectNotClosedException
异常。

如果它以前工作,而不是现在,, 请尝试更改数据库的版本名


即使不起作用,也要更改版本名和数据库名。

一旦打开数据库和游标,必须在退出类或活动之前关闭这两个。 db.close(); cr.close()


请使用此方法。

从数据库中提取完数据后,请尝试此方法。
打开数据库时,需要调用db.open(),完成数据库工作时,需要调用close()方法。 使用以下方法

db.close();

您必须从活动中调用以打开数据库。java

您需要签入
ProfileActivity.java:46
DBAdapter.java:46
。您忘记调用数据库调用函数,这可能是您在“ProfileActivity.java:46”中用于打开数据库的代码。向您展示代码将为我们提供有关如何打开和关闭数据库的更多规范。