当前位置:操作系统 > 安卓/Android >>

什么是Android?

 

Android在中国,被叫做安卓,此名是来源于其英文发音。广义来讲,其实它就是一款运行在手机上的操作系统。它的开发商Google提供了相应的SDK包给开发者,这样我们才能够使用其API和工具在安卓系统的平台上开发相应的手机端软件。

 

特性

应用程序框架 包含了一系列可复用的通用组件

Dalvik虚拟机 手机端优化的Java程序运行时环境

集成浏览器 基于开源项目Webkit引擎

流畅的图形画面 自定义的二位图形库;基于OpenGL ES 1.0规范(可选的硬件加速)的三维图形

SQLite 结构化的数据库

多媒体支持 支持音频,视频和各种图片格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

GSM电话 传统的GSM网络通信能力(硬件相关)

蓝牙,EDGE, 3G 和WiFi(硬件相关)

摄像头,GPS定位,罗盘,加速度(硬件相关)

多种开发环境 设备模拟器,调试工具,内存和性能调优,Eclipse IDE的插件

Android架构

 

 

应用程序

Android系统中已经装配一些核心的应用程序:邮件客户端,短信程序,日历,地图,浏览器,联系等,所有的应用程序是用Java语言编写的。

 

应用框架

通过提供了开放的开发平台,开发者可以在上面创造各种丰富的程序。

开发者拥有所有对框架接口的访问权限。

丰富并且可扩展的视图 列表,网格,文本框,按钮,嵌入式浏览器

Content Providers 帮助应用程序访问其他程序的数据(例如联系人)或者共享自己的数据

A Resource Manager 帮助访问其他的资源,本地化字符串,图片,视图文件

A Notification Manager

帮助所有程序在状态栏中显示自定义的通知

An Activity Manager

管理应用程序的生命周期,并提供公用的历史后退导航栈

Android包含了一组C/C++的库,这些库是被各种各样的系统组件使用的。

系统C库 标准的C系统库(libc)的BSD系的实现,应用于嵌入式Linux的设备

媒体库 基于PacketVideo OpenCORE; 支持各种音视频格式的制作和播放

皮肤管理器 管理系统和各种应用程序的显示

LibWebCore web浏览器引擎

SGL 底层的二维图形引擎

三维库 基于OpenGL ES 1.0 接口的实现库;

FreeType 位图和适量字体渲染

SQLite 强大的轻量级的关系型数据库引擎

Android运行时

Androi包含了一组使用Java语言编写的核心库,它们提供了大部分功能。

每一个应用,系统都会提供单独的DVM虚拟机实例,运行在各自独立的进程中。

Dalvik VM虚拟机运行的是.dex格式的文件,这种文件已经根据最小化内存的原则进行过优化。

Java编译器首先将Java代码编译成.class字节码,然后dx工具将前面生成的.class文件编译成.dex文件。

Dalvik VM虚拟机运行在Linux内核上,由Linux内核提供了线程和底层级别的内存管理。

Linux内核

Android依赖在Linux 2.6版本,这个版本的内核提供了一些核心的系统服务,安全,内存管理,进程管理,网络协议栈,驱动模型。内核也充当着在硬件和软件之间的抽象层。

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,