4

我正在尝试使用新的 Gradle 实验性插件构建 NDK 项目,但似乎 Gradle 忽略了 Android.mk 并开始编译所有内容而没有注意 Android.mk 中写的内容,我知道新语法,我阅读以下实验性插件用户指南,我也尝试了以下语法:

    android.sources {
    main {
        jni {
            source {
                srcDirs = []
            }
        }
    }
}

但它仍然忽略 Android.mk 文件。我在用着:

  • Android Studio 1.3.1 稳定版
  • 带有实验性插件 0.2.0 的 Gradle 2.5

任何人都可以建议吗?

4

2 回答 2

4

如果你设置

android.sources{
    main.jni {
        source {
            srcDirs = ['src/main/none'] // [] could be set instead but will disable even symbol resolution inside the editor
        }
    }
    main.jniLibs {
        source {
            srcDirs = ['src/main/libs']
        }
    }
}

Android Studio 不会尝试构建您的源代码,它会集成您在其中的 .so 文件src/main/libs/<abi>/

这意味着您可以调用ndk-build自己,并且您的 Makefile 不会被忽略。

于 2015-08-25T09:56:31.643 回答
0

试着把:

 android.useDeprecatedNdk=true

在你的gradle.properties文件里面。

然后,您应该能够使用您在问题中提到的语法。

于 2015-08-19T16:13:19.070 回答