Android中.so库的

       今天,集成个推时发现收不到clientid,按官方的说法是集成armeabi、armeabi-v7a、x86_64 。发现log中根本没有,怀疑是.so库的问题,加上arm64-v8a后恢复正常,原来nexus6p是64位的。

一般,.so库中有armeabi、armeabi-v7a、arm64-v8a、mips、mips64、x86、x86_64。里面是指不同的架构arm、mips、x86系列。一般手机是arm架构的,armv7和armv8的区别就是指令集一个是32一个是64位的。

知乎有个关于v8向下兼容的问题很好,链接:https://www.zhihu.com/question/36893314/answer/78467097
问题:
微信的安装包在只编译了armeabi,没有x86,arm64-v8a是如何运行在各种处理器的手机上的?
答案:
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里面也必须有。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值