我的Unable to destroy activity xxx: android.database.sqlite.SQLiteException: unable to close due to unfinalised statements
活动被破坏时出现错误。我认为这是因为我正在从 AsyncTasks 中执行数据库操作,并且它们在完成之前以某种方式被杀死。
如何确保AsyncTasks
在活动停止之前我的实际完成?顺便说一句,我认为如果没有通过检查同意这样做, AsyncTask
就不能明确地杀死一个。AsyncTask
在 Robotium 集成测试期间发生此错误可能与此相关。我怀疑它是在测试完成并且测试调用之后发生的Robotium.finishOpenedActivities()
。我的猜测是,AsyncTask
如果可能的话,会以某种方式在执行过程中被强制终止(尽管我不明确支持在我的AsyncTask
实现中取消)。此外,我使用 OrmLite 进行数据库访问。