如何使用新的 gradle 实验性插件防止自动生成 Android.mk
How to prevent the auto generation of Android.mk with new gradle experimental Plugin
我正在尝试使用新的 Gradle 实验插件构建 NDK 项目,但似乎 Gradle 忽略了 Android.mk 并开始编译所有内容而没有注意所写的内容在 Android.mk 中,我知道新语法并阅读了以下内容 Experimental Plugin User Guide 我还尝试了以下语法:
android.sources {
main {
jni {
source {
srcDirs = []
}
}
}
}
但它仍然忽略 Android.mk 文件。
我正在使用:
- Android Studio 1.3.1 稳定版
- Gradle 2.5 带有实验性插件 0.2.0
有人可以对此提出建议吗?
尝试放:
android.useDeprecatedNdk=true
在您的 gradle.properties
文件中。
然后,您应该能够使用您在问题中提到的语法。
如果你设置
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 不会尝试构建您的源代码,它会集成 src/main/libs/<abi>/
中的 .so 文件
这意味着您可以自己调用 ndk-build
,并且您的 Makefile 不会被忽略。
我正在尝试使用新的 Gradle 实验插件构建 NDK 项目,但似乎 Gradle 忽略了 Android.mk 并开始编译所有内容而没有注意所写的内容在 Android.mk 中,我知道新语法并阅读了以下内容 Experimental Plugin User Guide 我还尝试了以下语法:
android.sources {
main {
jni {
source {
srcDirs = []
}
}
}
}
但它仍然忽略 Android.mk 文件。 我正在使用:
- Android Studio 1.3.1 稳定版
- Gradle 2.5 带有实验性插件 0.2.0
有人可以对此提出建议吗?
尝试放:
android.useDeprecatedNdk=true
在您的 gradle.properties
文件中。
然后,您应该能够使用您在问题中提到的语法。
如果你设置
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 不会尝试构建您的源代码,它会集成 src/main/libs/<abi>/
这意味着您可以自己调用 ndk-build
,并且您的 Makefile 不会被忽略。