Trước khi bạn bắt đầu
Một trong những động lực để khám phá NDK ngay từ đầu là cơ hội để sử dụng các dự án mã nguồn mở, nhiều dự án trong số đó được viết bằng C. Sau khi hoàn thành hướng dẫn này, bạn sẽ học được cách tạo một thư viện giao diện nguyên gốc Java (JNI), được viết bằng C và được biên dịch bằng NDK, và kết hợp thư viện đó vào một ứng dụng Android được viết bằng ngôn ngữ Java. Ứng dụng này giải thích cách thực hiện các phép xử lý ảnh cơ bản đối với dữ liệu ảnh thô. Bạn cũng sẽ tìm hiểu cách mở rộng môi trường xây dựng của Eclipse để tích hợp một dự án NDK vào một tệp dự án SDK của Android. Từ nền cơ sở này, bạn sẽ được trang bị tốt hơn để chuyển mã nguồn mở hiện có vào nền tảng Android.
Hướng dẫn này giới thiệu NDK của Android trong môi trường Eclipse. NDK được sử dụng để thêm chức năng cho một ứng dụng Android bằng cách sử dụng ngôn ngữ lập trình C. Hướng dẫn này bắt đầu bằng việc xem xét NDK ở mức cao và các kịch bản sử dụng phổ biến của nó. Từ đó, chủ đề về xử lý ảnh được giới thiệu, tiếp theo là một giới thiệu và trình diễn ứng dụng trong hướng dẫn này: IBM Photo Phun. Ứng dụng này là một sự kết hợp của mã Java dựa trên-SDK và mã C do NDK biên dịch. Hướng dẫn này chuyển sang giới thiệu giao diện nguyên gốc Java (JNI), là công nghệ thú vị khi làm việc với NDK. Việc xem trước các tệp nguồn của dự án đã hoàn thành cung cấp một lộ trình cho ứng dụng đã xây dựng ở đây. Sau đó, theo cách làm từng bước một, bạn sẽ xây dựng ứng dụng này. Các tệp lớp Java và mã nguồn C được giải thích. Để kết thúc, môi trường xây dựng của Eclipse sẽ được tùy chỉnh để tích hợp chuỗi công cụ NDK trực tiếp vào quy trình xây dựng của Eclipse rất dễ sử dụng.
Để làm theo hướng dẫn này, bạn cần quen thuộc với việc xây dựng các ứng dụng Android bằng SDK của Android và có một sự hiểu biết cơ bản về ngôn ngữ lập trình C. Ngoài ra, bạn sẽ cần những thứ sau đây:
- Eclipse và Android Developer Tools (ADT-Các công cụ của nhà phát triển Android) — Trình soạn thảo mã chính, trình biên dịch Java, và Trình cắm thêm của Các công cụ phát triển Android.
- Bộ công cụ của Android Software Developer (SDK-Bộ công cụ của nhà phát triển phần mềm Android).
- Bộ công cụ của Android Native Developer (NDK-Bộ công cụ của nhà phát triển nguyên gốc Android).
- Ảnh PNG — Ảnh được sử dụng để thử nghiệm các hoạt động xử lý ảnh.
Tôi tạo ra các mẫu mã cho hướng dẫn này trên một MacBook Pro với Eclipse V3.4.2 và Android SDK V8, hỗ trợ bản phát hành Android có nhãn 2.2 (Froyo). Bản phát hành NDK được sử dụng trong hướng dẫn này là r4b. Mã này đòi hỏi phiên bản r4b hoặc mới hơn vì các khả năng xử lý ảnh của NDK của Android không có sẵn trong các phiên bản trước của NDK.
Xem phần Tài nguyên để biết các liên kết đến những công cụ này.