Đa tiến trình trong Android

Một phần của tài liệu Tìm hiểu về lập trình Mobie Android. Xây dựng ứng dụng từ điển nói (Trang 59 - 66)

1. Thread

• Thread là một đơn vị xử lý cơ bản trong hệ thống.

• Mỗi tiến trình xử lý tuần tự các đoạn code của nó, sở hữu một con trỏ lệnh, một tập các thanh ghi và stack riêng, các tiểu trình chia sẽ CPU giống như cách chia sẻ giữa các tiến trình.

• Thread hoạt động trong chế độ nền. Ví dụ:

2. Handler

Là một sự kiện để giao tiếp với Thread. Chỉ có ở đây mới có thể cập nhật giao diện người dùng.

3. AsynTask

• Nó cũng như Thread, nhưng AsynTask cho phép cập nhật giao diện người dùng trong khi nó thực hiện.

• Sử dụng AsynTask dễ dàng và chúng ta nên sử dụng.

• Khai báo AsynTask:

 Params: là kiểu dữ liệu, tài nguyên truyền vào cho AsynTask.  Progress: Kiểu tài nguyên được cập nhập trong khi thực thi.  Result: Kiểu tài nguyên trả về sau khi thực hiện xong AsynTask.  Nếu không khai báo kiểu tài nguyên nào thì khai kiểu Void

XI. Service

Service là 1 trong bốn component cơ bản của android(services, activities, content providers, broadcast receivers). Service chạy ẩn ở dưới để thực hiện các thao tác mà không cần tương tác với người dùng.

Ví dụ, service có thể mở một bản nhạc trong khi người dùng đang sử dụng ứng dụng khác, hoặc là tải dữ liệu thông qua mạng mà không ảnh hưởng gì đến các hoạt động của người sử dụng.

onStartCommand(): hệ thống sẽ gọi hàm này khi một component khác hoặc một activity yêu cầu bắt đầu service bằng cách gọi hàm startService(). Nếu bạn chỉ muốn sử dụng service kiểu ràng buộc thì không cần phải cài đặt hàm này.

onBind(): hệ thống sẽ gọi hàm này khi một component muốn ràng buộc với service bằng cách gọi hàm bindService(). Khi cài đặt hàm này bạn phải cung cấp giao tiếp giữa client và service bằng cách trả về iBinder. Bạn luôn luôn phải cài đặt hàm này, nếu không muốn ràng buộc bạn có thể trả về null.

onCreate(): hệ thống gọi hàm này khi lần đầu tiên service chạy trước khi chạy hàm onStartCommand và onBind. Nếu service chạy rồi thì hàm này không được gọi nữa.

onDestroy(): hệ thống gọi hàm này khi service không được sử dụng nữa và bạn cần gọi hàm này để giải phóng tài nguyên cần thiết liên quan đến service.

Nếu một component bắt đầu service bằng cách gọi hàm startService() thì nó sẽ chạy cho đến khi chính nó kết thúc với hàm stopSelf() hoặc một component khác gọi hàm stopService().

Bắt đầu service:

Kết thúc service:

Một phần của tài liệu Tìm hiểu về lập trình Mobie Android. Xây dựng ứng dụng từ điển nói (Trang 59 - 66)

Tải bản đầy đủ (DOCX)

(71 trang)
w