【发布时间】:2012-05-05 11:46:17
【问题描述】:
我正在从我的 UI 线程(在 我的活动的 onCreate() 处理程序)。我保证活动 由于配置更改而不会重新启动(它忽略方向更改, 例如)。
在我的 Activity.onCreate() 中:我使用 asynctask.execute(),然后是 UI 线程做一些工作,然后在 Activity.onCreate() 结束之前调用 asynctask.get(...) 进行同步。
根据日志,我的 asynctask.onPostExecute() 被调用 ages 在 asynctask.get() 返回之后。更准确地说, onPostExecute 被称为 在 Activity.onResume (!) 返回之后。 (所以它确实被调用了,我的方法定义没问题,我也使用了@Override。)
我在某处读到它,因为 onPostExecute() 在 UI 线程的处理程序,UI 线程必须为它做好准备——为什么 在这种情况下它没有准备好吗?我的应用程序从方向更改开始,但由于我在清单中的设置,它不会导致任何配置更改。
有没有保证什么时候 onPostExecute() 会被调用 relative 到 asynctask.get() ?
【问题讨论】:
标签: android android-asynctask oncreate