Il thread dell'interfaccia utente è disponibile per tutta la durata visibile dell'applicazione, che può comprendere una combinazione di più attività.
Tutto ciò che si cambia in vista deve essere effettuata sui thread dell'interfaccia utente e OnPostExecute di AsyncTask riflette la stessa logica eseguendo le istruzioni all'interno sul thread dell'interfaccia utente.
È possibile utilizzare runOnUiThread nel proprio Thread
per apportare modifiche alle Visualizzazioni. Ma poiché AsyncTask ha il metodo onPostExecute (che viene eseguito anche sul thread dell'interfaccia utente), quindi non è logicamente necessario utilizzare runOnUiThread.
Aggiornamento
quanto riguarda la tua domanda: Sì, OnPostExecute sarà ancora chiamato (perché la sua invocato da un thread separato), anche se la vostra attività è distrutto e se il metodo di manipolare Visualizzazioni, Otterrai semplicemente l'errore Forza Chiudi perché il riferimento alla tua attività non è più disponibile.
'onPostExcecute' verrà eseguito ma genererà un'eccezione per cercare di eseguire su un thread morto se la tua attività viene distrutta. Se hai un AsyncTask in esecuzione quando la tua attività potrebbe essere spenta, considera di spostare il tuo codice su un servizio o usando un loader. – Jave
in caso di attività distrutta: verrà arrestato in modo anomalo perché ha perso il riferimento con l'attività di origine. Incase Activity in pausa, viene comunque eseguito su tale attività. Per questo scenario: dovresti usare il servizio intent e ottenere risultati via Broadcast. –