zoukankan      html  css  js  c++  java
  • AndroidStudio Libs文件夹下不同CPU类型的目录

    在AS中的libs文件夹下我们会看到有以下几个文件夹,分别是armeabi,armeabi-v7a,x86,mips,arm64-v8a,mips64,x86_64,那么这几个文件夹是用来做什么的呢?在AS中默认使用的是gradle编译方式,在libs文件夹下是我们需要引入.so文件。这些文件夹对应这我们android系统cpu的类型。

    一、Android 设备的CPU类型(通常称为”ABIs”)
    1. armeabiv-v7a: 第7代及以上的 ARM 处理器。2011年15月以后的生产的大部分Android设备都使用它.
    2. arm64-v8a: 第8代、64位ARM处理器,很少设备,三星 Galaxy S6是其中之一。
    3. armeabi: 第5代、第6代的ARM处理器,早期的手机用的比较多。
    4. x86: 平板、模拟器用得比较多。
    5. x86_64: 64位的平板。
    6. mips:mips在32位和64位嵌入式领域中历史悠久,获得了不少的成功。
    所以在Libs文件下的对应上述的文件夹是对应了我们Android的cpu处理器,就好比我们在res目录下对应的hdpi、xhdp..不同分辨率的文件夹一样,只不过这里是Android的cpu处理器。在早期Android系统几乎只支持ARMv5的CPU架构,而现在Android系统支持的有7种。

    二、AS中引入.so文件可能出现的问题
    当一个应用安装在设备上,只有该设备支持的CPU架构对应的.so文件会被安装。在x86设备上,libs/x86目录中如果存在.so文件的话,会被安装,如果不存在,则会选择armeabi-v7a中的.so文件,如果也不存在,则选择armeabi目录中的.so文件(因为x86设备也支持armeabi-v7a和armeabi)。
    所以我们应该尽可能的提供每个ABI优化过的.so文件要么全部支持,要么都不支持:不能混合着使用。应该为每个ABI目录提供对应的.so文件。
    ————————————————
    版权声明:本文为CSDN博主「yangjzhong」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/weixin_37185329/article/details/78177382

  • 相关阅读:
    [专题六] 位运算
    [专题五] 二叉树
    [专题四] 并查集
    [专题三] 图论
    [专题二] 排序
    [专题一] 栈和队列
    我的最新书单
    虚拟机极简配置manjaro gnome
    运算符重载
    Manjaro kde 18.0安装与基本配置
  • 原文地址:https://www.cnblogs.com/hi-yxiao/p/12782647.html
Copyright © 2011-2022 走看看