以下代码段似乎是如何在Android Studio中包含本机库的答案:
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)
}
似乎只需将* .so打包到* .jar中。但是我真的不明白它:
我感谢每一个解释:)
答案 0 :(得分:0)
这真的很有趣 - 我多次发现这个解决方案:
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/'
}
但是它可以删除,因为它没有任何用处(也许它在较旧的构建版本中没有用)。
真正的诀窍是通过sourceSets.main.jniLibs.srcDir 'src/main/libs/' //integrate your libs from libs instead of default dir 'jniLibs