现在的位置: 首页 > 综合 > 正文

Android Studio 使用Gradle编译 如何导入so包

2017年11月17日 ⁄ 综合 ⁄ 共 788字 ⁄ 字号 评论关闭

2014-3-1更新

最近发现使用旧方法会出现编译apk包的时候无法导入so包的问题,网上看了一圈,发现新的方法。在gradle脚本中加入以下代码就能导入so包了:

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile fileTree(dir: "libs/armeabi", include: '*/so')
}

***旧方法

在你的工程目录中的build.gradle脚本中增加以下代码:

task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') {
    destinationDir file("$buildDir/native-libs")
    baseName 'native-libs'
    extension 'jar'
    from fileTree(dir: 'libs', include: '**/*.so')
    into 'lib/'
}

tasks.withType(Compile) {
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
}

并且在dependencies中增加这么一行:

compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')

这样就OK了。

贴点stackoverflow的参考:

http://stackoverflow.com/questions/16683775/include-so-library-in-apk-in-android-studio

http://stackoverflow.com/questions/16667903/android-studio-gradle-and-ndk

抱歉!评论已关闭.