¡Hola! Os presento una nueva serie de
tutoriales que voy a redactar en Geeky Theory. Esta vez voy a hablaros
sobre Android, más concretamente sobre el Android NDK. Dividiré esta
serie en varios tutoriales. Empezaremos con una introducción, que será
en este mismo artículo, y luego nos pondremos manos a la obra con la
instalación del NDK y su configuración en el entorno de desarrollo, que
será Eclipse. La verdad, no sabía si explicarlo con Eclipse o con
Android Studio, pero finalmente me he decidido por Eclipse porque es más
sencillo y estoy seguro de que la mayoría de vosotros ya lo habéis
utilizado, incluso si ahora mismo estais con Android Studio. Aún así, en
un futuro hablaremos de Android Studio.
Qué es el Android NDK
El Android NDK (Native Development Kit)
permite a los desarrolladores reutilizar código escrito en C/C++
introduciéndolo en las aplicaciones a través de JNI (Java Native
Interface). El NDK hace que la ejecución de la aplicación sea en cierto
modo más rápida, ya que pasará a ejecutarse directamente en el
procesador y no es interpretado por una máquina virtual.
El NDK puede ser útil y beneficioso para
ciertos tipos de aplicaciones, pero no para otros. El uso de código
nativo en Android no se traduce en una notable mejora de rendimiento,
pero de lo que sí estoy seguro, es de que aumenta la complejidad de la
aplicación hasta límites insospechados. No os asustéis, pero depende de
la aplicación que estéis desarrollando, puede ser realmente complejo. No
va a ser el caso de estos tutoriales, puesto que el objetivo es
aprender, no espantaros.
Se debe utilizar el NDK si es esencial para la aplicación, no porque queramos programar en C/C++.
Las aplicaciones que suelen utilizar el
NDK son aquellas que harán un uso intensivo de la CPU, como por ejemplo
motores de videojuegos o procesado de señal. En general, se trata de
optimizar al máximo costosas operaciones matemáticas.
Algunas de las aplicaciones más conocidas
utilizan el Android NDK, ya sea por la necesidad de eficiencia, la
reutilización de código C, o ambas cosas. WhatsApp, Instagram, Skype o
TuneIn Radio son aplicaciones que utilizan el Android NDK. ¡Y yo sin
saberlo! Muchas de ellas, hacen uso de librerías ya desarrolladas en
lenguaje C/C++ y aprovechan el NDK para no tener que escribirlas de
nuevo en Java.
Antes de pasar al siguiente tutorial, os recomiendo encarecidamente que os leáis dos tutoriales:
- Introducción a Java Native Interface: en este artículo, os damos una introducción a los fundamentos de JNI. No es necesario que hagáis todos los pasos, pero sí que es muy importante que lo entendáis, porque los siguientes tutoriales de esta serie se van a basar en JNI y, es primordial saber de qué estamos hablando.
- Tutorial de instalación de Android Developer Tools (Eclipse y Android SDK): si el tutorial anterior era importante, este lo es más, ya que en él aprendememos a instalar Eclipse y el SDK de Android en nuestro equipo. Estas dos herramientas serán imprescindibles para seguir con los siguientes tutoriales de esta serie
![Qué es el Android NDK [Parte 1]](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUg4wwz5wwvZk5oD1q4pFVxzeBIUfl8JEH4iNPpTmQXZ9bHQCbUOWOeSWR0g1W6eK9aM7TPX9w81EUtPb9eggFAcXOr0D-JpD5GHu6Eswz40fqbq10Y8xv1MLsSulWzLXhk5ozIBmLFANB/s72-w1024-c-h640-no/android-ndk-que-es-introducci%25C3%25B3n-tutorial1.png)
Leony Li
By
Published: 2014-07-02T20:07:00-07:00
Qué es el Android NDK [Parte 1]
By
Published: 2014-07-02T20:07:00-07:00
Qué es el Android NDK [Parte 1]