我想将c ++标头iostream包含在我的NDK代码中。为了做到这一点,我必须在Android ndk-build iostream: No such file or directory中提到的Application.mk文件中包含APP_STL:= stlport_static(或类似的)。
如果我使用命令行ndk-build进行编译,这一切都很有效,但是在使用Android Studio进行编译时,我仍然得到与未找到iostream相同的错误。看起来app.mk会被Android Studio忽略,我不知道如何在build.gradle中配置它。 任何人都可以使用android studio帮助我,包括APP_STL:= stlport_static吗?
由于
答案 0 :(得分:5)
目前看来,不支持在build.gradle中包含Application.mk文件,但是添加了stl" stlport_static"在build.gradle的ndk部分下运行良好(感谢Michael快速回复)。
在defaultConfig部分下,添加:
ndk {
moduleName "app"
stl "stlport_static"
}
详细信息可在以下网址找到:https://groups.google.com/forum/#!topic/adt-dev/pHnST37HrlM
答案 1 :(得分:3)
对于Gradle 2.5,它应该如下所示:
android.ndk { moduleName = "app" stl = "stlport_static" }
答案 2 :(得分:1)
对于Gradle 4.4: 添加
path 'jni/Application.mk'
到应用程序级别build.gradle解决了我的问题。它应该是这样的
externalNativeBuild {
ndkBuild {
path 'jni/Android.mk'
path 'jni/Application.mk'
}
}
然后Android Studio会检查您的Application.mk文件。