Nếu bạn cần giao diện của mình hoạt động trên nhiều quy trình khác nhau, bạn có thể tạo giao diện cho dịch vụ bằng?
Trả lời:
Đáp án đúng: D
Câu hỏi này kiểm tra kiến thức về các cơ chế giao tiếp liên tiến trình (IPC - Inter-Process Communication) trong Android.
- Binder: Là một cơ chế IPC mạnh mẽ và hiệu quả, thường được sử dụng cho các dịch vụ hệ thống và các ứng dụng phức tạp. Nó cho phép các quy trình khác nhau giao tiếp với nhau bằng cách sử dụng một giao diện (interface) được định nghĩa trước. Binder cung cấp khả năng truyền dữ liệu và gọi phương thức giữa các tiến trình, đảm bảo tính an toàn và bảo mật.
- Messenger: Là một cách đơn giản hơn để thực hiện IPC, sử dụng Handler và Message. Nó phù hợp cho các giao tiếp một chiều hoặc giao tiếp không đồng bộ giữa các tiến trình. Messenger thường được sử dụng khi không cần hiệu suất cao và tính phức tạp của Binder.
- AIDL (Android Interface Definition Language): Là một ngôn ngữ định nghĩa giao diện cho phép bạn xác định các giao diện lập trình mà các quy trình khác nhau có thể sử dụng để giao tiếp với nhau. AIDL biên dịch thành mã Java, sử dụng Binder để thực hiện giao tiếp liên tiến trình.
Nếu bạn cần giao diện của mình hoạt động trên nhiều quy trình khác nhau, bạn có thể sử dụng cả Messenger và AIDL (thông qua Binder) để tạo giao diện cho dịch vụ. Do đó, đáp án D là chính xác nhất.





