`

什么是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版本,这个版本的内核提供了一些核心的系统服务,安全,内存管理,进程管理,网络协议栈,驱动模型。内核也充当着在硬件和软件之间的抽象层。

 

 

 

 

 

 

 

 

 

  • 大小: 194 KB
1
1
分享到:
评论

相关推荐

    Android+sdk中文帮助文档

    什么是Android? 开始 安装SDK 更新SDK 开发与调试 Hello Android 应用程序解析 记事本教程 开发工具 应用程序模型 应用程序生命周期 开发应用程序 用户界面工具 组成部分 数据存储与取回 安全模型 ...

    Android开发基本知识总结,Android课件pdf

    1.什么是Android? 移动设备(常常指手机mobile)的操作系统,由google公司出品,是免费的,最早是基于Linux平台的:目前已经推出的Android3.0是平板电脑上的操作系统。 其它的手机操作系统有:iPhone系统等。 手机厂商...

    android 中文帮助手册 开发指南 API

    《Android SDK文档》什么是Android? 从这里开始 安装SDK 更新SDK 开发与调试 Hello Android 应用程序解析 记事本教程 开发工具 应用程序模型 应用程序生命周期 开发应用程序 用户界面工具 应用构成部分 数据存储与...

    [14本经典Android开发教程]-3-Android SDK 中文开发文档

    什么是 Android? Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。Beta版的 Android SDK 提供了在Android 平台上使用JaVa语言进行Android应用开发必须的工具和API接口。 ...

    新版Android开发教程.rar

    什么是 Android? Android? Android? Android? Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。 Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 ...

    Android应用程序开发教程PDF电子书完整版、Android开发学习教程

    什么是 Android? Android是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 ...

    Android代码-屏蔽home按键

    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 apk信息统计

    ANDROID-SDK-VERSION :2.1 导入包:android_core.jar android_framework.jar android_common.jar 这三个包需要编译android源码,才可以得到。 简介:该范例用来统计android手机中已经安装的所有APK程序,分为4中...

    Android自定义组件开发详解.rar_android_it

    组件开发,Android自定义,???????????????????????????????????????????????????????? Android ???????????????? ?????????????????????????????????????? IT ???????? 10 ???????????????????????????????? ??????...

    Android 手机编程基础入门教程 pdf文件

    Android Google手机编程基础入门教程 pdf,Android手机概念,Android手机入门,什么是Android?Android的系统架构等都是本教程的重要,在这一教程集里不会涉及代码,主要是讲一些开发前奏知识。

    想破解Android?把它冻—下就可以了!.pdf

    想破解Android?把它冻—下就可以了!.pdf

    Android单元测试初探——Instrumentation

    学习Android有一段时间了,虽然前段时间对软件测试有了...在这篇文章中,我将介绍Instrumentation这种测试方法,那么什么是Instrumentation?Instrumentation和Activity有点类似,只不过Activity是需要一个界面的,而

    Android动画效果translate、scale、alpha、rotate详解

    "Android 动画效果translate、scale、alpha、rotate详解" Android 动画效果可以分为四种类型:translate、scale、alpha、rotate,每种类型都有其特点和应用场景。 一、translate 动画效果 translate 动画效果是...

    ?????????????????_sample_androidstudio_android_源码

    《Android Studio 深度探索:韩语版 Android 开发指南》 在移动应用开发领域,Android Studio 是谷歌推荐的官方集成开发环境(IDE),它为开发者提供了强大的工具集,帮助他们构建高质量的 Android 应用。这篇文档...

    Android开发精要.mobi

    如何才能写出贴近Android设计理念、能够更加高效和可靠运行的Android应用?通过Android的源代码去了解其底层实现细节是重要的方之一!然而,Android系统太过于庞,源代码实现复杂,习的技术门槛和时间成本都很高。有...

    Android串口通信(Android Studio)

    在Android开发中,串口通信(Serial Port Communication)是一种重要的技术,它允许设备之间通过串行接口进行数据交换。在Android Studio环境下实现串口通信,开发者可以构建与硬件设备交互的应用,例如读取传感器...

    cast-2015-2-android:Android培训课程-演员组(2015年第二学期)

    什么是Android? 软件层 开发环境 集成开发环境 你好,世界! 项目结构 SDK管理器 AVD经理 活动 活动生命周期 操作视图 列表视图 转接器 意图 意图过滤器 可序列化 可包裹的 可序列化还是可打包? 动作栏菜单 上...

    JS调用Android方法,向Android方法传递json数据

    在现代的移动应用开发中,JavaScript与原生平台之间的交互变得越来越常见,特别是在使用Android的WebView组件时。本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 ...

    Android Studio Ladybug(android-studio-2024.2.1.10-cros.deb)

    Android Studio Ladybug 2024.2.1(android-studio-2024.2.1.10-cros.deb)适用于Chrome OS系统。

Global site tag (gtag.js) - Google Analytics