【发布时间】:2017-02-25 16:21:36
【问题描述】:
我在 Android Studio 中遇到了这个非常奇怪的错误消息。它显示在我通过 Gradle 使用 ndk-build 构建的 native 代码之上。断点和代码单步运行正常,但代码中绝对充斥着诸如“无法解析变量”之类的“错误”。
下面是一个例子:
同样,代码都运行正常,就像 IDE 似乎无法解析一大堆类型一样。您可以在右侧看到一连串错误。基本上每一行都被标记为错误,即使它编译得很好。不知道发生了什么!
【问题讨论】:
-
可能的解决方案 1.重启Android Studio 2.清除缓存文件 > 使缓存失效/重启 > 使缓存失效 |重启3.清理项目
-
我认为有很多问题。 1. 设置cppFlags时似乎有很多与引用/取消引用字符串相关的错误。我试图使用 addAll 设置 cppFlags,但是当我这样做时,看起来引号被拉到了 shell 命令中,导致它们失败。看起来发生的事情是包含目录语句也搞砸了,因此 IDE 无法解析某些包含文件。
-
在那之后,看起来在项目上运行“清理”并没有清理我外部构建的 NDK 文件——只是清理了 Java 方面的东西。所以当我认为我正在重建项目时,它只是一遍又一遍地使用旧代码。
-
我求助于运行
./gradlew externalNativeBuildDebug --debug在终端中构建代码,而不是让 Android Studio 来做。这也让我可以看到更多的输出。不幸的是,我仍然看不到 gradle 正在执行的实际 ndk-build 命令。这是荒谬的。我可以自己运行 ndk-build,但它会使用 gradle 忽略的 Application.mk 文件。 -
你最终解决了这个问题吗?
标签: android android-studio android-ndk