Vir*_*721 6 c++ java-native-interface android android-ndk android-studio
我既如何在编译包括与项目文件树视图部分.h和.cpp文件位于项目目录外?
使用Visual Studio和C++项目,您只需使用"添加现有项目",选择您的文件并vo,它只需十秒钟即可完成.基于Android的开发是否应该让开发人员的生活更轻松?:/
我一直在寻找数小时如何做到这一点.我找到的答案都没有解决这个问题.
我无法相信,在所有使用Android Studio和NDK的人中,没有一个人在jni文件夹之外使用过C++代码......
你知道怎么办?谢谢.
这就是我所做的。首先安装今天发布的最新 Android Studio 1.4(但我使用了 ndk 支持的第一个 1.3 预览版)。要获得 NDK 支持,您需要切换到Gradle 2.5(项目结构 -> 项目 -> Gradle 版本)。使用实验性 gradle-plugin(在主 build.gradle 中“classpath 'com.android.tools.build:gradle-experimental:0.2.0'”)。
然后,您需要将应用程序 build.gradle文件更新为新格式,如下所述: http: //tools.android.com/tech-docs/new-build-system/gradle-experimental
我的项目由静态库和动态库组成。不幸的是,这不受支持,您现在必须将其编译为一个动态库。不支持自定义 makefile。
这是棘手的部分,您需要将其放入 model { } 中
android.ndk {
moduleName = "NativeLib"
// toolchain = "clang" <- tried using it, but failed
// toolchainVersion = "3.5"
stl = "gnustl_static" // you can switch stl lib this way
ldLibs += "log"
cppFlags += "-g"
cppFlags += "-std=c++11" // use c++11
cppFlags += "-Wall"
cppFlags += "-I${file("../../../common/include")}".toString() // include folder
}
android.sources {
main {
jni {
source {
srcDirs = ['src/main/jni', '../../../common']
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果您的本机源文件位于其他地方,您可以更改路径 - 这是来自我的项目结构。
| 归档时间: |
|
| 查看次数: |
8738 次 |
| 最近记录: |