先来一波扫盲:

armeabi:针对普通的或旧的arm v5 cpu

armeabi-v7a:针对有浮点运算或高级扩展功能的arm v7 cpu(32位ARM设备)

arm64-v8a:64位ARM设备

Android L开始才真正支持32位和64位的ART虚拟机,配合上64位处理器,名正言顺的运行64位软件

arm64-v8a是可以向下兼容的,其下有armeabi-v7a,armeabi 
armeabi-v7a向下兼容armeabi

对于一个cpu是arm64-v8a架构的手机,它运行app时,进入jnilibs去读取库文件时,先看有没有arm64-v8a文件夹:

如果没有该文件夹,去找armeabi-v7a文件夹,如果没有,再去找armeabi文件夹,如果连这个文件夹也没有,就抛出异常 
如果有arm64-v8a文件夹,那么就去找特定名称的.so文件,注意:如果没有找到,不会再往下(armeabi-v7a文件夹)找了,而是直接抛出异常

 

参考自:

http://blog.csdn.net/mao520741111/article/details/50328669

http://blog.csdn.net/hss01248/article/details/51505531

http://www.voidcn.com/blog/u013278099/article/p-4944290.html

http://blog.csdn.net/vhawk/article/details/49964475

相关文章:

  • 2022-12-23
  • 2021-12-06
  • 2021-10-14
  • 2021-11-19
  • 2021-12-17
猜你喜欢
  • 2021-12-12
  • 2022-02-24
  • 2021-12-28
  • 2022-12-23
  • 2021-10-15
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案