stringtranslate.com

NDK de Android

El kit de desarrollo nativo de Android (NDK) proporciona una herramienta de compilación cruzada para compilar código escrito en C / C++ que se puede compilar en ARM o en código nativo x86 (o sus variantes de 64 bits ) para Android . [3] [4] El NDK utiliza el compilador Clang para compilar C/C++. GCC se incluyó hasta NDK r17, pero se eliminó en r18 en 2018.

Descripción general

Se pueden llamar a las bibliotecas nativas desde el código Java que se ejecuta en Android Runtime usando System.loadLibrary, parte de las clases estándar de Java de Android. [5] [6]

Las herramientas de línea de comandos se pueden compilar con el NDK e instalar usando adb. [7]

Android utiliza Bionic como biblioteca C y LLVM libc++ como biblioteca estándar de C++ . El NDK también incluye una variedad de otras API: [8] 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 el suyo propio 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 [9] y Visual Studio . [10]

Para la creación de perfiles de CPU , el NDK también incluye simpleperf [11] , 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++.

Referencias

  1. ^ ab "Android NDK | Desarrolladores de Android". Desarrollador.android.com. 13 de noviembre de 2012 . Consultado el 13 de marzo de 2014 .
  2. ^ "Descargas NDK | Desarrolladores de Android". desarrollador.android.com . Consultado el 24 de abril de 2018 .
  3. ^ Ratabouil, Sylvain (2015). Guía para principiantes de Android NDK: descubra el lado nativo de Android e inyecte el poder de C/C++ en sus aplicaciones (2ª ed.). Birmingham. ISBN 978-1-78398-965-2. OCLC  910639612.{{cite book}}: Mantenimiento CS1: falta el editor de la ubicación ( enlace )
  4. ^ Kosarevsky, Sergey (2013). Libro de cocina sobre desarrollo de juegos NDK para Android: más de 70 recetas interesantes que te ayudarán a desarrollar juegos móviles para Android en C++. Víctor Latipov. Birmingham. ISBN 978-1-78216-779-2. OCLC  880639342.{{cite book}}: Mantenimiento CS1: falta el editor de la ubicación ( enlace )
  5. ^ Srinivas, Davanum (9 de diciembre de 2007). "Android: invocar métodos basados ​​en JNI (uniendo C/C++ y Java)". Archivado desde el original el 16 de diciembre de 2008 . Consultado el 13 de diciembre de 2008 .
  6. ^ "java.lang.System". Desarrolladores de Android . Consultado el 3 de septiembre de 2009 .
  7. ^ "Puente de depuración de Android (adb)".
  8. ^ "API nativas de Android NDK | Android NDK".
  9. ^ "Uso de Eclipse para el desarrollo de Android C/C++". 23 de enero de 2011.
  10. ^ "Uso de Visual Studio para desarrollar código nativo de Android: tutoriales de VisualGDB".
  11. ^ "Simpleperf | NDK de Android".