基于SkyEye运行Android——应用最为广泛的移动设备操作系统

embedded/2024/9/23 14:24:01/

01.Android简介

Android(安卓)是一种基于Linux内核(不包含GNU组件)的开源操作系统,最初由安迪·鲁宾开发,主要支持手机。2005年8月由Google收购注资;2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。在开发5年后,全世界采用Android的设备数量就已达到10亿台。下图所示为知名流量检测机构StatCounter统计的2022年9月至2023年2月全球移动操作系统市场份额占比情况,其中Android始终占据全球移动操作系统70%以上的市场份额:

▲全球移动操作系统市场份额占比

Android系统以其开源性、丰富的应用生态系统、硬件兼容性、用户可定制性,广泛应用于智能手机、平板电脑、电视、机器人、汽车等设备。Android在汽车车载系统领域的应用始于2014年,由谷歌牵头与知名汽车制造商联合推出了名为Open Automotive Alliance的新组织。该联盟由谷歌、通用、本田、奥迪、现代和芯片制造商Nvidia组成,专注于将“成功的移动操作系统”以“专为汽车而设计的方式”引入车载娱乐系统,并于当年推出了Android Auto系统(支持将智能手机上的内容传送至汽车屏幕)。发布3年后的2017年,Android系统工程副总裁帕特里克·布雷迪(Patrick Brady)表示,当前支持Android Auto的汽车已达300多款。

02.基于SkyEye运行Android

对于移动设备的开发而言,其软件开发与硬件研制往往是相辅相成的,复杂、耗时、高价的硬件环境搭建经常会成为导致开发滞后的重大阻碍。天目全数字实时仿真软件SkyEye,能够帮助搭建与真实硬件运行速率一致的仿真目标系统,并运行移动设备操作系统,大大改善移动设备操作系统受硬件设备资源制约的困境。

考虑到Android在移动设备操作系统开发中的普遍性,SkyEye早在2012年推出的skyeye-1.3.5版本中就已适配Android,下文将演示基于SkyEye模拟Android的运行过程。

03.实例演示:

Step 1:在Linux系统下安装skyeye-1.3.5版本。

Step 2:进入Android测试用例的文件夹,直接运行用例,即可呈现Android外观界面。

Step 3:可通过运行小游戏测试程序运行情况,这里以“愤怒的小鸟”为例。

Step 4:运行成功,同样证明基于SkyEye运行Android运行成功。


http://www.ppmy.cn/embedded/30841.html

相关文章

PostgreSQL的扩展pgpool

PostgreSQL的扩展pgpool pgpool-II(通常简称为 pgpool)是一个流行的 PostgreSQL 中间件,广泛用于连接池、负载均衡、自动故障转移等场景。作为一种高级数据库解决方案,pgpool 能够在多个 PostgreSQL 服务器之间分配数据库查询&am…

线性表—单链表实现

文章目录 链表介绍 单链表介绍 创建单链表节点 销毁 打印 查找 创建节点 增加数据 尾插 头插 指定位置插入 删除数据 尾删 头删 指定位置删除 整体代码 SListNode.h SListNode.c 链表介绍 链表是一种物理存储单元上非连续、非顺序的存储结构,由一…

【C++STL详解(五)】--------list的介绍与使用

目录 前言 一、list的介绍 二、list的使用 Ⅰ.默认成员函数 1、构造函数 2、赋值重载 3、析构函数 Ⅱ、容量 1.size() Ⅲ、迭代器与遍历 1.beginend (正向迭代器) 2.rbeginrend (反向迭代器) 3.front 4.back Ⅳ、增删查改 1.push_front 2.pop_front 3.push_b…

【C 数据结构】深度优先搜索、广度优先搜索

文章目录 【 1. DFS 深度优先搜索 】1.1 基本原理1.2 C 实现 【 2. BFS 广度优先搜索 】2.1 基本原理2.2 C 实现 【 3. 深度优先生成树、广度优先生成树 】【 4. 深度优先生成森林、广度优先生成森林 】4.1 深度优先生成森林4.2 广度优先生成森林 对存储的图中的顶点进行遍历搜…

【SQL】❤️数据库理论加实践详细教程❤️实践出真知❤️

SQL(结构化查询语言) 基础部分 SQL作用 按照作用划分可以划分为四个模块,从而由此行文 DDL(数据定义语言): DDL涉及的命令允许用户定义或修改数据库的结构。主要命令包括: CREATE:用于创建新的数据库对象,…

thinkphp6 workerman无法使用框架Db/model等类库方法解决方案

thinkphp6 workerman无法使用框架Db/model相关操作解决 执行安装相关扩展 composer require webman/gateway-worker引入成功后编辑服务类文件,直接展示代码 <?phpnamespace app\server\controller;use GatewayWorker\BusinessWorker; use GatewayWorker\Gateway; use Gate…

第二弹:走进CSS世界,学习记录

目录 1.1. 了解CSS 1.2. 放置CSS的几种方式 1.3. CSS选择器 1.3.1. 基本选择器 1.3.2. 层级选择器 1.3.3. 属性选择器 1.3.4. 结构性伪类选择器 1.3.5. 状态伪类选择器 1.3.6. 选择器优先级 1.3.7. 文本属性 1.3.8. 背景属性 1.3.9. 尺寸属性 1.3.10. 列表属性 1…

Flask模版详解

Flask模版详解 概述Jinja2模板引擎渲染模版的步骤变量控制结构自定义错误页面链接静态文件 概述 模板是一个包含响应文本的文件&#xff0c;其中包含用占位变量表示的动态部分&#xff0c;其具体值只在请求的上下文中才能知道。使用真实值替换变量&#xff0c;再返回最终得到的…