Thứ Năm, 28 tháng 6, 2018

Video: Tối ưu bộ nhớ với việc gọi Activity


Tác giả: Phạm Công Thành

Mc đích: Tiếp nối của bài Android đầu tiên ‘Thực hiện ứng dụng đơn giản "Play a song" với Android, sử dụng công cụ Android Studio’ (http://www.kieutrongkhanh.net/2018/06/video-thuc-hien-ung-dung-on-gian-play.html ) với việc chúng ta đã dùng intent để gọi một service từ một activity, chúng ta sẽ làm quen với cách thức để gọi activity hiệu quả hơn thông qua cơ chế tự động activity được gọi sau khi xử lý xong tác vụ sẽ quay trở lại activity đã kích hoạt và tự giải phóng khỏi back stack.

Một số kiến thức tổng quát

Intent được xem như là một đối tượng để truyền các thông điệp từ  component này đến các component khác. Intent có thể được sử dụng với các mục đích như sau
  ·         Kích hoạt một activity hoặc một service
  ·         Khai báo các thông số để khởi chạy một activity hoặc một service
  ·         Sử dụng để gửi broadcast cho hệ thống.
Cơ chế lưu trữ và hiển thị các activity được đặt trong Back Stack, activity được hiển thị là activity đang ở trên đỉnh stack. Nếu mỗi lần chúng ta sử dụng startActivity(intent) để gọi một activity, activity sẽ được khởi tạo và đặt vào đỉnh stack để hiển thị. Tuy nhiên, một activity có thể được tận dụng để sử dụng nhiều lần. Do vậy, trong quá trình xây dựng ứng dụng, khi chúng ta gọi startActivity(intent) mà activity đó cho dù đã tồn tại trong Back Stack thì hệ thống vẫn sẽ tạo ra mới và đưa vào Back Stack. Việc này sẽ gây ra việc phí phạm bộ nhớ cho ứng dụng.
Android có hỗ trợ một cơ chế để xử lý vấn đề nêu với việc khi một Activity sau khi xử lý xong sẽ tự động quay lại activity đã gọi nó và tự giải phóng khỏi Back Stack.


Bài trước (Bài 1: Thực hiện ứng dụng đơn giản "Play a song" với Android, sử dụng công cụ Android Studio)
Bài tiếp theo (Bài 3: ProgressDialog và Send SMS trong Android)

Không có nhận xét nào:

Đăng nhận xét