问题描述
最近做项目出了一个bug项目中用到so文件,在5.0以上的手机上会报一个初始化异常错误,并提示找不到so文件。lib里目录结构类似如下
在Android5以下都没有问题,在5.0以上会报错,并提示找不到so文件不对或者找不到。
解决方法
移除arm64-v8a文件夹。
问题原因
原因是在stackoverflow找到的,大致意思如下:Android中的so文件都是在Android APP安装的的时候复制到data/data/包名 下边的。Android 5以前的Android系统会先后查看armeabi-v7a和armeabi文件夹下的so文件,取其并集放置到APP目录下,而Android5以后的系统会先检查armeabi-v7a文件夹,如果有so文件,就只会把armeabi-v7a目录下的so文件拷贝懂啊APP目录下,如果armeabi-v7a文件夹下没有so文件,则会拷贝armeabi中的so文件。