Eclipse – Método NewStringUTF () no se pudo resolver
Estoy trabajando en un código simple de OpenCV para exhibir una imagen después de sufrir la operación del sobel. He incluido todas las rutas necesarias a las propiedades del proyecto para incluir la carpeta OpenCV4Android
. Resolví todos los errores excepto uno:
Error: El Method NewStringUTF() could not be resolved
- Android Studio 1.5 Opencv 3.0.0 calibración de la cámara de muestra se estrelló
- Problema al usar OpenCV2.3.1 con la actividad de Android Native
- Cómo ejecutar código OpenCV sin OpenCv Manager
- Javacv: la aplicación termina con opencv_contrib.createLBPHFaceRecognizer
- OpenCV Native Samples no están construyendo
<jni.h>
También he incluido la carpeta AndroidNDK en las rutas del proyecto. Mi Eclipse es altamente impredecible. Anteriormente, funcionó bien cuando desarrollé otra aplicación en Android. ¿Depende de la máquina eclipse? ¿Qué puedo hacer para corregir este error?
- OpenCV para programas de ejemplo de Android que muestran error
- Android NDK. Ninguna sección de C / C ++ en las propiedades del proyecto de Eclipse
- UnsatisfiedLinkError: n_Mat mientras se usa opencv2.4.3 con android 4.0
- Cómo unir png con alpha / transparencia en un marco en tiempo real
- Detección de diferentes formas dinámicamente como (Círculo, cuadrado y Rectángulo) de la cámara?
- Android - alternativa para OpenCV?
- Cargando una imagen usando OpenCV en Android
- ¿Cuál es la diferencia entre `opencv.android.JavaCameraView` y` opencv.android.NativeCameraView`
Lo más probable es que esté utilizando la sintaxis C
en el archivo CPP
Yo tenía el mismo error
Simplemente cambie a la sintaxis correcta y el problema será resuelto Sintaxis C
return (*env)->NewStringUTF(env, "Hello from JNI !");
Sintaxis de C ++
return (env)->NewStringUTF("Hello from JNI !");
Después de cambiar de C a C ++ sintaxis mi problema se resolvió.
Tuve este problema. Basado en mi "solución", parece ser algo gracioso en Eclipse, ya que tenía otro proyecto abierto con (hasta donde era capaz de decir) las propiedades exactas, caminos, etc, además de ser etiquetado como Proyecto de Biblioteca.
Sólo con la observación de la estructura correspondiente en jhi.h, los prototipos callback están allí! Ctrl-clic en la declaración de inclusión y Eclipse incluso le vinculará la referencia!
Vaya a Propiedades del proyecto -> C / C ++ General -> Análisis de código. Haga clic en el botón de opción "Usar configuración de proyecto" (o "Configurar configuración de área de trabajo …"). Desactive (desmarque) la casilla de verificación "Método no se puede resolver". Haga clic en "Aplicar", "Aceptar". A continuación, para su proyecto, actualizar, limpiar, actualizar, construir.
Debe haber algo que hice de manera diferente en la creación del nuevo proyecto. O tal vez fue debido a la ubicación de los proyectos, o el hecho de que el anterior era una biblioteca. Tal vez es realmente un error de Eclipse? Para referencia, estoy usando ADT v21.1.0-569685 y NDK r8e para Windows.
JNIEXPORT jstring JNICALL Java_com_example_faceextractiontest_Makeover_hello(JNIEnv* env, jobject obj){ const char* c = "hello how are you i am ahmad raza"; jstring s = env->NewStringUTF(c); return s; }
Esto funcionó para mí
-
Paso 1: Propiedades del proyecto -> C / C ++ General -> Ruta y símbolos
-
Paso 2: Seleccione la pestaña 'Incluir', Añadir -> $ ANDROID_NDK_HOME / plataformas / android-19 / arch-arm / usr / include (Su propio camino)
-
Paso 3: Aplicar -> Aceptar
Eso es. Mi solución.