Android gradle build包括两次jni libs

时间:2014-04-04 18:58:22

标签: android java-native-interface gradle libs gradlew

我一直试图解决有关Android版本的问题,但无法弄清楚如何解决它。 基本上,我正在尝试使用Gradle构建一个Android项目。它工作得很完美,但最终apk的大小比我用Eclipse构建时多7MB。

当我解压缩apk时,我看到JNI Libs被包含两次。这与仅包含一次的Eclipse构建不同。以下是我可以在APK中找到它们的路径:

  • LIB / armeabi
  • LIB / armeabi-V7A
  • 主/ jniLibs / armeabi
  • 主/ jniLibs / armeabi-V7A

在我的项目中,这两个文件位于:

  • 机器人/应用/ SRC /主/ jniLibs / armeabi
  • 机器人/应用/ SRC /主/ jniLibs / armeabi-V7A

我有两个不同的build.graddle文件:

  • 机器人/
  • 机器人/应用/

它们都不包含与JNI Libs相关的任何内容。

要构建版本,我使用命令:

./gradlew assembleRelease

一切正常。我使用Gradle 1.10。

我想知道是否有人遇到过这个问题并找到一个解决办法,以避免让JNI Libs在APK中被包含两次。

谢谢:)

1 个答案:

答案 0 :(得分:0)

将.so文件放入......

/ SRC /主/ jniLibs / armeabi-V7A / src / main / jniLibs / x86

目录和gradle会将.so文件正确打包到正确的应用程序中,并且不会包含重复项

这是一个很好的参考.. http://www.shaneenishry.com/blog/2014/08/17/ndk-with-android-studio/