Flutter

Platform Channels

MethodChannel, EventChannel, tích hợp code native, API native Android/iOS, FFI

20 câu hỏi phỏng vấn·
Senior
1

Platform Channel trong Flutter là gì?

Câu trả lời

Platform Channel là cơ chế giao tiếp hai chiều giữa code Dart của Flutter và code native của nền tảng (Android/iOS). Nó cho phép gọi các API native không có sẵn trong Flutter, chẳng hạn như truy cập cảm biến phần cứng, dùng SDK native hoặc tích hợp code legacy. Việc giao tiếp dùng mã hóa nhị phân chuẩn để truyền các thông điệp bất đồng bộ giữa hai môi trường.

2

Sự khác biệt chính giữa MethodChannel và EventChannel là gì?

Câu trả lời

MethodChannel cho phép các lệnh gọi method một lần với một phản hồi duy nhất (mẫu request/response), lý tưởng cho các thao tác như lấy mức pin hoặc thực thi một hàm native. EventChannel cho phép nhận luồng dữ liệu liên tục từ code native dưới dạng Dart Stream, hoàn hảo cho các sự kiện lặp lại như cập nhật GPS, đọc cảm biến hoặc thông báo hệ thống.

3

Codec nào được dùng mặc định để tuần tự hóa dữ liệu trong một MethodChannel?

Câu trả lời

StandardMethodCodec là codec mặc định được MethodChannel sử dụng. Nó dùng StandardMessageCodec để mã hóa và giải mã các giá trị trao đổi giữa Dart và code native. Codec này hỗ trợ các kiểu nguyên thủy (null, bool, int, double, String), list và map. Với các nhu cầu cụ thể, có thể tạo codec tùy chỉnh hoặc dùng JSONMethodCodec để tuần tự hóa JSON.

4

Làm thế nào để định nghĩa một tên duy nhất cho một Platform Channel?

5

Các lệnh gọi MethodChannel được nhận trên thread nào ở phía native Android?

+17 câu hỏi phỏng vấn

Nắm vững Flutter cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí