[选载]Google Android开发入门与实践 本文介绍Android的体系结构,Android应用程序的组成和Android应用的逻辑组成。 1. Android体系结构 Android的软件层次结构包括一个操作系统,中间件,应用程序。其软件层次结构自上而下可分为: •应用程序 •应用程序框架 •各种库和Android的运行时环境 •操作系统层应用程序:以java语言编写,设计用户界面交互设计。Android本身提供了桌面,联系人,电话,浏览器等很多核心的应用。 应用程序框架:为应用程序提供系统的API。通过Android的应用程序框架,开发人员可重用各种组件和服务。应用程序的框架组成部分: •UI组件:包括列表,文本框,按钮等UI组件,是用户可视的部分。 •Content Providers:提供了一种应用程序程序可实现数据的访问和共享的机制。 •Notification Manager:能让应用程序将自己的警告信息显示在状态栏上,如显示收到新短信,提示电池信息。 •Activity Manager:管理应用程序的生命周期,并提供应用程序页面退出的机制。 Android库和运行时环境 Android包含一些核心的C/C++库,这些库能通过JNI技术供系统的各种组件使用。 这些库包括: •系统C库:从BSD继承来的标准C库。 •媒体库:包括多种常用的音频,视频格式回放和录制。同时支持静态图像文件,支持MPEG4,MP3,AAC,JPG,PNG,H.264,AMR等多种编码格式。 •Surface Manager:管理显示子系统,并为多个应用程序提供2D和3D的无缝融合。 •LibWebCore:浏览器引擎。 •SGL:底层的2D图形引擎。 •3D librarie:提供3D加速。 •FreeType:提供位位图和矢量的字体显示。 •SQLite:数据库应用。 Android包含了一个核心库,该核心库提供了java语言核心库的大多数功能。 每一个Android应用程序都在自己的进程空间内运行,都拥有一个独立的dalvik虚拟机实现。Dalvik被设计成一个设备,可同时高效的运行多个虚拟系统。dalvik虚拟机依赖于linux内核的一些功能,如线程调度,内存管理。 2. Android应用程序组成 Android程序包括以下四部分: •Activity •Broadcast Intent Receiver •Server •Content Provider Activity,一般代表手机屏幕的一屏,相当于浏览器的一个页面。在Activity中添加view,实现应用界面和用户交互。一个应用程序一般由多个Activity构成,这些Activity之间可互相跳转,可进行页面间的数据传递。每个Activity都有自己的生命周期。 Intent Receiver,Intent是一次对将要执行的操作的抽象描述。通过Intent,可实现Activity与Activity之间的跳转。Intent最重要的组成部分是Intent的动作(Action)和动作对应的数据(data)。与Intent相关的一个类叫Intent Filters。它用来描述Intent能够用来处理哪些操作。 Broadcast Intent Receiver,用于响应外部事件。BroadcastReceiver不能生成UI,所以对用户来说是不可见的。 Service,运行在后台的应用程序。 Content Provider:一个Content Provider提供了一组标准的接口,从而能够让应用程序保存或读取Content Provider的各种数据类型。一个应用程序可通过它将自己的数据暴露出去。对于外界的应用程序来说,它不需要关心这些数据的存储方式,存储地方,只需要通过Content Provide提供的r接口访问这些数据即可。当然这涉及到数据访问的权限问题。 3. Android工程文件组成 Android的开发使用eclipse+ADT。 工程文件包括: •源文件:使用java语言编写的代码,包括各种Activity的实现。 •R.java:由eclipse自动生成,包含了应用程序所使用到的资源ID。 •Android library:Android库文件。 •assets:放置多媒体文件等。 •res:应用程序所需的资源文件,如图标,动画,颜色等。 •drawable:图片资源 •layout:描述了Activity的布局。 •values:定义字符串,颜色等 •Android Manifest.xml:应用程序的配置文件。在该文件中声明应用程序的名称,使用到的Activity,Service,Receive,权限等。

更多相关文章

  1. Android中实现全屏、无标题栏的两种办法(另附Android系统自带样式
  2. Android应用程序结构
  3. Android平台简介
  4. 新书内容连载(3):Android(安卓)SDK中常用命令行工具(一)
  5. 2021年Android开发实战!带你一起探究Android事件分发机制,醍醐灌顶
  6. 10个 iOS 用户暂可以嘲笑 Android(安卓)的特点
  7. 1、What Makes an Android(安卓)Application?
  8. ANDROID NDK文档系列--(一)Android(安卓)NDK Overview
  9. Android(安卓)Support Library 23.2

随机推荐

  1. Failed resolution of: Lcom/growingio/a
  2. 基于Win10、Cordova9.0.0的Android开发环
  3. Android基本界面元素的使用与讲解
  4. Android安卓开发知识库汇总
  5. Android(安卓)Adapter使用总结
  6. Android系统架构剖析
  7. 在IntelliJ IDEA搭建Android开发环境
  8. Android布局背景颜色设置
  9. android 触摸事件传递机制与笔记
  10. Android(安卓)ContentProvider 使用