La biblioteca 'javacv-android-arm.jar' contiene bibliotecas nativas que no se ejecutan en el dispositivo
¿Cómo puedo resolver este problema?
Acabo de copiar javacv jar archivos en mi proyecto Lib
carpeta y tiene este error!
- C ++ OpenCV imread no funciona en Android
- Android, genera archivos de encabezado jni con javah, muestra error que no puede encontrar org.opencv.core.Mat
- Android: Grabación y transmisión simultánea
- Documentación de OpenCV para Android
- ANDROID - detección de color usando openCV - cómo?
Puedo encontrar este hilo de google, pero la página no se puede abrir debido a la política de restricciones de google en mi país por desgracia.
La razón por la que openCV manager
estos frascos en mi aplicación Android es que no quiero usar el openCV manager
. Quiero enlazar estáticamente la biblioteca openCV
a mi proyecto. Estoy intentando ejecutar mi aplicación en Samsung Galaxy S5
.
He aquí los errores de LogCat
que tengo:
[2014-07-16 10:13:57 - face-recognition] The library 'javacv-android-arm.jar' contains native libraries that will not run on the device. [2014-07-16 10:13:57 - face-recognition] The following libraries were found: [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniARToolKitPlus.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniavcodec.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniavdevice.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniavfilter.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniavformat.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniavutil.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjnicvkernels.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_calib3d.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_contrib.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_core.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_features2d.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_flann.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_highgui.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_imgproc.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_legacy.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_ml.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_nonfree.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_objdetect.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_photo.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_stitching.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_video.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniopencv_videostab.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjnipostproc.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniswresample.so [2014-07-16 10:13:57 - face-recognition] - com/googlecode/javacv/cpp/android-arm/libjniswscale.so
EDIT-1 Después de seguir las instrucciones aquí , gracias a PRAKASH podría resolver estos errores, pero tengo otros errores que están totalmente relacionados con NoClassDefFoundError
. Realmente me doy por vencido. No puedo resolver el problema, por lo que cualquier ayuda sería muy apreciada. Estos son mis nuevos errores:
07-22 08:48:54.472: E/dalvikvm(11694): Could not find class 'com.googlecode.javacv.cpp.opencv_core$MatVector', referenced from method org.opencv.javacv.facerecognition.PersonRecognizer.train 07-22 08:48:54.472: W/dalvikvm(11694): VFY: unable to resolve new-instance 108 (Lcom/googlecode/javacv/cpp/opencv_core$MatVector;) in Lorg/opencv/javacv/facerecognition/PersonRecognizer; 07-22 08:48:54.472: D/dalvikvm(11694): VFY: replacing opcode 0x22 at 0x001c 07-22 08:48:54.472: D/dalvikvm(11694): DexOpt: unable to opt direct call 0x00c9 at 0x28 in Lorg/opencv/javacv/facerecognition/PersonRecognizer;.train 07-22 08:48:54.472: D/AndroidRuntime(11694): Shutting down VM 07-22 08:48:54.472: W/dalvikvm(11694): threadid=1: thread exiting with uncaught exception (group=0x41737c08) 07-22 08:48:54.477: E/AndroidRuntime(11694): FATAL EXCEPTION: main 07-22 08:48:54.477: E/AndroidRuntime(11694): Process: org.opencv.javacv.facerecognition, PID: 11694 07-22 08:48:54.477: E/AndroidRuntime(11694): java.lang.NoClassDefFoundError: com.googlecode.javacv.cpp.opencv_contrib
- Código de desbloqueo de la cara en el proyecto de código abierto de Android?
- Multiplicación básica de matriz en OpenCV para Android
- Cómo obtener efecto de color mágico como escáner de cámara utilizando OpenCV
- OpenCV para Android, ¿necesito instalar OpenCV Manager por separado?
- ¿Cuál es la mejor manera de hacer el reconocimiento de números básicos?
- Pasar una matriz de Mats a código nativo
- Android - utiliza la cámara sin vista de superficie o textureview
- ¿Cuándo necesitamos el NDK para OpenCV Android
Descargar la última versión de Javacv
Y extraerlo y poner ffmpeg.jar
, javacv.jar
, javacpp.jar
y opencv.jar
en libs
carpeta de su proyecto
Y también extraer todo * .so de extraído
opencv-android-arm.jar,ffmpeg-android-arm.jar files.
Y poner todos los archivos * .so en la carpeta libs / armeabi
Para más información haga clic aquí
Puede resolver su problema.
Si aún no ha instalado el Entorno de desarrollo de Android, puede seguir este enlace que contiene todo lo que necesita para comenzar rápidamente. Vea el video tutorial y siga las instrucciones que se indican a continuación para instalar Eclipse, el entorno de desarrollo integrado (IDE) para el desarrollo de Android y crear un nuevo proyecto.
Una vez que haya instalado todo y haya creado el proyecto, utilice el siguiente procedimiento para importar bibliotecas JavaCV al proyecto de Android:
Descargue las bibliotecas JavaCv: a. Desde este enlace descargue " javacv-0.7-bin.zip " y extraiga los archivos: – javacpp.jar – javacv.jar – javacv – android – arm.jar b. Desde este enlace descargue " javacv-0.7-cppjars.zip " y extraiga los archivos: – opencv-2.4.8-android-arm.jar – ffmpeg-2.1.1-android-arm.jar
Vaya a Archivo> Nuevo> Carpeta, seleccione su proyecto como carpeta principal, escriba "libs / armeabi" como nombre de carpeta y haga clic en Finalizar.
Copie javacpp.jar y javacv.jar en la carpeta "libs".
Extraiga todos los archivos * .so de javacv-android-arm.jar, opencv-2.4.8-android-arm.jar y ffmpeg-2.1.1-android-arm.jar directamente en la carpeta "libs / armeabi" Sin crear ninguno de los subdirectorios encontrados en los archivos JAR. (La forma más sencilla de extraer los archivos .so de la .jar es mediante el uso de 7-ZIP software que se puede descargar aquí).
Vaya a Proyecto> Propiedades> Ruta de construcción de Java> Bibliotecas y haga clic en "Agregar JAR …".
Seleccione javacpp.jar y javacv.jar en la carpeta "libs".
Finalmente, importe las funciones JavaCV a su código
import static com.googlecode.javacv.cpp.opencv_core.*; import static com.googlecode.javacv.cpp.opencv_imgproc.*; import static com.googlecode.javacv.cpp.opencv_highgui.*;
Y utilizar algún código de ejemplo para comprobar que todo está funcionando correctamente.
- ¿Cómo funciona un obturador remoto para trabajar con la cámara en Android / iOS?
- ¿Qué hace que esta aplicación de Android sea debatible?