Android studio 2.1.1无法识别stdio.h但运行正常

时间:2016-05-16 03:49:32

标签: android android-ndk android-studio-2.1

网站上也存在类似的问题,但大多数问题都来自Android Studio 2.1之前,显然除了我之外似乎已经为其他所有人解决了这个问题。

我正在使用Android Studio 2.1.1, JDK 1.8, NDK 1.2 rc1, gradle-experimental 0.7.0 alpha4插件,但我仍然遇到Android Studio拒绝识别stdio.h, jni.h等任何C库函数的问题,等等。

问题是像#include <stdio.h>这样的标题声明都有错误颜色的标题名称,当我鼠标悬停时,它提供的唯一解释是“找不到stdio.h”。当然,像printf和system这样的东西都会出现错误的颜色

然而,它与C代码运行完美。这不是最大的障碍,但我希望实际使用Android Studio的功能,而不是猜测我是否正在编写正确的代码。

1 个答案:

答案 0 :(得分:1)

事实证明,在我的应用程序的build.gradle文件中,我在defaultConfig对象中有NDK设置,而不是直接在android.ndk下,这导致了问题。所以请仔细检查build.gradle文件!

作为参考,修复了build.gradle文件:

apply plugin: 'com.android.model.application'

model {
    android {
        compileSdkVersion 22
        buildToolsVersion "22.0.1"

        defaultConfig {
            applicationId "meow"
        }

        buildTypes {
            release {
                minifyEnabled false
                proguardFiles.add(file('proguard-rules.pro'))
            }
        }

        ndk {
            moduleName "mao"
            ldLibs.add("log")
        }
    }
}