在android studio里面,加载so库:
在app目录下新建libs目录,把libvideo_color_converter.so拷贝到app/libs:
app/libs/
├── arm64-v8a
│ └── libvideo_color_converter.so
└── armeabi-v7a
└── libvideo_color_converter.so
在build.gradle里面增加jniLibs选项,加好之后重新编译,就会自动生成jniLibs目录,libs
下的库也自动被copy过去了。
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
添加subtask完成copy动作
// task部分在右边的gradle窗口手动执行
task buildJar(type: Jar, dependsOn: ['build']) {
delete 'output'
//导出的jar文件名称
archiveName = 'transcoder.jar'
//从哪个目录打包jar
from('build/intermediates/classes/debug')
exclude('**/R.class')
exclude('**/BuildConfig.class')
//需要打包的类
include('com/video/transcoder/*.class')
//导出的jar文件的存放目录(未指定则默认存放在build/libs下)
//destinationDir = file('output')
copy {
from 'build/libs/transcoder.jar'
into 'output'
}
//copy so库
copy {
from 'build/intermediates/intermediate-jars/debug/jni'
into 'output/jni'
}
}