將libs文件夾下的so文件,通過gradle配置任務編譯成jar文件。
- apply plugin: 'com.android.library'
- android {
- compileSdkVersion rootProject.ext.compileSdkVersion
- buildToolsVersion rootProject.ext.buildToolsVersion
- defaultConfig {
- minSdkVersion rootProject.ext.minSdkVersion
- targetSdkVersion rootProject.ext.targetSdkVersion
- }
- /** 導入so文件 */
- task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
- destinationDir file("$projectDir/libs")
- baseName "Native_Libs2"
- extension "jar"
- from fileTree(dir: "libs", include: "**/*.so")
- into "lib"
- }
- tasks.withType(JavaCompile) {
- compileTask -> compileTask.dependsOn(nativeLibsToJar)
- }
- }
- dependencies {
- provided fileTree(dir: 'libs', include: ['*.jar'])
- }
方法二:
通過插件將so文件依賴到jniLibs文件夾。
方法三:
最佳方法。
- android {
- sourceSets.main.jniLibs.srcDirs = ['libs']
- compileSdkVersion rootProject.ext.compileSdkVersion
- buildToolsVersion rootProject.ext.buildToolsVersion
- defaultConfig {
- minSdkVersion rootProject.ext.minSdkVersion
- targetSdkVersion rootProject.ext.targetSdkVersion
- }
- }