Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué es "Android NDK" y cuándo se utiliza?

¿Qué es "Android NDK" y cuándo se utiliza?

1. NDK es una colección de herramientas.

2. NDK proporciona una declaración de archivo de encabezado API estable y de función limitada.

3. El lanzamiento de NDK finalmente ha transformado el método de desarrollo "Java+C" en un método de desarrollo con soporte oficial.

4. NDK permitirá que la plataforma Android admita el inicio del desarrollo en C.

NDK permite a Java llamar a bibliotecas de funciones C en Android. Todos sabemos que Java es un lenguaje semiinterpretado y es fácil obtener los archivos de código fuente después de desensamblarlos. Al desarrollar algunos protocolos importantes, por razones de seguridad, utilizamos el lenguaje C para escribir estas partes importantes para aumentar la calidad. la eficiencia del sistema. Además, en algunos entornos cercanos al hardware, creo que todo el mundo conoce las ventajas y desventajas de C y Java. Por cierto: NDK no puede mejorar significativamente la eficiencia de la aplicación. ¿por qué? Todos sentimos que el lenguaje C es mucho más eficiente que Java. Por un lado, con la actualización continua de jdk, la eficiencia de Java también ha mejorado, por otro lado, incluso si el uso de la codificación en lenguaje C mejora la eficiencia de la aplicación; pero cuando Java y C se llaman entre sí, la sobrecarga aumenta.

1. NDK es una colección de herramientas.

NDK proporciona una serie de herramientas para ayudar a los desarrolladores a desarrollar rápidamente bibliotecas dinámicas C (o C++) y puede empaquetar automáticamente aplicaciones SO y Java en apk. Estas herramientas son de gran ayuda para los desarrolladores.

NDK integra un compilador cruzado y proporciona los archivos mk correspondientes para aislar las diferencias en CPU, plataforma, ABI, etc. Los desarrolladores solo necesitan modificar el archivo mk (señale "qué archivos deben compilarse"). , "características de compilación" Requisitos ", etc.), puede crearlo.

NDK puede empaquetar automáticamente aplicaciones Java y So, lo que reduce en gran medida el trabajo de empaquetado de los desarrolladores.

2. NDK proporciona una declaración de archivo de encabezado API estable y de función limitada.

Google afirma claramente que la API es estable y admitirá de manera estable la API publicada actualmente en todas las versiones posteriores. Se puede ver en esta versión de NDK que las funciones admitidas por estas API son muy limitadas, incluidas: biblioteca estándar C (libc), biblioteca matemática estándar (libm), biblioteca de compresión (libz) y biblioteca de registro (liblog).

3. El lanzamiento de NDK finalmente ha transformado el método de desarrollo "Java+C" en un método de desarrollo con soporte oficial.

Utilizando NDK, podemos desarrollar lógica de aplicación que requiere un alto rendimiento en C, mejorando así la eficiencia de ejecución de la aplicación.

Utilizando NDK, podemos desarrollar una lógica de aplicación que debe mantenerse confidencial en C. Después de todo, los paquetes Java se pueden descompilar.

NDK promueve la aparición de proveedores profesionales de componentes. (Una suposición optimista depende del número de usuarios de Android)

4. NDK hará que la plataforma Android admita el inicio del desarrollo de C.

NDK proporciona un conjunto completo de herramientas de desarrollo que permite a los desarrolladores desarrollar y publicar componentes C fácilmente. Al mismo tiempo, Google promete mejorar la capacidad "ajustable" en versiones posteriores del NDK, es decir, proporcionar una herramienta gdb remota para que podamos depurar fácilmente el código fuente C. Al respaldar el desarrollo de C en la plataforma Android, podemos sentir que Google ha gastado mucha energía. Tenemos razones para esperar que el "soporte de componentes C" sea solo el comienzo del desarrollo de C en la plataforma Android de Google. Después de todo, los programadores de C siguen siendo la fuerza principal absoluta en el campo de los codificadores. Excluir a estas personas del desarrollo de aplicaciones de Android obviamente no favorece la prosperidad de la plataforma Android.