0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Android模拟器执行ARM应用

汽车玩家 来源:互联网科技密 作者:互联网科技密 2020-04-13 09:34 次阅读

随着 Android 11 开发者预览版的发布 ,我们同时也推出了 Android 11 系统映像。新的系统映像在执行 ARM 二进制文件方面取得了显著的性能提升。此前,依赖 ARM 库且无法构建 x86 版本应用的开发者只能使用完整的 ARM 模拟系统映像 (其速度远低于在 x86 设备上运行 x86 系统映像) 或者实体机。Android 11 系统映像能够在不影响整个系统的前提下,直接将 ARM 指令转换成 x86 指令。开发者无需搭建高负载的 ARM 环境即可执行 ARM 二进制文件并进行测试。

全新的 Android 11 (Google API) x86 系统映像支持 ARM 应用二进制接口 (ABI),较旧版本的 Android Oreo 系统映像并不提供该支持

Android 11 系统映像 https://developer.android.google.cn/studio/releases/emulator#support_for_arm_binaries_on_android_9_and_11_system_images

技术细节

我们可能需要结合具体情景来说明这项新技术的重要性,尤其是如果您只使用 Kotlin 或 Java 编程语言来构建应用的话。Kotlin 和 Java 编程语言均在 ART (Android 运行时) 上执行,但 C++ 则与它们不同,Android 应用中的所有 C++ 指令会直接编译为机器指令,也就是说,目标设备的平台架构决定着 C++ 的编译方法。移动手机一般搭载 ARM 处理器,因此,您为应用添加的许多 C++ 依赖项 (例如摄像头条形码扫描库) 仅与 ARM 处理器兼容。在这种情形下,如果您使用基于 x86 处理器的设备进行开发工作,便会遇到应用无法运行的问题。

过去,开发者需要通过模拟器镜系统映像搭建一个完整的 ARM 环境,才能绕过这个限制并在 x86 机器上执行 ARM 应用。但是,把整个系统的 ARM 指令都转换成 x86 指令会造成过高的性能负荷,因此与基于 x86 的系统映像相比,完整的 ARM 系统映像在 x86 宿主机上的运行速度会慢很多,而且它还无法使用 x86 处理器提供的硬件加速和 CPU 虚拟化技术。

全新的Android 11 系统映像与 ARM 兼容,它不仅允许整个系统在本机运行 x86 指令,而且还可以照常使用虚拟化技术。当应用的某个进程需要使用 ARM 二进制代码时,代码仅会在该进程内被转换成 x86 指令,其余进程将继续在 x86 环境内执行,包括 Android 运行时 (ART) 以及其它性能关键库,例如 libGLES和 libvulkan。除此以外,指令转换器也不会执行低层的硬件特定库,从而避免高成本的内存访问检测和相应的性能影响。在 ARM 公司的协作下,新的模拟器系统映像在本地和持续集成框架内均可运行。

Android 11 系统映像https://developer.android.google.cn/studio/releases/emulator#support_for_arm_binaries_on_android_9_and_11_system_images

libGLEShttps://developer.android.google.cn/ndk/guides/stable_apis#graphics

libvulkanhttps://developer.android.google.cn/ndk/guides/graphics/design-notes

下一步

如果您之前由于缺乏高性能的 ARM 支持,去选择了实体机而非模拟器,不妨尝试一下 Android 11 系统映像。此映像文件目前已随 Android 11 开发者预览版一同开放下载。您可通过 SDK Manager 或者 Android Virtual Device Manager将最新版本的系统映像下载至 Android Studio。

使用 Android Virtual Device Manager 创建一个运行 Android 11 的 AVD

Android 11 系统映像https://developer.android.google.cn/studio/releases/emulator#support_for_arm_binaries_on_android_9_and_11_system_images

Android Virtual Device Managerhttps://developer.android.google.cn/studio/run/managing-avds#createavd

一旦应用在模拟器中成功运行后,请考虑适配 Chrome OS。Chrome OS 同样也支持在 x86 笔记本上执行 ARM 版本的 Android 应用。通过构建适用于 Chrome OS 的应用,您可以挖掘大屏幕设备生态圈所蕴含的海量机遇,让全球更多的用户认识您的应用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9184

    浏览量

    369746
  • Android
    +关注

    关注

    12

    文章

    3946

    浏览量

    128072
收藏 人收藏

    评论

    相关推荐

    电网模拟器工作原理浅析

    电网模拟器是一种能够模拟实际电网运行状态的装置,它在电力系统的规划、设计、测试和维护中发挥着至关重要的作用。了解电网模拟器的工作原理对于优化电力系统的设计和提升其运行效率具有重要意义。 电网
    的头像 发表于 01-09 16:58 233次阅读

    光伏组件模拟器9大参数概述

    是确保质量和性能的关键。 光伏组件模拟器模拟太阳光谱和辐照度,实现精确测试。与自然光照相比,模拟器不受天气和时间限制,提供稳定可控的光照条件,确保测试数据准确且可重复。此外,模拟器
    的头像 发表于 12-31 18:10 203次阅读
    光伏组件<b class='flag-5'>模拟器</b>9大参数概述

    android手机上emulate应用程序的方法

    Android手机上模拟(emulate)应用程序的方法通常涉及到使用Android模拟器(Emulator)或类似的工具来模拟
    的头像 发表于 12-05 15:33 525次阅读

    电动汽车交流接口模拟器相关介绍

    吉事励电动汽车交流接口模拟器也叫便携式充电桩测试仪,是一种用于测试和验证电动汽车充电设备性能和安全性的仪器。它主要用于模拟电动汽车的交流充电接口,与充电设备进行通信和交互,以确保充电设备能够正确
    的头像 发表于 11-26 18:10 251次阅读
    电动汽车交流接口<b class='flag-5'>模拟器</b>相关介绍

    鸿蒙Flutter实战:12-使用模拟器开发调试

    前提 开发电脑需为M系列芯片 (ARM架构) 的 Mac 电脑 目前 Flutter 鸿蒙开发,无法使用 X86 架构的模拟器,只能使用 ARM 架构的模拟器** 创建项目 等开发
    发表于 11-10 13:13

    如何使用光伏模拟器

    光伏模拟器是一种用于模拟太阳能光伏电池工作原理和性能的软硬件设备。它能够提供光伏电池在不同光照、温度和环境条件下的电流、电压、功率等参数,用于测试和评估光伏电池的性能,并帮助开发、优化和验证光伏系统
    的头像 发表于 10-30 17:12 335次阅读
    如何使用光伏<b class='flag-5'>模拟器</b>

    可回馈式电网模拟器的使用方法有哪些?

    回馈式电网模拟器是一种能够模拟电力系统运行状态的设备,它可以模拟电网的各种工况,包括正常工况、故障工况等。通过使用回馈式电网模拟器,可以对电力系统的运行进行深入研究,提高电力系统的运行
    发表于 10-16 10:50

    负载模拟器是干什么的,负载模拟器需要接电源吗

    负载模拟器是一种用于模拟各种负载条件的设备,它在多个领域都有着广泛的应用。以下是对负载模拟器的主要功能和用途的详细解析:
    的头像 发表于 10-01 15:57 821次阅读

    电池模拟器的原理和运用介绍

    电池模拟器是一种功能强大的设备,它能够精确模拟电池在实际使用中的多种特性,包括电压、电流和内阻等。这种设备在现代科技中发挥着重要作用,特别是在电池管理系统和充放电设备的测试与校准方面。随着
    的头像 发表于 09-11 16:11 1200次阅读
    电池<b class='flag-5'>模拟器</b>的原理和运用介绍

    通过GNSS模拟器实现RTK高精度定位 #RTK #GNSS模拟 #GNSS仿真 #GNSS模拟器

    定位模拟器
    虹科卫星与无线电通信
    发布于 :2024年09月06日 17:52:32

    致茂负载模拟器LED电源测试方案

    致茂独家提供负载模拟器LED电源测试方案
    的头像 发表于 08-28 10:55 789次阅读

    苹果更新App Store指南,允许PC模拟器下载游戏

    苹果近日对面向开发者的App Store指南进行了更新,特别是在模拟器规则上作出了重要调整,这一变化显著地放宽了PC模拟器在App Store上的使用范围。具体而言,更新后的指南4.7条款中,苹果
    的头像 发表于 08-02 16:37 510次阅读

    电池模拟器模拟测试电池充放电性能

    电池模拟器是一种强大的工具,能够在模拟真实电池的输出状态和充放电特性方面发挥重要作用。它可以准确地模拟电池的充放电状态、放电深度、开路电压和内部电阻等关键参数,用户可根据需要随时调整这些条件,以快速
    的头像 发表于 06-11 16:05 1004次阅读
    电池<b class='flag-5'>模拟器</b><b class='flag-5'>模拟</b>测试电池充放电性能

    电路仿真模拟器怎么用

    电路仿真模拟器是电子工程师和学生必备的一类软件工具。通过使用电路仿真模拟器,用户可以在计算机上模拟和分析各种电路设计,从而避免在实际搭建电路之前出现错误和浪费资源。本文将详细介绍电路仿真模拟器
    的头像 发表于 05-04 10:53 2653次阅读

    Delta模拟器随AltStore上线,苹果解禁复古游戏模拟器

     4月9日消息,开发者Riley Testut在Mastodon平台宣布已获得苹果公司确认,其研发的游戏模拟器应用程序Delta将随AltStore一同正式上线。
    的头像 发表于 04-09 11:08 1036次阅读