Construcciones incrementales NDK de Android
Actualmente estoy trabajando en una gran aplicación para Android que utiliza una cantidad masiva de código C ++. Compila y funciona, hasta ahora tan bueno.
Desafortunadamente, cada vez que modifico algo en la estructura de mi fuente nativa (añadir / borrar / renombrar / mover un archivo), lo que ocurre bastante a menudo, ndk-build reconstruye toda la fuente, incluso los archivos sin tocar.
- Creación / búsqueda de bibliotecas compartidas desde el código fuente de Android
- Cambiar Actividad con JNI Llamar o usar Openfeint provoca App-Crash
- Manera rápida de decodificar la imagen JPEG
- ¿Cómo ejecutar comandos USSD en android?
- Referencia indefinida a `__android_log_print '
¿Alguien sabe cómo puedo configurar el Android NDK para construir de forma incremental de alguna manera?
Gracias por adelantado
- Depuración NDK de Android: armeabi-v7a no funciona
- No se pueden incluir archivos de encabezado STL con Android NDK r5
- Registro de llamadas de Android La voz entrante no se graba
- Uso de minizip con android ndk
- Android: ¿Cómo llamar a la función ndk de Kotlin?
- ¿Quieres usar las bibliotecas de Python en Android?
- ¿Cómo compilar la biblioteca con el código fuente con las herramientas de NDK?
- Vinculación de la compilación de la biblioteca con ndk r10 en la compilación del proyecto con ndk r13 utilizando c ++ _ stl compartido
Me harté del sistema de compilación NDK, lo estudié un poco y escribí mis propios makefiles. Esto no fue difícil.
Sin embargo, entonces se me señaló que al hacer esto, tendría que asumir la responsabilidad de seguimiento de los cambios futuros en la plataforma, por ejemplo, si se hace necesario enviar binarios para los tipos de procesador adicionales, tendría que modificar mi homegrown Construir la solución para hacer eso también.
En otros contextos, a veces he tenido proyectos con dos sistemas de compilación: uno para experimentos rápidos y otro para implementaciones. El tiempo dedicado a la actualización de vez en cuando se guardó muchas veces en la ganancia de velocidad para el trabajo diario. Siempre que tuviera que hacer una compilación real al menos cada semana o dos, las cosas nunca llegaron muy lejos de la consistencia (y ambos scripts de construcción estaban en el sistema de control de revisión, por lo que había historia para examinar). Algo así podría hacerse con un makefile personalizado para las compilaciones de depuración y todavía usar el sistema de compilación NDK para paquetes desplegables.
(En un caso de hacer un montón de experimentos en el borde de lo que la plataforma permite, en realidad tenía mi makefile empujando la actualización. Así que en el dispositivo y dio a mi aplicación uno de los desalentados hard-quit botones, por lo que podría reiniciar Utilizando una biblioteca nativa actualizada sin siquiera tener que reconstruir y reinstalar el apk)