云打包中,使用到两个安卓原生插件,里面都引用了lib/armeabi-v7a/libopencv_java4.so的包,如何使用类似安卓gradle.build的
packagingOptions
{
pickFirst 'lib/x86_64/libopencv_java4.so'
pickFirst 'lib/arm64-v8a/libopencv_java4.so'
pickFirst 'lib/armeabi-v7a/libopencv_java4.so'
pickFirst 'lib/x86/libopencv_java4.so'
}
进行排除?
1 个回复
2***@qq.com (作者)
已解决,https://nativesupport.dcloud.net.cn/NativePlugin/use/faq.html#q-android%E5%B9%B3%E5%8F%B0%E7%9A%84%E4%BE%9D%E8%B5%96%E5%BA%93%E5%86%B2%E7%AA%81%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3
因为我的两个插件使用同一个jar也同样依赖的同一个so文件,所以将代码整合到一个aar文件中。再将aar文件塞进nativeplugins中,两个插件都要塞一遍,文件大小也被计算进去。
将重复的代码打进一个aar或者jar文件中,两个插件同时使用相同的aar或者jar,云打包时自动去除重复的。不过两个或多个插件都包含在nativeplugins这个aar,云打包时,会计算nativeplugins里所有文件的大小,超过40M就要加钱了。所以需要对相同的aar或者jar中不必要的文件进行删除或者省略