zoukankan      html  css  js  c++  java
  • armeabi与armeabi-v7a的区别

    1、手机cpu架构。

    讲到armeabi就不得不讲手机cpu了。电脑有电脑的cpu,手机也有手机的cpu。cpu有厂商属性,也有架构属性,架构的话自己简单地理解就是它的内部模块的组成结构。

    其中arm架构的手机cpu占市场的大部分,这也是今天的重点。但arm架构的发展历史悠久,也有很多不同的版本。

    2、前面讲了cpu架构,为下面的讲述做了一个技术背景的铺垫。

    我们在开发Android项目的时候,比如使用高德地图导航或者3d地图的时候就会使用到.so库文件,它们保存在armeabi和armeabi-v7a或arm64-v8a等目录下,这有什么作用呢?

    其实这是给app运行时读取的几个目录,但会根据手机cpu架构类型只从其中一个文件夹读取,有点类似values和values-21的作用,但是与它们又有点不同。

    后者的规则是:如果手机是21以上的会首先在values-21文件里面查找样式等,如果查找不到才去values文件找;如果手机是21以下的就直接在values文件下找。

    前者的规则是:根据cpu架构类型去app的libs里面匹配到对应的目录比如armeabi或者armeabi-v7a,然后就加载这个目录下的.so库;

    如果在匹配到的目录下没有对应的库也不会去别的目录下加载;

    但是armeabi目录可以匹配所有的arm架构的cpu,意思是指所有的arm架构的cpu的安卓手机如果没有找到最优的对应的目录,则会去匹配armeabi目录。

    我的推测是arm架构的cpu是向下兼容的,即保留之前版本的功能,而armeabi目录是匹配低版本armv5的,所以高版本的arm架构的cpu可以读取armeabi目录下的.so库文件;查过资料会发现低版本的arm架构cpu支持软浮点运算而高版本的支持硬件浮点运算,这是他们的区别之一。

                                                                                                                                                                                                                                                                             (转)https://blog.csdn.net/jiayouwangqiuwangzi/article/details/64437485

  • 相关阅读:
    Gym-101128D:Dice Cup
    C++内联汇编,输出人物名字
    钩子
    列表控件ListBox关联的MFC中的类:CListBox
    高级列表控件ListCtrl关联的MFC中的类:CListCtrl
    菜单复选及窗口置顶
    MFC学习之EDIT控件初始化
    dbgprint_Mine 调试输出
    64位内联汇编
    win7下提权代码
  • 原文地址:https://www.cnblogs.com/weiqiangwaideshijie/p/9412211.html
Copyright © 2011-2022 走看看