2

AsynchTask得到onPostExecute()方法依賴於UI線程。假設我們通過按回來按鈕關閉一個活動,而AsynchTask doInBackground()方法仍在進行中。安卓:Asynchtask的onPostExecute活動結束後

  1. 我想知道會onPostExecute執行通過考慮活動沒有顯示在屏幕上了嗎?
  2. 如果答案是最好的,它會引起異常嗎? (因爲訪問不再顯示在屏幕上的UI對象)。
+0

可能重複不會停止活動,即使已經銷燬](http://stackoverflow.com/questions/2531336/asynctask-wont-stop-even-when-the-activity-has-destroyed) – flx

回答

2

1 - 我想知道會onPostExecute執行通過考慮 活動沒有顯示在屏幕上了嗎?

是的!

2 - 如果答案是最好的,會引起異常嗎? (因爲 訪問不再顯示在屏幕上的UI對象)。

是的!它可能會導致異常,因爲你對你的活動和觀看次數的實例,它在你的AsyncTask使用不存在了

這個鏈接將幫助你更:AsyncTask won't stop even when the activity has destroyed

的[的AsyncTask
+0

但是當活動爲空任何解決方案時該怎麼辦? – PankajAndroid

+0

@PankajAndroid:當活動正在銷燬時,您可以對asynctask進行加密,或者您可以檢查onPostExecute上的空活動上下文。 –