Android NDK con Visual Studio
Me gustaría construir algunas bibliotecas nativas para Android usando el NDK (kit de desarrollo nativo), pero me gustaría usar Visual Studio 2010 para hacerlo. He googled un poco, pero no han encontrado ninguna información sobre él. ¿Alguien tiene alguna experiencia con esto y conocer los pasos necesarios para que esto suceda? Tengo CYGWin instalado, se aseguró de obtener Make (según las instrucciones NDK), pero no estoy realmente seguro de los próximos pasos en términos de configuración del proyecto, compilador en Visual Studio, etc
Si alguien sabe de cualquier escritura, tutoriales o enlaces a proyectos de ejemplo, que sería impresionante, ya que no hay mucho en google todavía.
- Run-as El paquete 'abc' es desconocido - Galaxy S4 Jellybean o Android 4.3
- ¿Cómo puedo depurar eficazmente el código C que está envuelto con JNI en Eclipse? (Android Dev)
- Java.lang.ClassNotFoundException: No encontró la clase en la ruta: dexpathlist
- ¿Cómo acceder a OpenGL ES 2 a través de C ++ / NDK si EGL_NATIVE_RENDERABLE no es compatible?
- Procesamiento nativo de mapa de bits y ALPHA_8
¡Gracias!
- NDK: ¿GetByteArrayElements copia datos de Java a C ++?
- Pruebas unitarias Llamadas JNI
- Edificio Android NDK - Incluir LOCAL_SHARED_LIBRARIES?
- ¿Es el cambio de contexto utilizando un tiempo significativo?
- Creación de Android NDK Toolchain para x86 Android en Windows mediante Cygwin
- ¿Cómo incluir correctamente una biblioteca estática pre-construida en el archivo Android.mk de Android NDK?
- ¿Qué es crtbegin.o y crtbegin_dynamic.o?
- ¿Por qué usar el código armeabi-v7a sobre el código armeabi?
Aquí hay otra solución , que integra completamente el NDK dentro de Visual Studio. No makefiles. Se comporta como un proyecto Win32 adecuado:
Aquí hay una excelente publicación en el blog acerca de cómo puedes configurar tu entorno para depurar código NDK de Android usando Visual Studio.
Visual Studio no es oficialmente compatible.
Algunos problemas (pero no limitado a):
- MSVS no puede crear los binarios ARM adecuados
- Los archivos makefiles de Android (.mk) no son compatibles con MSVS
Sin embargo, hay soluciones de terceros:
- Vs-android
- VisualGDB
Es posible que desee comprobar DS-5 , así, aunque no es Visual Studio.
La respuesta depende de qué tipo de integración necesita.
Para crear el código nativo de Android desde Visual Studio, puede crear un nuevo proyecto Makefile y hacer que ejecute ndk-build.cmd al presionar "build". Si desea obtener los mensajes de error asignados también, tendrá que analizar la salida de ndk-build.cmd y convertirlo a un formato que Visual Studio puede udnerstand.
Si desea depurar su código nativo de Android de Visual Studio, necesitará una herramienta de terceros que controlará ndk-gdb en nombre de Visual Studio y proporcionará soluciones para varios errores (por ejemplo, reemplazar puntos de interrupción cuando se cargan bibliotecas).
Puede probar nuestra herramienta VisualGDB para Android que hace exactamente eso: crea proyectos que integran ndk-build y controla el depurador NDK en nombre de Visual Studio. Si necesita más información, hay un tutorial paso a paso disponible .
No he encontrado una solución directa limpia, aquí está mi solución.
Desarrollo mi código nativo en VS como una biblioteca estática, y uso algún proyecto de prueba para probarlo como una aplicación de consola. Cuando está bien, desde cygwin utilizo un pequeño script bash que copia todos los archivos necesarios a la carpeta jni y ejecuta el comando estándar android ndk make. (También copia algún archivo a la carpeta de activos cuando sea necesario), produciendo el archivo ejecutable en la carpeta correcta.
Para usar los pthreads he vinculado mis proyectos a pthreads-win32.
Los únicos archivos que no compile en VS son el código jni.
Espero que esto pueda ayudarte.
También hay un par de otras alternativas de terceros para el desarrollo de aplicaciones ANdroid con VS, además de los anteriores. No es el punto42 de código abierto ubicado en http://www.dot42.com y Remobjects, http://www.remobjects.com , que le permite programar en c #, Pascal, y Swift. He jugado con el juicio de Remobjects y ahora estoy empezando a jugar con dot42.
Mi uso del ensayo remobjects me permitió recrear en c # los primeros cinco proyectos de capítulo en el libro de texto del curso Android que tomé. No he tenido el mismo éxito con dot42 hasta ahora pero necesito encontrar tiempo para realmente darle una oportunidad.