Android简介

android的开发不单单只是android手机应用的开发

首先从最上面看:

application 分为两种,一种时我们系统自带的应用程序,电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置

另外一种就是互联网公司以及其他公司开发的自定义的应用程序,开发上层的界面应用程序也就是我们最熟悉的可以直接在手机看到的应用程序,他的开发语言使用的时JAVA语言进行的开发,大部分开发人员使用的开发工具:集成ecplise adt-bundle 另外一款就是比较新的

android studio两款工具进行开发。

第二层开发时 application framework 框架层,他也是使用java语言进行的开发,他的开发基本都是一些手机厂商定制自己的一些功能与组件

第三层开发就是C库的开发主要的作用就是对 在这里厂商比较多的开发就是书写一些自己的算法库,还有就是视频,音频的优化等功能,比如openGL 2D 3D引擎库等。

在二层与三层之间许多厂商为了避免自己的程序遵循开源协议自定义的一层叫做HAL层 简称hardware abstract layer 这一层时驱动层的抽象,定制一些自己写的驱动对上层提供接口的功能

Android运行环境:

Android包含一个核心库的集合,提供大部分在Java编程语言核心类库中可用的功能。每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。 大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。dx 是一套工具,可以将 Java .class 转换成 .dex 格式。一个dex文件通常会有多个.class。由于dex有时必须进行最佳化,会使文件大小增加1-4倍,以ODEX结尾。 Dalvik虚拟机依赖于Linux 内核提供基本功能,如线程和底层内存管理

Linux Kernel

Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。 如果你学过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(ServiceAccess Point),专业点可以说是高内聚、低耦合。如果你只是做应用开发,就不需要深入了解Linux Kernel层。

androi的编译与生成应用程序的流程:

通过这个图我们可以明白

时间: 2024-08-26 18:03:01

Android简介的相关文章

《第一行代码》之——1.Android简介

Android简介 Android系统架构 (图片源自维基百科) Android大致分为四层架构,五块区域. Linux内核层 Android系统基于Linux2.6,这一层为Android设备的各种硬件提供底层的驱动,如显示驱动,银屏驱动,照相机驱动,蓝牙驱动等. 2. 系统运行库层 通过一些C/C++库来为Android系统提供主要的特性支持 同样在这一层还有Android运行时库,它提供了一些核心库,允许开发者使用java语言来编写Android应用.另外Android运行时库还包含了Da

Android 简介:Android SDK 和开发框架简介

理解Android软件栈: 库: C/C++库(libc,SSL) Android 运行时可以让Android手机从本质上与一个移动Linux实现区分开来.Dalvik并不是Java虚拟机,是一个基于寄存器的虚拟机,它依赖于Linux内核进行线程和底层内存管理. Dalvik 虚拟机: 作用:Dalvik 不是传统的Java虚拟机,比如Java ME.Android使用定制的虚拟机来保证多个实例可以高效的运行在同一个设备上. Dvalvik使用底层的Linux内核来处理基本功能:安全.线程以及进

Android 简介

要了解应用的工作原理,请从应用基础知识开始入手. 要立即开始编码,请仔细阅读构建您的第一个应用. Android 提供了一个内容丰富的应用框架,支持您在 Java 语言环境中为移动设备开发创新应用和游戏.在左侧导航窗格列出的文档中,提供了有关如何使用各种 Android API 开发应用的详细信息. 如果您是 Android 应用开发新手,则需了解以下有关 Android 应用框架的基本概念,这一点至关重要: 应用提供多个入口点 Android 应用都是将各种可单独调用的不同组件加以组合开发而成

Android简介与开发环境

一.什么是Android与Android平台架构介绍 Android是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统,它包括一个操作系统,中间件和一些重要的应用程序. 采用软件堆层(Software Stack,又名软件叠层)的架构,主要分为三部分. 底层以Linux内核工作为基础,由C语言开发,只提供基本功能 中间层包括函数库Library和Dalvik虚拟机,由C++开发. 最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作

移动应用测试框架—Calabash Android 简介

什么是 Calabash? Calabash 是一个自动化测试框架,它可以测试?android?和 iOS 原生应用和混合应用. 它有:  calabash-android  calabash-ios  主页:? http://calabash.sh Calabash-android介绍  Calabash-android 是支持 android 的 UI 自动化测试框架,PC 端使用了 cucumber 框架,通过 http 和 json 与模拟器和真机上安装的测试 apk 通信,测试 apk

第一章 Android简介

一些常见的原生Android应用程序 一个电子邮件客户端 一个SMS(system management server)管理应用程序 一个完整的PIM套件(personal information management),包括日历和联系人列表 一个基于webkit的Web浏览器 一个音乐播放器和图片查看器 一个照相机和视频录制应用程序 一个计算器 一个主屏幕 一个闹钟 Android SDK的特征 1.访问硬件(包括摄像头.GPS.传感器) 2.使用Wi-Fi.蓝牙技术.和NFC进行数据传输 3

Android 4高级编程(第三版)Android简介

Android 部分组成: 一个兼容性定义文档(Compatibility Definition Document,CDD)和兼容性测试包(Compatibility Test Suite,CTS),它们描述了移动设备为了支持软件栈而需要具备的性能. 一个Linux操作系统内核 应用程序开发的开源库,包括SQLite Webkit OpenGL以及一个媒体管理器 用来运行和承载Android应用程序的运行时,包括Dalvik虚拟机和提供Android特定功能的核心库 一个把系统服务隐式地显示给应

android自学笔记(1):android简介

Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发.尚未有统一中文名称,中国大陆地区较 多人使用“安卓”或“安致”.Android操作系统最初由Andy Rubin开发,主要支持手机.2005年8月由Google收购注资. 其编程语言主要有C/C++(底层开发).Java(应用层开发)等. 主要的几个版本如下: 1.Android 1.0                     2008-9 2.A

【译】Android系统简介

简介  本文主要介绍Android的基础知识和体系结构,本文主题: 简介什么是Android,为什么开发者需要关注Android: Android体系结构(如Linux Kernel, Libraries, Android Runtime, Application Framework, Applications)和构建Android应用的主要组件(Activities, Services, Broadcast Receivers, Content Providers): 扩展:Intent和Fr