错误信息java.lang.UnsatisfiedLinkError: Couldn‘t load BaiduMapSDK_v3_2_0_15 from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.baidudemo-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.baidudemo-1, /vendor/lib,
/system/lib]]]: findLibrary returned null
在lib 发现明明有libBaiduMapSDK_v3_2_0_15.so这个文件,但是为何还是报错呢....写了一个Demo 发现,没有报错,最后一个一个推测,发现
区别在于 armeabi和armeabi-v7a
如果armeabi文件夹下还有其他的
.so文件,也需要一并copy至armeabi-v7a
而这个armeabi和armeabi-v7a究竟是什么意思?
有什么深意么?
为什么调试模式和发行模式adobe会选择不同的文件夹?
查了以下
armeabi与armeabi-v7a表示支持不同的CPU类型
armeabi是指的该so库用于ARM的通用CPU,而v7a的CPU支持硬件浮点运算。因此armeabi通用性强,但速度慢,而v7a能充分发挥v7a CPU的能力,在AIR打包APK调试模式adobe选择的是通用性强的armeabi模式。
android支持不同CPU的深层含义
首先从硬件支持方便来看,我们的adnroid设备目前为止大部分都是支持ARM芯片,(当然市面上此刻最新的android机器还支持intel