尝试使用jni c代码构建一个简单的helloWorld android / java应用程序。我在Windows 7上使用Eclipse Indigo。在非空间路径中安装了ndk r8,最终使ndk-build.cmd的c库得以正常构建。但是,javah生成的头文件具有未解决的错误,
昨天没有看到jni.h包含,但是今天早上重新启动后,该错误消失了。我也有一个未解决的JNIEXPORT和JNICALL错误,但是#defining他们似乎已经解决了。卡在上面的最后3个。搜索了谷歌和堆栈溢出的答案,但一旦有人找到解决方案,他们就不说那个解决方案是什么:(
我已经在项目属性中检查了Java和c / c ++透视图中的include。它似乎包括我想要的jni.h目录,我将android-14用于arm平台。目标是4.0.3 IceCream Sanwich(令人困惑的API 15 ?!)。我打算尝试使用AVD对此进行测试。我尝试关闭/重新打开该项目,从Eclipse中删除并重新导入,但是这些都没有用。
我是否缺少某些物品?我应该在哪些位置设置它们?非常感谢您的帮助。
最近,我遇到了同样的问题。就我而言,问题是我将Eclipse项目转换为C ++项目,但是我使用了C类型。因此,要解决这个问题,我只是删除线<nature>org.eclipse.cdt.core.ccnature</nature>从.project从项目目录文件:
<nature>org.eclipse.cdt.core.ccnature</nature>
.project
<natures> <nature>com.android.ide.eclipse.adt.AndroidNature</nature> <nature>org.eclipse.jdt.core.javanature</nature> <nature>org.eclipse.cdt.core.cnature</nature> <nature>org.eclipse.cdt.core.ccnature</nature> <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> <nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature> </natures>
然后重新启动Eclipse。有关更多信息,请阅读此内容。