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? 开始 安装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是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 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 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 Studio 深度探索:韩语版 Android 开发指南》 在移动应用开发领域,Android Studio 是谷歌推荐的官方集成开发环境(IDE),它为开发者提供了强大的工具集,帮助他们构建高质量的 Android 应用。这篇文档...
如何才能写出贴近Android设计理念、能够更加高效和可靠运行的Android应用?通过Android的源代码去了解其底层实现细节是重要的方之一!然而,Android系统太过于庞,源代码实现复杂,习的技术门槛和时间成本都很高。有...
在Android开发中,串口通信(Serial Port Communication)是一种重要的技术,它允许设备之间通过串行接口进行数据交换。在Android Studio环境下实现串口通信,开发者可以构建与硬件设备交互的应用,例如读取传感器...
什么是Android? 软件层 开发环境 集成开发环境 你好,世界! 项目结构 SDK管理器 AVD经理 活动 活动生命周期 操作视图 列表视图 转接器 意图 意图过滤器 可序列化 可包裹的 可序列化还是可打包? 动作栏菜单 上...
在现代的移动应用开发中,JavaScript与原生平台之间的交互变得越来越常见,特别是在使用Android的WebView组件时。本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 ...
【Android扫雷游戏开发详解】 在移动开发领域,Android Studio是Google推出的官方集成开发环境(IDE),用于构建Android应用程序。本项目"Android扫雷游戏"就是利用Android Studio进行开发的一个实例,旨在帮助初学...