Mục Lục
1. Giới thiệu
Android Activity Lifecycle (Vòng đời của một Activity trong Android) mô tả các trạng thái khác nhau mà một Activity
có thể trải qua từ khi được tạo ra cho đến khi bị hủy. Activity
là một thành phần cơ bản trong ứng dụng Android, đại diện cho một màn hình đơn lẻ với giao diện người dùng. Vòng đời của Activity
được quản lý bởi hệ điều hành Android và bao gồm các giai đoạn chính sau:
2. Các giai đoạn trong Activity Lifecycle:
onCreate()
:- Được gọi khi
Activity
được khởi tạo lần đầu tiên. Đây là nơi bạn thực hiện các thao tác khởi tạo cơ bản như thiết lập giao diện người dùng (UI
), khai báo các biến, tạo các đối tượng cần thiết, và thiết lập dữ liệu ban đầu.
- Được gọi khi
onStart()
:- Được gọi khi
Activity
trở nên hiển thị với người dùng nhưng chưa ở trạng thái tương tác. Ở giai đoạn này,Activity
chuẩn bị để chuyển sang trạng thái tiếp theo (tương tác với người dùng).
- Được gọi khi
onResume()
:- Được gọi khi
Activity
bắt đầu tương tác với người dùng. Đây là trạng thái màActivity
ở phía trước màn hình và người dùng có thể tương tác với nó.Activity
lúc này đang hoạt động đầy đủ.
- Được gọi khi
onPause()
:- Được gọi khi
Activity
không còn ở phía trước màn hình (bị che khuất một phần hoặc hoàn toàn bởi mộtActivity
khác). Ở đây, bạn nên lưu các dữ liệu quan trọng và dừng các thao tác tiêu tốn tài nguyên như phát nhạc, video…
- Được gọi khi
onStop()
:- Được gọi khi
Activity
không còn hiển thị với người dùng.Activity
này có thể đã bị thay thế bởi mộtActivity
khác hoặc bị ẩn đi. Bạn nên sử dụngonStop()
để dừng hoặc hủy các tác vụ không cần thiết khiActivity
không còn hiển thị.
- Được gọi khi
onRestart()
:- Được gọi khi
Activity
đã bị dừng (stop) và đang được khởi động lại.onRestart()
được theo sau bởionStart()
.
- Được gọi khi
onDestroy()
:- Được gọi trước khi
Activity
bị hủy hoàn toàn. Điều này xảy ra khiActivity
kết thúc (người dùng thoát khỏiActivity
) hoặc hệ thống cần thu hồi bộ nhớ. Bạn nên giải phóng các tài nguyên hoặc hủy các tác vụ còn lại ở đây.
- Được gọi trước khi
3. Mô hình Vòng đời của Activity
+---------------------+
| onCreate() |
+---------------------+
|
V
+---------------------+
| onStart() |
+---------------------+
|
V
+---------------------+
| onResume() |
+---------------------+
|
| Người dùng tương tác với Activity
|
V
+---------------------+
| onPause() |
+---------------------+
|
V
+---------------------+
| onStop() |
+---------------------+
|
V
+---------------------+
| onDestroy() |
+---------------------+
4. Ví dụ về Activity Lifecycle
- Khi một ứng dụng mới được mở, các phương thức được gọi theo thứ tự:
onCreate()
->onStart()
->onResume()
. - Khi người dùng nhấn nút “Home”,
Activity
sẽ chuyển từonPause()
->onStop()
. - Khi người dùng quay lại ứng dụng,
Activity
chuyển từonRestart()
->onStart()
->onResume()
. - Khi ứng dụng bị đóng hoàn toàn,
Activity
chuyển từonPause()
->onStop()
->onDestroy()
.
5. Tóm lại
Activity Lifecycle
giúp bạn quản lý các trạng thái của Activity
một cách hiệu quả, đảm bảo tài nguyên được sử dụng đúng cách và cung cấp trải nghiệm người dùng tốt.
Xin chào,
99,99% nội dung trên website này là nhờ hỏi ChatGPT, rồi mình biên tập lại để dễ hiểu và dùng lâu dài. Một vài bài tự viết, còn lại là “làm việc nhóm với AI”
Mình lưu tại đây để tra cứu, học tập và chia sẻ với bạn bè. Nếu bạn tìm được gì hữu ích, cứ đọc thoải mái – miễn phí, không quảng cáo.
Mình cũng có vài app cá nhân:
QuestionBank – Ôn thi vào 10 (iOS, Android)
TypingTest by QuestionBank (iOS, Android)
Cảm ơn bạn đã ghé qua!