下图两个子模块都用CMakeLists.txt引用了android的log库,编译后,在它们的build目录下都有liblog.so的文件。
四个CPU架构的文件夹下都有。
上层模块app不能决定使用哪一个,因此似乎做了合并,路径就是报错里的哪个路径,须在app模块下的build.gradle文件指明使用该路径下的liblog.so库。
gradle
android {
...
packagingOptions {
pickFirst 'lib/armeabi-v7a/liblog.so'
pickFirst 'lib/x86/liblog.so'
pickFirst 'lib/x86_64/liblog.so'
pickFirst 'lib/arm64-v8a/liblog.so'
}
}
最后同步一下项目再构建即可。
但我在Linux下没有遇到这个错!!!!不知道为什么???