Android NDK ventajas y desventajas

Estoy estudiando Android NDK. ¿Cuáles son las ventajas y desventajas de NDK? ¿Hay alguna buena referencia para estudiar Android NDK?

¿Has leído la página oficial de desarrollo de Android acerca de NDK ?

Citar:

El NDK de Android es una herramienta complementaria para el SDK de Android que le permite crear partes críticas de rendimiento de sus aplicaciones en código nativo. Proporciona encabezados y bibliotecas que le permiten crear actividades, manejar la entrada de usuarios, utilizar sensores de hardware, acceder a recursos de aplicaciones y más, al programar en C o C ++. Si escribe código nativo, sus aplicaciones aún están empaquetadas en un archivo .apk y todavía se ejecutan dentro de una máquina virtual en el dispositivo. El modelo de aplicación fundamental de Android no cambia.

El uso de código nativo no da como resultado un aumento automático del rendimiento, pero siempre aumenta la complejidad de la aplicación. Si no ha encontrado limitaciones con las API de framework de Android, es probable que no necesite el NDK.

Por lo tanto, a menos que esté haciendo algunas cosas muy intensivas en rendimiento que ahogarán su aplicación al programar en Java, le sugeriría que se mantenga alejado de NDK. Es más complicado y más difícil escribir el código NDK correctamente a menos que realmente sepa lo que está haciendo y tenga un conocimiento sólido de C y / o C ++.

  • Activos de Android, C, JNI
  • Aprendiendo C / C ++ y Java
  • La forma correcta de dibujar texto en OpenGL ES 2
  • ¿Es posible depurar C / C ++ en Android Studio?
  • Pthreads morir en medio de un bloqueo mutex
  • No se puede iniciar el proyecto cocos2dx ios en android
  • Tener LLVM IR biblioteca cómo crosscompile a iOS, Android, Windows y Mac de Ubuntu?
  • Boost Asio deadline_timer en el dispositivo Android no se disparó en el momento de expiración, pero en un momento posterior del tiempo
  • ¿Los operadores C ++ nuevos y nuevos lanzan std :: bad_alloc en Android?
  • ¿Cómo llamar a una función en el archivo CPP desde el archivo C y viceversa en ANDROID NDK?
  • Qt cómo conectar a un archivo SQLlite existente en el sistema operativo Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.