平方X 发表于 2016-4-19 11:37:53

armeabi,armeabi-v7a,x86,mips,arm64-v8a,mips64,x86_64下的so文件

参考:http://www.ithao123.cn/content-10046919.html
armeabi,armeabi-v7a,x86,mips,arm64-v8a,mips64,x86_64下的so文件
1,Android系统目前支持以下七种不同的CPU架构:
ARMv5,ARMv7(从2010年起),x86 (从2011年起),MIPS (从2012年起),ARMv8,MIPS64和x86_64 (从2014年起),
2,在Android系统上,每一个CPU架构对应一个ABI:
armeabi,armeabi-v7a,x86,mips,arm64-v8a,mips64,x86_64。
3,在百川中看到这个
因为 Android 部分版本系统中载入不同架构原生库 (so 文件) 的限制,请确保项目运行所需的原生库文件在当前手机 CPU 对应架构目录下都存在。
例如,安全模块暂时未提供 arm64 架构的原生库,若当前 apk 依赖的其他组件包含 arm64 原生库,会导致载入错误。
解决方法是移除依赖组件中相关原生库,确保最终 apk 中不存在 arm64-v8a 。
以有http://www.zhihu.com/question/36893314/answer/69496966
arm64-v8a是可以向下兼容的,但前提是你的项目里面没有arm64-v8a的文件夹。
如果你有两个文件夹armeabi和arm64-v8a,两个文件夹,armeabi里面有a.so 和 b.so,arm64-v8a里面只有a.so,
那么arm64-v8a的手机在用到b的时候发现有arm64-v8a的文件夹,发现里面没有b.so,就报错了。
所以这个时候删掉arm64-v8a文件夹,这个时候手机发现没有适配arm64-v8a,就会直接去找armeabi的so库。
所以要么你别加arm64-v8a,要么armeabi里面有的so库,arm64-v8a里面也必须有
4,为什么华为畅享5出错,
华为畅享5
CPU型号 联发科 MT6735
其采用了四核心64位Cortex-A53架构设计
A57和A53属于ARMv8架构。
因此,就是arm64-v8a的。
页: [1]
查看完整版本: armeabi,armeabi-v7a,x86,mips,arm64-v8a,mips64,x86_64下的so文件