Cómo mantener un objeto C ++ dentro del código Java? ¿Posible?
Primero tengo una biblioteca de C ++ legada, y estoy migrando mi aplicación a Android con nueva interfaz de usuario.
Durante el tiempo de ejecución, puede haber múltiples objetos C ++ creados y destruidos dinámicamente. Construí un conjunto de métodos nativos JNI para llamar a la biblioteca para conseguirlo. ¿Pero dónde debo guardar esos objetos de C ++? Tengo que hacer un seguimiento de ellos y liberarlos si son innecesarios.
- C ++ ifstream.getline () significativamente más lento que BufferedReader.readLine () de Java?
- ¿Cómo maneja la superficie la recolección de basura después de ser parcelada en Android?
- Comportamiento sorpresa de eclipse para archivos C mientras se utiliza JNI, ¿Por qué?
- ¿Cómo crear un socket Android RFCOMM sin ninguna entrada del usuario?
- Desbordamiento de tabla de referencia Jni
Hasta ahora sólo sabía que Java no puede hacer referencia a un objeto C ++. ¿Es posible crear una clase de contenedor Java que incluya una referencia a un objeto C ++?
Gracias.
- Cómo construir una biblioteca compartida y llamarla en otro programa ndk
- Extraer código de archivo .aar Android
- Macro de preprocesador en Android.mk se ignora, pero funciona en Application.mk
- Puente nativo entre Python y Dalvik o AAF
- La aplicación de Android NDK no puede acceder a ningún punto de interrupción
- JNI: Llamar a GetStaticMethodID explotar
- Android NDK y Gradle: Android.mk diferente por tipo de compilación
- Firma digital de una biblioteca compartida en Android
Si es posible. Puede almacenar un puntero a su objeto C ++ en un int java simple. Eso es exactamente cómo SWIG hace eso.
JavaCPP se encarga de este detalle al guardarlo en un objeto de Pointer
emparejamiento.
- Almacena grandes cantidades de textos para la aplicación de Android
- ¿Cómo aplicar la validación del archivo DTD local al archivo xml en java?