Android NDK构build,Method无法parsing

我有一个本地代码的Android项目。 我能够通过调用ndk-build命令而不是错误或警告来从命令行构build本机代码。 但是,当我在ADT中打开它时,显示以下错误。

在这里输入图像描述

错误消息: Method CallStaticIntMethod could not be resolved. 项目中有很多错误类似的文件。

我加倍检查configuration,这是我有。 Android构build,工具链和包括正确configuration(见下图)

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

必需包括也是在项目浏览器中可见的,它们是有效的(不是空的,并指向正确的头文件)。

在这里输入图像描述

但是,当我Clean项目,并Build它,错误仍然存​​在。 任何想法如何解决这个问题?

configuration:ADT 22.6.2,NDK r9d(64位),OSX 10.9.2

经过一番苦恼,终于find了解决办法。 这是NDK插件中的一个错误 ,报告给AOSP,但尚未修复。 答案的过去在第50条评论中描述。 这是我为我工作的顺序。

  1. 打开项目属性 – > C / C ++生成 – > 工具陈编辑器
  2. 在“ Used Tools ”一节中, Used Tools GCC C CompilerreplaceAndroid GCC Compiler GCC C Compiler 。 如果部分是空的,只需在其中添加GCC C Compiler条目。 在这里输入图像描述
  3. 打开项目属性 – > C / C ++常规 – > path和符号,并添加目录,其中包括您的H文件所在的位置。 使用向上移动button添加一个文件夹与您本地包括( /AudioPlayer/jni在我的情况)到第一个地方。 然后添加平台和工具链包括。 内置的包括应该停留在最底层。 在这里输入图像描述 在我的情况下,工具链的完整path如下所示。 这些是原始Android GCC Compiler工具链的内置path,我们在步骤2中已经replace了这些path。

     /Tools/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.6/include /Tools/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.6/include-fixed 
  4. OKbutton, 清理重新构build项目。 所有的错误必须消失。 如果他们留下来,请尝试从“ 问题”视图中删除它们,并再次重新构build项目。

更新:我find了另一个地方,你可以添加path包含文件。 但是,它似乎是依赖于Eclipse版本。 项目设置 – > C / C ++常规 – >处理器包括path,macros等 – > CDT用户设置条目 – >添加 。 在我添加上面列出的path之后,就没有编译问题了。 发展很有趣。

是的,它由IDE引起的不知道你所有的头和你连接的库都在哪里。 错误是由IDE的自动完成/错误系统生成的。 你可以在eclipse中修改你的包含,或者把它们作为错误消除。

我有一个类似的错误,并通过从Android GCC编译器更改为GCC C编译器并更新包含目录后,通过项目 – >属性 – >发现选项并将发现configuration文件从托pipe构build系统更改为GCC来解决。