Chủ đề giao diện người dùng khả dụng trong suốt thời gian hiển thị của ứng dụng có thể mở rộng trên sự kết hợp của nhiều hoạt động.
Bất cứ điều gì bạn thay đổi trong quan điểm phải được thực hiện trên thread UI và onPostExecute của AsyncTask phản ánh cùng một logic bằng cách thực hiện các hướng dẫn bên trên thread UI.
Bạn có thể sử dụng runOnUiThread trong của riêng bạn Thread
để thực hiện thay đổi trên Chế độ xem. Nhưng kể từ AsyncTask có phương thức onPostExecute (cũng chạy trên chuỗi giao diện người dùng) nên bạn không cần sử dụng runOnUiThread ở đó.
Cập nhật
Về câu hỏi của bạn: Vâng, onPostExecute sẽ vẫn được gọi (vì nó gọi bởi một thread riêng biệt) ngay cả khi hoạt động của bạn bị phá hủy và nếu phương pháp này sẽ thao tác xem, bạn sẽ chỉ nhận được Lực lượng Đóng lỗi vì tham chiếu đến hoạt động của bạn không còn khả dụng nữa.
'onPostExcecute' sẽ chạy nhưng ném Ngoại lệ để cố chạy trên Chủ đề đã chết nếu Hoạt động của bạn bị hủy. Nếu bạn có AsyncTask chạy khi hoạt động của bạn có thể bị tắt, hãy cân nhắc chuyển mã của bạn sang dịch vụ hoặc sử dụng trình tải. – Jave
trong trường hợp Hoạt động bị hủy: Nó sẽ bị lỗi vì mất tham chiếu với Hoạt động gốc. Hoạt động dừng bị tạm dừng, hoạt động vẫn chạy trên Hoạt động đó. Đối với kịch bản này: bạn nên sử dụng dịch vụ có mục đích và nhận kết quả qua Broadcast. –