声明:
第一次看E文资料,试着自己翻译一下,发现很多单词不知道怎么翻译才好,出现了很多错误。翻译仅仅用于自己学习,我知道里面有很多错误,和我一样菜的请慎重。大虾发现错误若希望小弟能进步,请指出来。拍砖可以,但是骂人就不要了。俺不想装B之类的。谢谢!
Android是移动设备的一种软件栈,它包括一系列的操作系统,中间件和主要的应用。Android SDK 提供了在Android平台上使用Java程序设计语言来开发应用程序的工具和API。
特点
••应用程序框架(Application framework)能够重用和替换组件
•Dalvik虚拟机(Dalvik virtual machine)为手机设备提供优化
•集成浏览器(Integrated browser)以开源WebKit引擎为基础
•最佳优化的图形(Optimized graphics)由一个定制的2D图形库驱动;以OpenGL ES1.0规格的3D制图法(可选的硬件加速)
•SQLite 为结构化数据存储的轻量级别数据库
•媒体支持(Media support)通用的音频,视频,还有静态影像格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
•GSM Telephony(从属硬件)
•相机,GPS,罗盘,和加速计(从属硬件)
•丰富的开发环境 包括设备仿真器,调试工具,存储器工具,性能调试工具,一个用于Eclipse IDE的插件
Android架构
下面的图表展示了Android操作系统主要的组件。每个部分在下面被详细的描述
Applications(应用程序)
Android搭载了一系列的核心应用程序,其中包括email 客户端,SMS程序,日历,地图,浏览器,联系人等等其他。所有的应用程序使用Java程序语言编写。
Application Framework(应用程序框架)
在核心应用程序中使用的框架APIs,开发者也完全拥有其访问权限。应用程序架构被设计为简单的组件复用;任何一款应用程序都可以发布它的性能,并且其他的应用程序可以使用这些性能(受到框架安全的限制)。相同的机制允许了用户可以将组件进行替换。
所有的应用程序底层是一套服务和系统进程,包括:
•一套丰富的并且可扩展的视图,可以用来构建应用程序,包括列表,网格,文本框,按钮甚至可嵌入的web浏览器
•内容提供器,可以使应用程序访问其他应用程序(比如联系人)的数据,或者共享它们自己的数据
•资源管理器,提供非代码资源诸如本地字符串,图形,布局文件
•通知管理器,能够使所有应用程序在状态栏显示定制的通知
•活动管理器,管理应用程序的生命周期并且提供一个通用的导航回退功能。
更多的细节和应用程序的预览,请查阅Notpad Tutorial。
Libraries(类库)
Android 包括一套Android系统使用的各种各样组件的c/c++类库。这些功能通过Android应用程序架构展现给开发者。部分核心类库如下:
•System C library:一个BSD实施的标准类库,被修改为嵌入式Linux设备使用
•Media Libraries:以视频软件的开放式内核为基础;类库支持回放和录制多种流行音频和视频格式,并且还支持静态图片文件,包括MPEG4, H.264, MP3, AAC, AMR, JPG, 和 PNG
•Suiface manager:管理访问显示子系统和无缝衔接复杂应用程的2D和3D图形层
•LibWebCore:一个现代的网络浏览器引擎,同时支持Android浏览器和嵌入式的网络控件
•SGL:底层2D图形引擎
•3D libraries:以OpenGL ES 1.0 APIs为基础的接口;这些类库用来硬件3D加速,最佳化的3D软件xx?
•FreeType:位图和矢量字体渲染
•SQLite:功能强大轻量级相关数据引擎,可以被所有应用程序使用。
Android Runtime
Android包含一套核心库,它用来给Java程序设计语言的核心库提供大部分的功能实现
每一个Android应用程序在它自己的线程中运行,还有他们在Dalvik虚拟机中的实例。Dalvik已经设计成的使设备运行复杂虚拟机更有效率。Dalvik虚拟机执行.dex格式的文件,这个文件可以更大程度的优化内存使用。虚拟机是一个基于寄存器的,运行着已经被dx工具格式化为.dex格式的并且被Java编译工具编译过的类文件的虚拟机。
Dalvik虚拟机依赖于Linux内核,用于类似线程,低级内存管理这些底层管理。
Linux Kernel
Android依赖于Linux2.6版本内核,用于核心系统服务,比如安全,内存管理,进程管理,网络堆栈,驱动模型。内核同时扮演着一个硬件和软件之间的中间层角色。
分享到:
相关推荐
什么是Android? 开始 安装SDK 更新SDK 开发与调试 Hello Android 应用程序解析 记事本教程 开发工具 应用程序模型 应用程序生命周期 开发应用程序 用户界面工具 组成部分 数据存储与取回 安全模型 ...
Android开发教程:Android SDK中文开发文档 pdf版电子书下载,介绍什么是 Android?Android特性及架构,Android应用程序框架和程序库,Android 运行库和Linux内核,如何安装配置Android SDK、建立应用程序签名、移植...
《Android SDK文档》什么是Android? 从这里开始 安装SDK 更新SDK 开发与调试 Hello Android 应用程序解析 记事本教程 开发工具 应用程序模型 应用程序生命周期 开发应用程序 用户界面工具 应用构成部分 数据存储与...
什么是 Android? Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。Beta版的 Android SDK 提供了在Android 平台上使用JaVa语言进行Android应用开发必须的工具和API接口。 ...
什么是 Android? Android? Android? Android? Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。 Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 ...
一、什么是 Android? Android 是一个基于 Linux 的开放源代码操作系统,主要用于移动设备如智能手机和平板电脑。Android 的出现改变了移动设备的开发模式,允许开发者自由地创建和发布应用程序。 二、 Android 的...
As there are a lot questions about "how to disable home button in android?" on Stack Overflow, such as how to disable home button in android? Android - Is It possible to disable the click of home ...
ANDROID-SDK-VERSION :2.1 导入包:android_core.jar android_framework.jar android_common.jar 这三个包需要编译android源码,才可以得到。 简介:该范例用来统计android手机中已经安装的所有APK程序,分为4中...
组件开发,Android自定义,???????????????????????????????????????????????????????? Android ???????????????? ?????????????????????????????????????? IT ???????? 10 ???????????????????????????????? ??????...
Android Google手机编程基础入门教程 pdf,Android手机概念,Android手机入门,什么是Android?Android的系统架构等都是本教程的重要,在这一教程集里不会涉及代码,主要是讲一些开发前奏知识。
想破解Android?把它冻—下就可以了!.pdf
学习Android有一段时间了,虽然前段时间对软件测试有了...在这篇文章中,我将介绍Instrumentation这种测试方法,那么什么是Instrumentation?Instrumentation和Activity有点类似,只不过Activity是需要一个界面的,而
开放手机联盟--Open Handset Alliance ...什么是Android? Android 的系统架构 7 个Linux 手机平台 Android 学习方法 Android 开发环境搭建 Android 虚拟机Dalvik Android 中各种JAVA 包的功能描述 ................
Android新编译规则Android.bp文件语法规则详细介绍,条件编译的配置案例。 Android.bp 文件首先是 Android 系统的一种编译配置文件,是用来代替原来的 Android.mk 文件的。在 Android7.0 以前,Android 都是使用 ...
"Android 动画效果translate、scale、alpha、rotate详解" Android 动画效果可以分为四种类型:translate、scale、alpha、rotate,每种类型都有其特点和应用场景。 一、translate 动画效果 translate 动画效果是...
《Android Studio 深度探索:韩语版 Android 开发指南》 在移动应用开发领域,Android Studio 是谷歌推荐的官方集成开发环境(IDE),它为开发者提供了强大的工具集,帮助他们构建高质量的 Android 应用。这篇文档...
在Android开发中,串口通信(Serial Port Communication)是一种重要的技术,它允许设备之间通过串行接口进行数据交换。在Android Studio环境下实现串口通信,开发者可以构建与硬件设备交互的应用,例如读取传感器...
什么是Android? 软件层 开发环境 集成开发环境 你好,世界! 项目结构 SDK管理器 AVD经理 活动 活动生命周期 操作视图 列表视图 转接器 意图 意图过滤器 可序列化 可包裹的 可序列化还是可打包? 动作栏菜单 上...
在现代的移动应用开发中,JavaScript与原生平台之间的交互变得越来越常见,特别是在使用Android的WebView组件时。本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 ...
Android 4.4.2 SDK(软件开发工具包)是Google为开发者提供的一个关键工具集,用于构建、调试和发布针对Android 4.4.2(KitKat)操作系统的应用程序。这个离线包包含了所有必要的组件,使得开发者无需连接到互联网...