Android 无法解析Eclipse-方法NewStringUTF()
我正在编写一个简单的OpenCV代码,用于在执行sobel操作后显示图像。我已经包含了项目属性的所有必要路径,以便包含Android 无法解析Eclipse-方法NewStringUTF(),android,opencv,Android,Opencv,我正在编写一个简单的OpenCV代码,用于在执行sobel操作后显示图像。我已经包含了项目属性的所有必要路径,以便包含OpenCV4Android文件夹。我解决了除一个错误以外的所有错误: 错误:无法解析方法NewStringUTF() 我在项目路径中包括了我还包括了AndroidNDK文件夹。我的日食是高度不可预测的。早些时候,当我在Android上开发其他应用程序时,它工作得很好。eclipse依赖于机器吗?我可以做什么来修复此错误 我有这个问题。基于我的“解决方案”,在Eclipse中似乎
OpenCV4Android
文件夹。我解决了除一个错误以外的所有错误:
错误:无法解析方法NewStringUTF()
我在项目路径中包括了
我还包括了AndroidNDK文件夹。我的日食是高度不可预测的。早些时候,当我在Android上开发其他应用程序时,它工作得很好。eclipse依赖于机器吗?我可以做什么来修复此错误 我有这个问题。基于我的“解决方案”,在Eclipse中似乎发生了一些有趣的事情,因为我打开了另一个项目(据我所知),除了被标记为库项目之外,还有一些确切的属性、路径等
只要观察jhi.h中相应的结构,回调原型都在那里!Ctrl单击include语句,Eclipse甚至会将引用链接到您
转到项目的属性->C/C++常规->代码分析。单击“使用项目设置”单选按钮(或“配置工作区设置…”按钮)。禁用(取消选中)“无法解析方法”复选框。单击“应用”、“确定”。然后为您的项目刷新、清理、刷新、生成
在创建新项目时,我一定做了一些不同的事情。或者可能是因为项目的位置,或者前一个项目是一个图书馆。也许这真的是一个Eclipse bug?作为参考,我正在使用ADT v21.1.0-569685和NDK r8e For Windows。很可能您正在
CPP
文件中使用C
语法
我也犯了同样的错误
只要切换到正确的语法,问题就会解决
C语法
return (*env)->NewStringUTF(env, "Hello from JNI !");
return (env)->NewStringUTF("Hello from JNI !");
C++语法
return (*env)->NewStringUTF(env, "Hello from JNI !");
return (env)->NewStringUTF("Hello from JNI !");
从C转换为C++语法后,我的问题得到了解决。
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;
}
这对我来说很有效或者我们可以将其类型设置为“警告”,以便能够在了解问题的同时进行编译我必须说它只隐藏了问题。但就目前而言,android的gcc显然还不成熟。