解决NDK开发中Eclipse报错Unresolved inclusion jni.h的最终解决方法
在NDK开发中,经常会遇到Eclipse报错Unresolved inclusion jni.h的问题。这个报错表示Eclipse无法找到jni.h头文件,而jni.h是Native Development Kit (NDK) 中非常重要的头文件。本文将介绍NDK开发中出现此问题的几种原因以及最终的解决方法。
一、原因
1.1 没有定义NDK路径
在Eclipse中,需要设置NDK开发的路径。如果没有正确设置NDK路径,就会出现Unresolved inclusion jni.h的错误。
1.2 缺少头文件
如果你的项目没有包含jni.h头文件,那么就会出现Unresolved inclusion jni.h的错误。
二、解决方法
2.1 定义NDK路径
Eclipse中设置NDK路径的方法是:
-
打开菜单Window -> Preferences -> Android -> NDK
-
在NDK路径中填入NDK的路径
-
点击OK进行保存
如下图所示:
2.2 包含头文件
在Eclipse中,需要包含jni.h头文件。方法如下:
-
打开项目的Properties
-
在C/C++ Build -> Settings -> GCC C Compiler -> Includes选项卡中,添加NDK中jni.h的路径
-
在C/C++ Build -> Settings -> GCC C++ Compiler -> Includes选项卡中,添加NDK中jni.h的路径
-
在C/C++ General -> Paths and Symbols -> Includes选项卡中,添加NDK中jni.h的路径
如下图所示:
- 最终解决方法
如果以上方法都不能解决Unresolved inclusion jni.h的错误,那么可以考虑以下解决方法:
在build.prop的默认配置中添加NDK路径,例如:
ndk.dir=/opt/android-ndk-r8b
这个文件可以在项目的根目录中找到,同时也可以在Eclipse的Preferences -> Android中的NDK位置中找到。
总结
通过上面的方法,可以最终解决NDK开发中Eclipse报错Unresolved inclusion jni.h的问题。其中,定义NDK路径和包含头文件是最常用的方法,如果这两种方法解决不了该问题,可以添加build.prop文件。