【发布时间】:2009-10-12 21:03:53
【问题描述】:
两个或多个 Android 活动可以打开一个 sqlite3 数据库进行写入吗?
我有两个活动需要将数据插入到同一个 sqlite 数据库中。当第二个 Activity 调用 SQLiteOpenHelper.getWriteableDatabase() 时,会引发 IllegalStateException,并显示消息“SQLiteDatabase created and never closed”。
我已经能够通过使我的数据库对象成为单例来避免异常,但我认为必须有更好的方法。
谢谢,
约翰
【问题讨论】:
-
您可以在写入数据库后关闭它..
-
我也想过这个问题,但是一个活动是使用光标适配器填充的 ListActivity。我以为关闭数据库会使适配器的重新查询失败。
-
@John:如果你使用单例数据库,你在哪里打开和关闭它?
-
当需要时我打开数据库,做任何事情,然后关闭它。