12/08/2018, 17:02

Phần 1: Native Development Kit (NDK) trong android

Native Development Kit (NDK) là thiết lập công cụ mà cho phép bạn sử dụng code C/C++ cũng làm việc với android, và cung cấp các thư viện nền tảng mà bạn có thể sử dụng để quản lý các hoạt động và truy cập vào các thành phần thiết bị vật lý, chẳng hạn như cảm biến và chạm. NDK có thể không phù ...

Native Development Kit (NDK) là thiết lập công cụ mà cho phép bạn sử dụng code C/C++ cũng làm việc với android, và cung cấp các thư viện nền tảng mà bạn có thể sử dụng để quản lý các hoạt động và truy cập vào các thành phần thiết bị vật lý, chẳng hạn như cảm biến và chạm. NDK có thể không phù hợp với hầu hết các lập trình viên Android mới làm quen, những lập trình viên chỉ cần dùng code Java và các framework APIs để phát triển các ứng dụng của họ. Tuy nhiên, NDK có thể hữu ích cho các trường hợp mà bạn cần phải làm một hoặc nhiều điều sau đây:

  • Giảm hiệu suất ngoài thiết bị để đạt được độ trễ thấp hoặc chạy các ứng dụng đòi hỏi nhiều tính toán, chẳng hạn như trò chơi hoặc mô phỏng vật lý.
  • Sử dụng lại thư viện C/C ++ dành cho nhà phát triển của bạn hoặc của các nhà phát triển khác.

Sử dụng Android Studio 2.2 và cao hơn, bạn có thể sử dụng NDK để biên dịch C/C ++ vào thư viện native và gói nó vào APK bằng Gradle, hệ thống tích hợp của IDE. Java của bạn sau đó có thể gọi các hàm trong thư viện gốc thông qua framework JNI (Java Native Interface). Để tìm hiểu thêm về Gradle và hệ thống Android xây dựng.

Công cụ xây dựng mặc định của Studio Studio để biên dịch các thư viện native là CMake. Android Studio cũng hỗ trợ ndk-build do số lượng lớn các dự án hiện có sử dụng bộ công cụ xây dựng. Tuy nhiên, nếu bạn đang tạo một thư viện native mới, bạn nên sử dụng CMake.

Hướng dẫn này cung cấp cho bạn thông tin bạn cần để bắt đầu và chạy với NDK trên Android Studio. Nếu bạn không có phiên bản Android Studio mới nhất, hãy tải xuống và cài đặt nó ngay bây giờ : https://developer.android.com/studio/index.html.

Chú ý người dùng Gradle thử nghiệm: Xem xét chuyển sang phiên bản plugin 2.2.0 trở lên và sử dụng CMake hoặc ndk-build để xây dựng các thư viện gốc của bạn nếu bất kỳ điều nào sau đây áp dụng cho bạn: Dự án gốc của bạn đã sử dụng CMake hoặc ndk-build; bạn nên sử dụng một phiên bản ổn định của hệ thống xây dựng Gradle; hoặc bạn muốn hỗ trợ các công cụ bổ sung, chẳng hạn như Cache. Nếu không, bạn có thể tiếp tục sử dụng phiên bản thử nghiệm của Gradle và plugin Android

Tải NDK và công vụ

Để compile và debug native cho ứng dụng của bạn, bạn cần các thành phần sau:

  • Android Native Development Kit (NDK): là thiết lập công cụ mà cho phép bạn sử dụng code c/c++ cũng làm việc với android
  • CMake: công cụ xây dựng bên ngoài hoạt động bên cạnh Gradle để xây dựng thư viện native của bạn. Bạn không cần thành phần này nếu bạn chỉ định sử dụng ndk-build.
  • LLDB: trình gỡ lỗi Android Studio sử dụng để gỡ lỗi native code

Bạn có thể cài những thành phần đó bằng việc sử dụng SDK Manager:

  1. Từ Android Studio , chọn Tools > Android > SDK Manager từ thanh main menu.

  2. Chọn SDK Tools tab.

  3. Kiểm tra hộp thoại LLDB, CMake, and NDK,như hình bên dưới
    Hình ảnh 1. Đang cài LLDB, CMake, và NDK từ SDK Manager.

  4. Chọn Apply, và sau đó chọn OK

  5. Khi việc cài đặt hoàn thành, chọn Finish, và sau đó chọn OK.

Tạo hoặc Import Native Project

Khi bạn làm việc với Android Studio, Bạn có thể tạo đơn giản một project mới với C/C++ . Tuy nhiên,Nếu bạn muốn thêm vào hoặc import native code mà đã tồn tại , Bạn cần theo bước cơ bản sau:

  1. Tạo một native source files mới và thêm chúng vào Android Studio project của bạn.
  • Bạn có thể bỏ qua bước này , nếu bạn đã có native code hoặc muốn import từ một thư việc đã chạy trước đó .
  1. Tạo CMake build script to tell CMake làm sao để build native sources của bạn thành thư viện. Bạn cũng có thể yêu cầu build script nếu bạn muôn import và liên kết với thư viện có sẵn hoặc platform libraries.
  • Bạn có thể bỏ qua bước này nếu thư viện navtive hiện có của bạn đã có CMakeLists.txt hoặc sử dụng ndk-build và bao gồm tập lệnh được xây dựng trong Android.mk.
  1. Link Gradle tới native thư viện bằng cách cung cấp tới CMake của bạn hoặc ndk-build script file. Gradle sử dụng the build script để đưa source code vào trong Android Studio project và đóng gói native thư viện ( SO file) vào trong APK.

Chú ý: Nếu Dự án của bạn đang tồn tại sử dụng công cụ ndkCompile , bạn nên mở build.properties file và xóa dòng code này trước khi cấu hình Gradle để sử dụng CMake hoặc ndk-build:

// Xóa dòng này android.useDeprecatedNdk = true

Build và run ứng dụng của bạn bằng cách chọn Run sau khi chạy app từ thanh main menu. Gradle thêm CMake hoặc ndk-build xử lý như là 1 sự phụ thuộc để compile, build và đóng gói thư viện native của bạn với APK của bạn Khi ứng dụng của bạn chạy trên thiết bị thật hoặc thiết bị ảo, Bạn có thể sử dụng Android Studio để Debug ứng dụng của bạn. Để học nhiều hơn về NDK và các hợp thành của nó chúng ta sẽ chờ tiếp ở Part 2. Cảm ơn các bạn đã xem Nguồn : https://developer.android.com/ndk/guides/index.html#download-ndk

0