我在销毁活动时遇到了一个错误:android.database.sqlite.SQLiteException: unable to close due to unfinalised statements,我猜测这是因为我在AsyncTasks中执行数据库操作,但它们在完成之前就被终止了。如何确保我的AsyncTasks在活动停止之前实际完成?顺便说一下,我认为如果AsyncTask同意检查,它不能被显式地杀死。这可能与Robotium集成测试有关,在测试完成并调用Robotium.finishOpenedActivities()后发生错误。我猜测如果可能的话(尽管我没有在AsyncTask实现中明确支持取消),某种方式强制停止了AsyncTask的执行。此外,我使用OrmLite进行数据库访问。
AsyncTask
代码吗?我觉得你可能是在错误的方向上进行处理... 与其试图延迟Activity
的销毁,你应该更关注在AsyncTask
内部所创建/打开的资源。 - Alex Lockwood