Android Studio之导入外部so库

Android Studio导入外部so库

目前知晓四种方法,测试版本Android Studio1.3

1.Studio自带jniLibs方法(推荐)

这种方式对于新建的studio项目很适用

因为Studio支持jniLibs方式,所以在项目目录下的 app/src/main目录下创建一个名叫jniLibs文件夹,然后将对应的so文件拷贝到该目录下,如下所示:
Android Studio之导入外部so库_第1张图片
这样即可将so库导入导到工程目录中去

2.修改build.gradle文件(推荐)

这种方式对于迁移到studio的项目很适用(比如eclipse项目)

打开项目的”build.gradle”文件,并加入如下行,将so文件路径(jniLibs)指向"libs"路径,这样就可以把so文件打包到APK的lib文件夹中
Android Studio之导入外部so库_第2张图片

3.打包前先生成Jar后自动解包到apk

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(nativeLioJar) 

打包生成目录(build\native-libs)中的.jar文件

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

4.手动生成jar后自动解包到apk

将所有需要使用的.so文件压缩为.zip文件(zip中的文件目录结构为: lib/armeabi/*.so)

然后把zip文件后缀改为.Jar

然后放到libs下,android studio编译时会自动将libs下jar打包
这里写图片描述

这样就相当于借助jar文件将so文件导包

你可能感兴趣的:(导包,Anddroid,Studio,Android,gradle)