如何使用实验Gradle包含头文件?

时间:2015-12-08 07:52:25

标签: android gradle android-gradle eclipse-adt

我正在尝试使用实验插件编译本机代码。此代码引用位于不同位置的头文件 在旧的Android.mk时代,我只需添加LOCAL_C_INCLUDES并将其指向头文件的位置。

但是当我没有Android.mk时,如何通过gradle构建脚本来完成? gradle中LOCAL_C_INCLUDES的等价物是什么?

我试过

android.ndk { 
   moduleName = "mymodule"
   cppFlags.add("-I${file("C:\\Android\\JNI\\inc")}".toString()) 
}

但它不起作用。

无法找到标题文件:" my_file.h没有此类文件或目录。"

1 个答案:

答案 0 :(得分:2)

你到底想要做什么?如果您需要将头文件添加到mymodule库,则可以修改:

sources {
    main {
        jni {
            exportedHeaders {
                srcDir "src/main/headers"
            }
        }
    }
}

属性。

但是如果你想添加一个外部包含文件夹,你需要提供更多信息。通常,它不像添加一些外部目录那么简单。你正在交叉编译,请记住。每个平台的标题是否相同?如果是这样你很好但是如果你需要链接库,你必须在链接器参数中包含它们的路径。您应该结帐experimental android native gradle plugin