运行我有一个ViewPager
,其中每个“页”是从一排装在一个光标加载一些片段。每个片段在设备上显示图像(JPEG)。当用户退出片段(即刷卡/换页,打回/,或者只是关闭应用程序完全)我要调用一个打开JPEG文件进行写入和执行其元数据的更新的方法。实际工作最终由Apache Commons Imaging库处理。是否片段的onStop在UI线程
我从每个片段的生命周期onStop()
处理程序调用我的saveToFile()
方法来实现这一点。 这是否意味着整个文件操作最终在UI线程上运行?我应该为此设置一个AsyncTask
吗?
说由于某种原因突然(某些JPEG)文件写入应该需要很长的时间,例如2分钟。那么会发生什么?在恢复之前,UI是否会等待(冻结)该页面/片段?或者程序(写入文件)以某种方式进行“在后台”?或者这个过程是否会被杀死,中途停下来呢?
目前我有这种方法(onStop
调用saveToFile()
,调用映像库,然后更新文件)的方式似乎按照它应该的方式工作。即使我结束应用程序,我仍然会看到我的Toast文本弹出,并显示“写入文件...”看起来,这个过程从未受到干扰,而且我不能说我遇到了任何UI延迟。
是活性片段的所有生命周期方法是在主线程(又名UI线程)来执行。你可以通过这些方法来玩视图来确认它。 – Sufian