本文来源于:https://blog.csdn.net/eieihihi/article/details/109289312
在 app 模块的 build.gradle 中的最外层,追加以下代码:
image.png
//列出所有包含有so文件的库信息
tasks.whenTaskAdded { task ->
if (task.name=='mergeDebugNativeLibs') { //如果是有多个flavor,则用 mergeFlavorDebugNativeLibs的形式
task.doFirst {
println("------------------- find so files start -------------------")
println("------------------- find so files start -------------------")
println("------------------- find so files start -------------------")
it.inputs.files.each { file ->
printDir(new File(file.absolutePath))
}
println("------------------- find so files end -------------------")
println("------------------- find so files end -------------------")
println("------------------- find so files end -------------------")
}
}
}
def printDir(File file) {
if (file != null) {
if (file.isDirectory()) {
file.listFiles().each {
printDir(it)
}
} else if (file.absolutePath.endsWith(".so")) {
println "find so file: $file.absolutePath"
}
}
}
然后“Run app”运行项目,之后 “Build 控制台” 会打印项目中依赖的“第三方库及 .so 文件对应关系”。
image.png
网友评论