使用Gradle的Native Binary支持将静态库包含到共享库中

时间:2014-05-20 10:39:27

标签: java-native-interface gradle static-libraries android-gradle dynamic-library

我有两个项目:

  • 使用NDK r9和libSL.a构建的静态库Android.mk
  • 包含以下内容的Android Studio项目:
    • WL.javalibWL.so周围的JNI包装器。)
    • jniWL.hjni/WL.clibWL.so的源代码),需要libSL.a
    • lib/libWL.so

如何将libSL.aGradle's Native Binary support一起包含libWL.so

1 个答案:

答案 0 :(得分:0)

要包含静态库,您需要在链接阶段将其添加为链接器的参数。目标是共享库还是可执行文件无关紧要。我用了

ndk {
    ...
    ldLibs "/some/path/libs/libcurl.a", "z", "log", "android", "EGL", "GLESv2", "OpenSLES"
}

在我的项目中。还有:

 stl "gnustl_static"

这给了我原生的.so模块。