Giả sử bạn có hai hoạt động A và B. Bạn điều hướng từ A đến B. Hoạt động A đi tới nền tức là hoạt động A bị tạm dừng. Hoạt động B lấy nét tức là tiền cảnh. Khi bạn bấm vào nút quay lại hoạt động B được bật từ ngăn xếp lại và hoạt động A lấy trọng tâm tức là hoạt động A hồ sơ.
Khi bạn hiển thị hộp thoại trong hoạt động, hoạt động bị tạm dừng và hộp thoại được hiển thị trên hộp thoại nút quay lại bị loại bỏ và hoạt động tiếp tục (tiền cảnh).
Khi hoạt động không còn chạy, nó đang ở chế độ nền nên nó bị tạm dừng. Tôi đồng ý với Raghav Sood về những gì xảy ra khi ứng dụng gặp sự cố.
Bạn thường nên sử dụng gọi lại onPause() để:
Dừng hoạt ảnh hoặc các hành động đang diễn ra khác có thể tiêu thụ CPU. Cam kết các thay đổi chưa được lưu, nhưng chỉ khi người dùng mong đợi các thay đổi đó sẽ được lưu vĩnh viễn khi họ rời khỏi (chẳng hạn như email dự thảo). Tài nguyên hệ thống phát hành, chẳng hạn như bộ thu phát sóng, xử lý cảm biến (như GPS) hoặc bất kỳ tài nguyên nào có thể ảnh hưởng đến tuổi thọ pin trong khi hoạt động của bạn bị tạm dừng và người dùng không cần chúng.
Lưu ý:
Nhiều tác vụ có thể được giữ trong nền cùng một lúc. Tuy nhiên, nếu người dùng đang chạy nhiều tác vụ nền cùng lúc, hệ thống có thể bắt đầu hủy hoạt động nền để khôi phục bộ nhớ, khiến trạng thái hoạt động bị mất.
điều gì sẽ xảy ra khi bộ nhớ yếu và hệ thống cần khôi phục bộ nhớ cho các hoạt động hiện tại trong trường hợp đó các hoạt động bị tạm dừng bị hủy (tùy theo mức độ ưu tiên)? – Raghunandan