• 0755-82538016
  • 0755-82560826
  • 深圳网站建设_APP小程序开发_博纳网络

    • 网站建设案例
      • ";

        营销网站建设

        全网营销网站

        高端网站建设

        商城网站建设

        外贸网站建设

        小程序开发

        区块链开发

        物联网项目开发

        定制app开发

        在线教育网站

        速成网站建设

        服装网站建设

        餐饮网站建设

        珠宝首饰网站

        机械制造网站

        文化旅游网站

        家装建材网站

        美容化妆品网站

        数码产品网站

        模板案例库

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 网站推广
      • ";

        网站优化基础

        建站优化

        网站优化

        营销推广

        整站优化

        推广帮助

        谷歌搜索

        推广方案

        推广套餐

        推广技巧

        百度排名

        巧用微博推广

        直播视频网站推广法

        微信推广网站方法

        网站外链推广

        公共微信号推广

        网站优化闲谈

        常见问题

        公司资讯

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 网站制作资讯
      • ";

        网站制作

        外贸网站建设

        网站设计

        网站代运营

        深圳网站建设专栏

        深圳小程序开发

        网站改版

        APP开发

        网站建设方案

        安全维护

        软件开发

        平台搭建

        建站行业资讯

        域名注册

        虚拟主机

        企业邮局

        国外主机

        VPS独享空间

        免备案香港服务器

        如何解析域名

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 网站报价
      • ";

        网站报价

        建站方案

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 公司动态
      • ";
        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 关注博纳
      • ";

        网站制作精英团队

        网站建设公司愿景

        公司介绍

        主营业务

        博纳文化

        加入博纳

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 联系我们
      • ";

        网站建设公司联系方式

        网站建设、网站制作公司乘车路线

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
      网站制作资讯

      当前位置:

        主页网站制作资讯APP开发Android系统APP开发ABI 的管理

      Android系统APP开发ABI 的管理

      发布时间:2019-01-24

      文章编辑:网站建设 文章来源:APP开发 浏览量:次

      1、ABI简介
      Android系统支持不同的Android设备使用不同的CPU,CPU与指令集的每种组合都有其自己的应用二进制界面(或ABI)。ABI可以非常精确地定义应用的机器代码在运行时如何与系统交互。开发者必须为应用要使用的每个CPU架构指定ABI。
      典型的ABI包含以下信息。
      ·机器代码应使用的CPU指令集。
      ·运行时内存存储和加载的字节顺序。
      ·可执行二进制文件(例如程序和共享库)的格式,以及它们支持的内容类型。
      ·用于解析内容与系统之间数据的各种约定。这些约定
      包括对齐限制,以及系统如何使用堆栈和在调用方法时注册。
      ·运行时可用于机器代码的方法符号列表一—通常来自非常具体的库集。
      2、支持的ABI
      每个ABI支持一个或多个指令集。
      (1)armeabi
      此ABI适用于基于ARM、至少支持ARMv5TE指令集的CPU,不支持硬件辅助的浮点计算。
      此ABI支持ARM的Thumb(亦称Thumb-1)指令集。NDK默认生成Thumb代码,除非在Android.mk文件中使用LOCAL_ARM_MODE变量指定不同的行为。
      (2)armeabi-v7a
      此ABI可扩展armeabi以包含多个CPU指令集扩展,包括Thumb-2指令集扩展,其性能堪比32位ARM指令,简洁性类似于Thumb-1;VFP硬件FPU指令,更具体一点,包括VFPv3-D16,它除了ARM核心中的16个32位寄存器之外,还包含16个专用64位浮点寄存器;v7-aARM规格描述的其他扩展,包括高级SIMD(亦称NEON)、VFPv3-D32和ThumbEE,都是此ABI可选的。
      (3)arm64-v8a
      此ABI适用于基于ARMv8、支持AArch64的CPU。它还包含NEON和VFPv4指令集。
      (4)x86
      此ABI适用于支持通常称为“x86”或“IA-32”的指令集的CPU。
      (5)x8664
      此ABI适用于支持通常称为“x86-64”的指令集的CPU。
      (6)mips
      此ABI适用于基于MIPS、至少支持MIPS32r1指令集的CPU。
      (7)mips64
      此ABI适用于MIPS64R6。
      3、为特定ABI生成代码
      默认情况下,NDK为armeabiABI生成机器代码。但可以通过向Application.mk文件添加以下行生成ARMv7-a兼容的机器代码。
      APP ABI:=armeabi-v7a
      要为两个或更多不同的ABI构建机器代码,需要使用空格作为分隔符。示例代码如下:
      APP ABI:=armeabi armeabi-v7a
      此设置指示NDK为机器代码构建两个版本:此行中所列的armeabi和armeabi-v7a。
      构建多个机器代码版本时,构建系统会将库复制到应用项目路径,并最终将它们封装到APK中,从而创建一个胖二进制文件。胖二进制文件大于只包含一个系统的机器代码的二进制文件,兼容性更广,但APK占的存储空间更大。
      在安装时,软件包管理器只解析APK中包含的最适合目标设备的机器代码。
      4、Android系统的ABI管理
      Android系统的软件包管理器预期在APK中符合以下模式的文件路径上查找NDK生成的库。
      |/1ib/<abi>/lib<name>.so
      这里的<abi>支持的是ABI下面列出的ABI名称之一,<name〉是为Android.mk文件中的LOCAL_MODULE变量定义库时使用的库名称。由于APK文件只是zip文件,因此打开它们并确认它们属于哪些原生共享库是很简单的。
      如果系统在预期位置找不到原生共享库,便无法使用它们。在这种情况下,应用本身必须复制这些库,然后执行dlopen()。
      在胖二进制文件中,每个库位于其名称与相应ABI匹配的目录下。例如,胖二进制文件可能包含以下文件。
      |/1ib/armeabi/libfoo.so
      |/lib/armeabi-v7a/libfoo.so
      |/1ib/arm64-v8a/libfoo.so
      |/1ib/×86/libfoo.so
      |/1ib/x8664/libfoo.so
      |/lib/mips/libfoo.so
      /1ib/mips64/libfoo.so

      5、Android系统ABI支持
      Android系统在运行时知道它支持哪些ABI,因为版本特定的系统属性会指示。
      ·设备的主要ABI,与系统映像本身使用的机器代码对应。
      ·可选的辅助ABI,与系统映像支持的另一个ABI对应。
      此机制确保系统在安装时从软件包提取最佳机器代码。
      为实现最佳性能,应直接针对主要ABI进行编译。例如,基于ARMv5TE的典型设备只会定义主要ABI为armeabi。相反,基于ARMv7的典型设备将主要ABI定义为armeabi-v7a,而将辅助ABI定义为armeabi,因为它可以运行为每个ABI生成的应用原生二进制文件。
      许多基于x86的设备也可运行armeabi-v7a和armeabi NDK二进制文件。对于这些设备,主要ABI将是x86,辅助ABI是armeabi-v7a。
      基于MIPS的典型设备只定义主要ABI为mips。
      6、安装时自动解压缩原生代码
      安装应用时,软件包管理器服务将扫描APK,查找以下形式的任何共享库。
      |1ib/<primary-abi>/lib<name>.so
      如果未找到,并且已定义辅助ABI,该服务将扫描以下形式的共享库。
      |1ib/<secondary-abi>/lib<name>.so
      找到所需的库时,软件包管理器会将它们复制到应用的data目录(data/data/<package_name>/1ib/)下的/1ib/1ib<name〉.so。
      如果没有找到所需的库,会报如下错误。
      |Failure [INSTALL FAILED NO MATCHING ABIS:Failed to extra
      Ict native libraries,res=-113]
       

      当前文章链接:/construction/appkaifa/2179.html
      上一篇:大数据对App营销的价值 下一篇:如何使用Android Studio编译打包
      返回列表
      如果您觉得案例还不错请帮忙分享:

      [声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。

      相关案例推荐

      • 艺术仓

        艺术仓

        行业网站

        艺术仓

      • 百合婚庆行业网站设计作案例

        百合婚庆行业网站设计作案例

        行业网站

        百合婚庆行业网站设计作案例

      • 恒隆电气行业网站制作案例

        恒隆电气行业网站制作案例

        行业网站

        恒隆电气行业网站制作案例

      资讯分类

      • 网站制作
      • 外贸网站建设
      • 网站设计
      • 网站代运营
      • 深圳网站建设专栏
      • 深圳小程序开发
      • 网站改版
      • APP开发
      • 网站建设方案
      • 安全维护
      • 软件开发
      • 平台搭建
      • 建站行业资讯
      • 域名注册
      • 虚拟主机
      • 企业邮局
      • 国外主机
      • VPS独享空间
      • 免备案香港服务器
      • 如何解析域名

      最新发布

      • 社区APP开发上线后影响用户使用的粘性有哪些?
      • 为什么说大健产业O2OAPP开发潜力无限
      • 网络公司对社区O2OAPP开发基本认识
      • 工业4.0时代怎样做好一个APP的开发工作?
      • APP开发公司分析APP应用开发下一个巨头在哪些领域?
      • APP电子商务平台开发前景如何?
      • 社交类型APP开发需要具备的五个必要条件
      • 社交类型APP平台开发使用小程序还是APP模式好?
      • 使用HTML语言开发APP商城可以吗?
      • 社区O2OAPP开发的方向选择

      相关资讯

      • APP网站制作流程以及栏目分布
      • 企业网站优化人员面对搜索引擎的困惑
      • 企业门户网站如何做好针对搜索引擎的优化工作
      • APP/PC购物商城网站如何做好产品图片的优化技巧
      • 网站软文内容以及网站外链存在的几种形式对网站有多大影响
      • 如何做好网站软文标题的描述更适合搜索引擎的需要?
      • 网站建设好后期出现被搜索引擎降权的几个主要因素
      • 小程序开发制作前途取决于市场,别被您的同行抢了先机
      • APP开发公司提醒您关注:电商平台要求商家“二选一”引多方不满 专家提建议
      • APP为什么会在我们的手机界面上变成僵尸图标?

      热门搜索

      • 企业网站建设
      • 福田网站建设
      • 影视网站建设
      • 商业网站制作
      • 模板网站建设
      • 设计
      • 网站制作
      • 手机网站制作
      • 网站代运营
      • 网站设计

      Copyright © 2021 博纳网络 版权所有  粤ICP备17054727号

      • 🏠

        首页

      • 💬

        咨询

      • 📞

        通话

      • 📂

        案例

      • ⬆

        返回