運行我有一個ViewPager
,其中每個「頁」是從一排裝在一個光標加載一些片段。每個片段在設備上顯示圖像(JPEG)。當用戶退出片段(即刷卡/換頁,打回/,或者只是關閉應用程序完全)我要調用一個打開JPEG文件進行寫入和執行其元數據的更新的方法。實際工作最終由Apache Commons Imaging庫處理。是否片段的onStop在UI線程
我從每個片段的生命週期onStop()
處理程序調用我的saveToFile()
方法來實現這一點。 這是否意味着整個文件操作最終在UI線程上運行?我應該爲此設置一個AsyncTask
嗎?
說由於某種原因突然(某些JPEG)文件寫入應該需要很長的時間,例如2分鐘。那麼會發生什麼?在恢復之前,UI是否會等待(凍結)該頁面/片段?或者程序(寫入文件)以某種方式進行「在後臺」?或者這個過程是否會被殺死,中途停下來呢?
目前我有這種方法(onStop
調用saveToFile()
,調用映像庫,然後更新文件)的方式似乎按照它應該的方式工作。即使我結束應用程序,我仍然會看到我的Toast文本彈出,並顯示「寫入文件...」看起來,這個過程從未受到干擾,而且我不能說我遇到了任何UI延遲。
是活性片段的所有生命週期方法是在主線程(又名UI線程)來執行。你可以通過這些方法來玩視圖來確認它。 – Sufian