Trong phát triển ứng dụng Android, NDK được dùng để làm gì?
Chọn một:
Trả lời:
Đáp án đúng: A
NDK (Native Development Kit) là một công cụ cho phép bạn nhúng mã C hoặc C++ vào ứng dụng Android của mình. NDK cung cấp các thư viện và toolchains cần thiết để biên dịch mã C/C++ thành mã máy (machine code) có thể chạy trên các thiết bị Android. Ngoài ra, NDK còn cho phép ứng dụng Android gọi các thư viện native (ví dụ: thư viện đã được biên dịch sẵn cho một nền tảng cụ thể).
- Đáp án A đúng vì NDK được sử dụng để biên dịch mã nguồn C/C++ sang mã máy, cho phép tận dụng hiệu năng của phần cứng và sử dụng các thư viện C/C++ hiện có.
- Đáp án B đúng vì NDK cho phép ứng dụng Android gọi các thư viện native, mở rộng khả năng của ứng dụng bằng cách sử dụng mã đã được tối ưu hóa cho nền tảng cụ thể.
- Đáp án C sai vì NDK không biên dịch mã nguồn Java. Mã nguồn Java được biên dịch bởi trình biên dịch Java (javac) và chạy trên máy ảo Dalvik/ART.
- Đáp án D sai vì NDK không phải là công cụ phát hiện lỗi trong mã nguồn C/C++. Các công cụ như trình gỡ lỗi (debugger) và trình phân tích tĩnh (static analyzer) được sử dụng cho mục đích này.
Vì cả A và B đều đúng, nhưng B bao hàm một phạm vi rộng hơn (vì biên dịch mã C/C++ là một bước để gọi thư viện native), ta chọn B là đáp án chính xác và đầy đủ nhất trong trường hợp này.
Tuy nhiên, vì cả A và B đều đúng, nên câu hỏi này có thể gây nhầm lẫn. Trong thực tế, NDK được dùng cho cả hai mục đích: biên dịch mã C/C++ và gọi thư viện native.