JNI_OnLoad devolvió la versión incorrecta (-1)
Estoy intentando cargar la biblioteca de Qt5Core en mi uso androide y consigo esto:
JNI_OnLoad returned bad version (-1) in /data/data/com.xxx.yyy/lib/libQt5Core.so 0x41a8f3c0 Failed to load library : Qt5Core due to link error unknown failure java.lang.UnsatisfiedLinkError: unknown failure at java.lang.Runtime.loadLibrary(Runtime.java:370)
Esta es la forma en la que estoy tratando de cargarlo:
- Android UnsatisfiedLinkError con OpenCV 2.4.2
- Uso de jni en Android: UNsatisfiedLinkError
- UnsatisfiedLinkError en el método nativo
- Java.lang.UnsatisfiedLinkError: No se ha encontrado ninguna implementación para Boolean
- Error de enlace no satisfecho - OpenCV para Android No nativo
System.loadLibrary (s);
Donde "s" es una matriz que contiene varios nombres de biblioteca. Las otras bibliotecas se cargan correctamente.
¡Cualquier idea es bienvenida!
EDITAR
Así que estoy recibiendo esto primero:
D / dalvikvm (11445): Tratando de cargar lib /data/app-lib/com.xxx.yyy/libQt5Core.so 0x42666fd8
D / dalvikvm (11445): Añadido lib /data/app-lib/com.xxx.yyy/libQt5Core.so 0x42666fd8E / LibrariesLoader (11445): Error al cargar la biblioteca: Qt5Core debido al error de enlace JNI_ERR devuelto de JNI_OnLoad en "/data/app-lib/com.xxx.yyy/libQt5Core.so"
E / LibrariesLoader (11445): java.lang.UnsatisfiedLinkError: JNI_ERR devuelto de JNI_OnLoad en "/data/app-lib/com.xxx.yyy/libQt5Core.so"
… entonces hay otra biblioteca que se carga sin ningún error / advertencia. Esa biblioteca tiene Qt5Core.so como dependencia.
He investigado y estoy recibiendo este JNI_ERR debido al código siguiente:
If (vm-> GetEnv (& uenv.venv, JNI_VERSION_1_6)! = JNI_OK)
Return JNI_ERR;
La versión de JNI que estoy usando es 1.6 !!!!
- Error en dropboxSync: findlibrary devuelto null
- UnsatisfiedLinkError (Método nativo no encontrado)
- UnsatisfiedLinkError: Método nativo no encontrado - Android
- Error de enlace no satisfactorio al inicializar el concentrador Myo en Android
- Java.lang.UnsatisfiedLinkError después de actualizar a Android 5.0
- UnsatisfiedLinkError (com.esri.core.runtime.LicenseImpl.nativeIsClientIdValid)
El JNI_OnLoad de QtCore carga una actividad llamada "QtNative" cuando se inicia y devuelve JNI_ERR si no se encuentra.
QtNative se define en "QtAndroid-bundled.jar". Puede encontrarlo en su carpeta QT 5.3 SDK: Qt5 / 5.3 / android_armv7 / jar / QtAndroid-bundled.jar
Simplemente agregue esto a la carpeta "libs" de su proyecto.