本来这一篇想略掉,可一想还有很多刚接触Android的朋友,有必要介绍一下关于Android的一些基本常识,如果你已经开始学习android了这一章可以飘过!
首先Android是一个开放的移动设备平台,包括操作系统,中间件和关键应用软件堆栈。 它基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google开发,后由开放手机联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。之后Android提供了NDK以供开发者使用其他语言编写程序。另外,为了推广此技术,Google和其他几十个手机公司创建了开放手机联盟。Android在未公开之前常被传闻为Google电话或gPhone。大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。到了2010年1月,Google始发表自家品牌手机电话的Nexus One。它有以下特点:
· 应用程序框架,使组件的重用和替换
· Dalvik虚拟机为移动设备优化
· 集成浏览器基于开源的WebKit的引擎
· 优化的图形,通过自定义的2D图形库供电;基于3D图形的OpenGL ES 1.0规范(硬件加速可选)
· SQLite为结构化数据存储
· 媒体支持常见的音频,视频和静止图像格式(MPEG4,H.264,MP3,AAC,AMR,JPG,PNG,GIF )
· GSM电话(依赖于硬件)
· 蓝牙,EDGE,3G和WiFi(依赖于硬件)
· 摄像头,GPS,指南针,和加速度计(依赖于硬件)
· 丰富的开发环境,包括设备模拟器,调试,内存和性能分析工具,和一个用于Eclipse IDE插件
该系统被成功运用到了 手机,平板电脑,彩电,GPS导航,车载电视等设备上。
Android架构
应用
Android核心应用,包括电子邮件客户端,SMS程序,日历,地图,浏览器,联系人,和其他应用。所有应用程序都使用Java编程语言编写的。
应用框架
通过提供一个开放的开发平台。开发者可以自由的开发丰富的应用程序,开发人员可以完全访问核心应用中使用相同的框架API。应用程序的架构设计简化了组件的重用,任何应用都可以发布它的功能并且能够使用任何其他应用程序的功能。
应用库
Android包含一套C / C + + Android系统的各个组成部分所使用的库。这些功能通过Android应用程序框架暴露给开发者。下面列出了一些核心库:
· 系统C库 -一个标准C系统库,为嵌入式的,基于Linux的设备。
· 媒体库 -基于PacketVideo的OpenCORE;支持许多流行的音频和视频格式的播放和录音,以及静态图像文件,包括MPEG4,H.264,支持MP3,AAC,AMR,JPG, PNG
· 视图管理器 -管理多个应用程序,显示子系统和2D,3D图形层的访问
· LibWebCore -一个现代的Web浏览器的引擎SGL -底层的2D图形引擎
· 3D库 -基于OpenGL ES 1.0 API的基础上实现;使用或者硬件3D加速(如果可用)或所包含的,高度优化的3D
· FreeType -位图和矢量字体渲染
· SQLite -所有的应用程序提供的一个强大的和轻量级的关系数据库引擎
Android的运行环境
每个Android应用都运行在它自己的进程中,拥有自己的Dalvik虚拟机实例。Dalvik被设计成可以有效地运行多个虚拟机。Dalvik虚拟机执行的Dalvik可执行文件(。DEX)格式,这是最小的内存占用优化文件。VM是基于寄存器的,并运行由Java语言的编译器,编译成.dex文件的编译类。Dalvik虚拟机依赖于Linux内核。
Linux内核
Android的核心系统服务,如安全,内存管理,进程管理,网络堆栈和驱动程序模型依赖在Linux 2.6版本。内核也作为硬件和软件堆栈的其余部分之间的抽象层。
---------------------------------------------------------------------------------------------
Android版本发行
Android系统基本上每半年一次的升级,分别定在每年的夏天和年终。每代Android系统都将以甜点命名.比如:
1.5版叫做Cupcake(纸杯蛋糕)
1.6版为Donut(甜甜圈)
2.1版的Eclair(闪电泡芙,一种法式奶油夹心甜点),此版本曾被叫做Flan“水果馅饼”,之后是
2.2版的Froyo(冻酸奶)
2.3版的Gingerbread(姜饼).
以CDEFG字头顺序排列.
- 大小: 194 KB
- 大小: 96.1 KB
分享到:
相关推荐
Android扫盲教程大全经典教程全分享 Android扫盲教程大全经典教程全分享 Android扫盲1之如何安装卸载软件 Android扫盲2之桌面管理 Android扫盲3之添加删除联系人 Android扫盲4之蓝牙,无线网络,APN接入点相关 ...
资源名称:《零基础学习软件测试》视频教程-扫盲篇资源目录:【】《零基础学习软件测试》之软件测试知识扫盲篇_1【】《零基础学习软件测试》之软件测试知识扫盲篇_2【】《零基础学习软件测试》之软件测试知识扫盲篇_...
### Android开发基础知识详解 #### 一、Android的背景与历史 - **名称由来**:Android的名字来源于希腊语,意为“机器人”。它的英文名Andy是Andrew的昵称,中文通常译为“安卓”。 - **诞生与发展**:2007年11月5...
**敏捷开发之Scrum扫盲篇** 敏捷开发是一种软件开发的方法论,强调适应性、灵活性和团队合作,以快速响应变化并提供高质量的产品。Scrum是敏捷开发中的一个框架,它以其高效、迭代和增量的特性深受业界欢迎。本文将...
钻石知识扫盲篇.ppt
本文将为你提供关于这两个系统的入门扫盲。 首先,我们来看看Linux。Linux是一种类Unix的操作系统,由Linus Torvalds领导开发,其核心程序(内核)遵循开源的GNU General Public License(GPL)协议,这意味着任何...
01-扫盲篇-渗透入坑专业术语知多少.md
### 常用电子元件扫盲篇:电子元件基础知识 #### 一、三极管简介 三极管是一种重要的半导体器件,广泛应用于放大电路、开关电路等。它由两个PN结组成,通常分为NPN型和PNP型两种类型。 - **NPN型**:发射区为N型...
《Power MOSFET扫盲篇》一文深入探讨了功率MOSFET(Metal-Oxide-Semiconductor Field-Effect Transistor,金属氧化物半导体场效应晶体管)的基础知识、工作原理及其在电力电子领域的应用。功率MOSFET作为现代电力...
本文将对PCIe总线的基础知识进行扫盲,涵盖其物理层结构、中断机制等方面。 首先,PCIe的物理层(PHY Layer),也称为PIPE接口,是PCIe通信的基石。它负责将数据转换为电信号,通过电缆或连接器传输,并在接收端...
本文将围绕“Git和Repo扫盲——如何取得Android源代码”这一主题,深入探讨这两个工具以及如何利用它们获取Android的源代码。 Git是一款分布式版本控制系统,由Linus Torvalds为Linux内核开发而创建。它允许开发者...
### 开关功率MOS基础知识详解 #### 一、MOS管种类与结构 MOSFET(金属氧化物半导体场效应晶体管)是现代电子工程中不可或缺的重要组件之一,广泛应用于电源转换、信号放大和数字逻辑电路等领域。...
会计知识………………………………………………………………………………
此扫盲篇主要介绍了两种常见的群众性质量活动:提案改善活动和QCC活动。 **一、提案改善活动** 提案改善活动是员工积极参与企业改进的一种方式,员工针对公司的经营战略、方针目标以及工作中遇到的问题提出创新性...
### Shell扫盲篇:Shell常见知识 #### 一、用户登录进入系统后的系统环境变量 在用户登录到系统后,会有一些预设的环境变量,这些变量定义了用户的默认环境和行为。以下是一些常见的环境变量及其含义: - **$HOME...
**Hibernate扫盲篇** 在Java开发中,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。然而,初次接触Hibernate时,由于其丰富的配置选项和复杂的使用方式,不少开发者可能会感到困惑。...
### 二极管基本概念与应用 #### 一、二极管概述 二极管是一种常用的电子元件,在电路中通常用“D”加上一个数字来表示,例如:D5 表示编号为5...希望本篇文档能够帮助您更好地理解和掌握这些基础电子元件的相关知识。
Git 和 Repo 扫盲——如何取得 Android 源代码 在了解 Git 和 Repo 之前,我们首先需要了解版本控制系统的概念。版本控制系统是指一种管理和跟踪项目代码变更的系统,它可以帮助开发者记录和管理项目的历史修改记录...