在Android Studio中将特定文件夹指定为jni源的父级

时间:2015-10-05 22:38:09

标签: android android-studio android-ndk android-gradle

我正在使用Gradle 2.5和AS 1.4的实验性gradle插件;我的build.gradle文件中有以下内容

android.sources {
        main {
            jni {
                source {
                    srcDirs += "src/main/jni"
                    srcDirs += "${fooRoot}/fooFolder"
                }
            }
        }
    }

fooFolder的所有内容都成为src / main / jni文件夹的子项。有没有办法指定一个目标文件夹,所以他们成为例如src / main / jni / fooFolderDestination的孩子?例如?

1 个答案:

答案 0 :(得分:0)

简短的回答是'不'。当您使用项目的“Android”视图时,两个源目录混合在一起令人沮丧。一种可能的解决方法是将其中一个目录定义为库模块的jni.srcDir。

另一种解决方法是使用

jni.srcDir + =“$ {fooRoot}”

但是,如果你有更多的CPP文件,AndroidStudio也会想要编译它们。这可以通过使用混合Android.mk +等级插件方法来避免,如 define LOCAL_SRC_FILES in ndk{} DSL 所示。