El Android Native Development Kit ( NDK ) proporciona una herramienta de compilación cruzada para compilar código escrito en C / C++ que se puede compilar en ARM o código nativo x86 (o sus variantes de 64 bits ) para Android . [4] [5] El NDK utiliza el compilador Clang para compilar C/C++. GCC se incluyó hasta NDK r17, pero se eliminó en r18 en 2018.
Las bibliotecas nativas se pueden llamar desde el código Java que se ejecuta en Android Runtime usando System.loadLibrary
, parte de las clases Java estándar de Android. [6] [7]
Las herramientas de línea de comandos se pueden compilar con el NDK e instalar usando adb . [8]
Android utiliza Bionic como su biblioteca C y LLVM libc++ como su biblioteca estándar C++ . El NDK también incluye una variedad de otras API: [9] compresión zlib , gráficos OpenGL ES o Vulkan , audio OpenSL ES y varias API específicas de Android para cosas como registro, acceso a cámaras o aceleración de redes neuronales .
El NDK incluye soporte para CMake y su propio kit ndk-build
(basado en GNU Make ). Android Studio admite la ejecución de cualquiera de estos desde Gradle . Otras herramientas de terceros permiten integrar el NDK en Eclipse [10] y Visual Studio [11] .
Para la creación de perfiles de CPU , el NDK también incluye simpleperf [12], que es similar a la herramienta de rendimiento de Linux , pero con mejor soporte para Android y específicamente para pilas mixtas de Java/C++.
{{cite book}}
: Mantenimiento de CS1: falta la ubicación del editor ( enlace ){{cite book}}
: Mantenimiento de CS1: falta la ubicación del editor ( enlace )