Thông tin tài liệu:
Vòng đời của một Activity ánh xạ (maps) trực tiếp tới vòng đời của ứng dụng di động Android. Giống khi người dùng sử dụng ứng dụng của bạn hoặc thiết bị lưu trữ nó, nền tảng Android sẽ thực thi ngược trên một thể hiện Activity.
Nội dung trích xuất từ tài liệu:
Di động cho mọi người: Các hoạt động (Activities) và biểu tượng (icons) trong vòng đời ứng dụng Android Di động cho mọi người: Các hoạt động(Activities) và biểu tượng (icons) trong vòng đời ứng dụng Android của bạnThêm điều hướng cá tính vào ứng dụng Android của bạnLớp Activity chính là một khung màn hình công việc (workhouse) của ứng dụng diđộng, và nó cũng là nơi bạn có thể tinh chỉnh những tương tác của ứng dụng diđộng với người dùng. Giúp mọi thứ hoạt động chính xác theo cách mà bạn muốntrong vòng đời ứng dụng, sau đó sử dụng các biểu tượng (icon) và thanh hoạt động(Action-bar) hướng dẫn người dùng thông qua điều hướng giao diện người dùng(UI) và các tính năng khác của ứng dụng.Giới thiệuVòng đời của lớp ActivityVòng đời của một Activity ánh xạ (maps) trực tiếp tới vòng đời của ứng dụng diđộng Android. Giống khi người dùng sử dụng ứng dụng của bạn hoặc thiết bị lưutrữ nó, nền tảng Android sẽ thực thi ngược trên một thể hiện Activity. Khi ngườidùng khởi động ứng dụng của bạn, một Activity đầu tiên thực thi định nghĩa vòngđời; nó thực thi các trạng thái khác nhau khi ứng dụng chạy nền, và những trạngthái khác nữa khi bị tắt. Hình 1 thể hiện mỗi trạng thái ứng với tương tác trongvòng đời của Activity.Hình 1. Vòng đời Activity của AndroidVòng đời của ứng dụng di động Android gồm 4 trạng thái: Khởi động (Start) Tạm ngưng và tiếp tục (Pause and resume) Dừng và khởi động lại (Stop and restart) Hủy bỏ (Destroy)Tìm hiểu về từng giai đoạn và phương thức gọi của nó (mà bạn có thể thực hiệntrong một thể hiện Activity) trong các phần tiếp theo.Giai đoạn Start trong vòng đời ActivityỨng dụng chạy thử (Demo)Nếu bạn đang làm theo hướng dẫn của loạt bài này, thì chắc hẳn bạn đã tạo ứngdụng demo trong bài đầu tiên và bài thứ hai. Nếu bạn chưa có ứng dụng demo, tôikhuyên bạn nên tạo một cái trước khi tiếp tục. Ngoài ra, bạn có thể sao chép cáckho Git cho riêng ứng dụng demo Overheard Word của tôi (xem Tài nguyên).Trong bài viết trước, bạn đã sử dụng phương thức gọi lại tương ứng với việc bắtđầu một Activity, đó là onCreate. Bạn cũng có thể làm quen với onStart vàonResume, hai phương thức bổ sung được gọi khi bắt đầu. Bây giờ hãy xem xétcác phương thức trong phạm vi của vòng đời Activity.Trong môi trường phát triển Android của Eclipse, bạn có thể dễ dàng ghi đè cácphương thức bằng cách chọn tùy chọn Override/Implement MethodsHình 2. Ghi đè các phương thức vòng đời ActivityTiếp theo, chọn cả hai phương thức onStart và onResume:Hình 3. Chọn một phương thức gọiBây giờ sử dụng lớp Log của Android để tạo ra một số lời phát biểu, giống như tôilàm ở Liệt kê 1.Liệt kê 1. Thực hiện các phương thức gọi Activity của Android@Overrideprotected void onResume() { super.onResume(); Log.d(overheardword, onResume Invoked);}@Overrideprotected void onStart() { super.onStart(); Log.d(overheardword, onStart Invoked);}Bạn có thể kiểm tra kết quả bằng cách xuất ra vài thể hiện và xem chúng trongLogcat, giống như Hình 4.Hình 4. Các thông tin debug của LogCatGhi log Android với LogCatAndroid có hệ thống ghi log của riêng mình, android.util.Log. Với lớp tiện ích này,bạn có thể ghi log ở nhiều cấp độ khác nhau (chẳng hạn như info, warn, debug,v.v...) và xem các bản ghi thông qua công cụ logcat liên kết với Android SDK củabạn. Trong Eclipse, bạn sẽ thấy LogCat như một tab, mà bạn có thể sử dụng để lọccác thẻ (tag) và thậm chí là các thể hiện của ứng dụng. Logcat cũng cho phép bạntruy cập các bản ghi trên một thiết bị đơn giản bằng cách cắm thiết bị vào máy tínhđể bàn của bạn hoặc máy tính xách tay thông qua cổng USB.Như bạn có thể thấy, onCreate được gọi lần đầu tiên khi ứng dụng của bạn đượcnạp, trong khi onStart và onResume được sử dụng trong phạm vi của các giai đoạnkhác, chẳng hạn như khi một ứng dụng được chạy nền và khởi động lại.Pause (tạm ngừng) và resume (tiếp tục) trong vòng đời ActivityBởi vì các thiết bị di động thường chứa nhiều ứng dụng, các ứng dụng này cạnhtranh với nhau theo nhiều cách để thu hút sự chú ý của người dùng, điều quantrọng là ứng dụng của bạn biết khi nào để một ứng dụng khác chiếm màn hình vàsử dụng tài nguyên của thiết bị. Đôi khi người dùng sẽ cần phải thực hiện một cuộcgọi đến trong khi sử dụng ứng dụng của bạn, hoặc ứng dụng của bạn có thể đưa ramột hộp thoại pop-up như một yêu cầu thông tin hoặc thông báo lỗi. Hoặc hànhđộng sẽ phần nào cản trở các Activity hiện tại.Khi một Activity bị che khuất một phần, phương thức onPause được gọi. KhiActivity tạm ngưng để lấy lại tiêu điểm, phương thức onResume được gọi. Mỗiphiên pause-and-resume (tạm-ngưng-và-tiếp-tục) có nghĩa là các Activity bị ảnhhưởng đã được che khuất một phần nhưng không hoàn toàn ẩn.Khi ứng dụng được ẩn hoàn toàn, chẳng hạn, khi người dùng có một cuộc gọi điệnthoại, onPause cũng được gọi, nh ...