• 沒有找到結果。

软件结构和使用的工具

第 1 章 Android 的系统介绍

1.2 软件结构和使用的工具

1.1 系统介绍

1.2 软件结构和使用的工具

1.1 系统介绍

Android 是 Google 开发的基于 Linux 平台的、开源的、智能手机操作系统。Android 包括操作系统、中间 件和应用程序,由于源代码开放,Android 可以被移植到不同的硬件平台上。

OHA(Open Handset Alliance,开放手机联盟),为 Google 与 33 家公司联手为 Android 移动平台系统的发 展而组建的一个组织。

HTC 和 Google 合作推出了几款手机:G1、G2、Hero 和 Nexus One,其他的手机厂商也推出了几款 Android 手机,如下图所示:

图 G1、G2、Hero 和 Nexus One 手机

围绕在 Google 的 Android 系统中,形成了移植开发和上层应用程序开发两个不同的开发方面。手机厂商从 事移植开发工作,上层的应用程序开发可以由任何单位和个人完成,开发的过程可以基于真实的硬件系统,还 可以基于仿真器环境。

Android 1.5 以前的仿真环境,Android 1.6 以后的仿真器环境如下所示:

图 Android 1.5 以前的仿真器环境

图 Android 1.6 以后的仿真器环境

作为一个手机平台,Android 在技术上的优势主要有以下几点:

„ 全开放智能手机平台

„ 多硬件平台的支持

„ 使用众多的标准化技术

„ 核心技术完整,统一

„ 完善的 SDK 和文档

„ 完善的辅助开发工具

Android 的开发者可以在完备的开发环境中进行开发,Android 的官方网站也提供了丰富的文档、资料。这 样有利于 Android 系统的开发和运行在一个良好的生态环境中。

1.2 软件结构和使用的工具

从宏观的角度来看,Android 是一个开放的软件系统,它包含了众多的源代码。从下至上,Android 系统分 成 4 个层次:

„ 第 1 层次:Linux 操作系统及驱动;

„ 第 2 层次:本地代码(C/C++)框架;

„ 第 3 层次:Java 框架;

„ 第 4 层次:Java 应用程序。

Android 系统的架构如图所示:

Linux

由于 Android 系统需要支持 Java 代码的运行,这部分内容是 Android 的运行环境(Runtime),由虚拟机和 Java 基本类组成。

对于 Android 应用程序的开发,主要关注第 3 层次和第 4 层次之间的接口。

除了软件本身的代码之外,Android 还提供了一系列工具来辅助系统开发,这些主要的工具包括:

„ aapt(Android Asset Packaging Tool):用于建立 zip 兼容的包(zip、jar、apk),也可用于将资源编译到二进 制的 assets。

„ adb(Android Debug Bridge,Android 调试桥):使用 adb 工具可以在模拟器或设备上安装应用程序的.apk 文件,并从命令行访问模拟器或设备。也可以用它把 Android 模拟器或设备上的应用程序代码和一个标准 的调试器连接在一起。

„ android 工具:android 工具是一个脚本,用于创建和管理 Android Virtual Devices (AVDs)。

„ AIDL 工具(Android Interface Description Language,Android 接口描述语言工具),AIDL 工具可以生成进程 间接口的代码,诸如 Service 可能使用的接口。

„ AVDs(Android Virtual Devices,Android 虚拟设备)

„ 用于配置模拟器,模拟出类似的设备效果

„ DDMS(Dalvik Debug Monitor Service,Dalvik 调试监视器服务):这个工具集成了 Dalvik,能够在模拟器 或者设备上管理进程并协助调试。可以使用它杀死进程,选择某个特定的进程来调试,产生跟踪数据,观 察堆(heap)和线程信息,截取模拟器或设备的屏幕画面,还有更多的功能。

„ dx:dx 工具用于将.class 字节码(bytecode)转换为 Android 字节码(保存在.dex 文件中)这个字节码文件 是给 Android 的 Java 虚拟机运行用的。

„ Draw 9-patch:Draw 9-patch 工具允许使用所见即所得(WYSIWYG)的编辑器轻松地创建 NinePatch 图形。

„ Emulator(模拟器):模拟器是一个运行于主机上的程序,可以使用模拟器来模拟一个实际的 Android 系统 的运行,使用模拟器非常适合调试和测试应用程序。

做随机的但可重复的压力测试。

„ sqlite3:sqlite3 工具能够方便地访问 SQLite 数据文件,这是一个 sqlite 标准命令行工具。

„ Traceview:这个工具可以将 Android 应用程序产生的跟踪日志(trace log)转换为图形化的分析视图。

第 2 章 Android SDK的开发环境

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯

2.1 Android SDK 的结构 2.2 Android SDK 的环境安装 2.3 Android 中运行仿真器环境 2.4 Android 中建立中程

Android 的 SDK 开发环境使用预编译的内核和文件系统,屏蔽了 Android 软件架构第三层及以下的内容,

开发者可以基于 Android 的系统 API 配合进行应用程序层次的开发。在 SDK 的开发环境中,还可以使用 Eclipse 等作为 IDE 开发环境。

2.1 Android SDK的结构

Android SDK 在 IDE 环境中使用的组织结构如图所示:

Eclipse 开发环境

底层映像 工具

文档 示例代码

Android SDK ADT

Windows Linux

本机JAVA环境 安装

插件 设置SDK

运行仿真器

建立 工程

图 Android 系统的 IDE 开发环境

Android 提供的 SDK 有 Windows 和 Linux(其区别主要是 SDK 中工具不同),在 Android 开发者的网站上 可以直接下载各个版本的 SDK。

Android 的 SDK 命名规则为:

android-sdk-{主机系统}_{体系结构}_{版本}

例如,Android 提供 SDK 的几个文件包如下所示:

„ android-sdk-windows-1.5_r2.zip

„ android-sdk-linux_x86-1.5_r2.zip

„ android-sdk-windows-1.6_r1.zip

„ android-sdk-linux_x86-1.6_r1.zip SDK 的目录结构如下所示:

„ add-ons:附加的包;

„ docs:HTML 格式的离线文档;

(userdata image),默认的内存盘映像 (ramdisk image)等等,这些映像是仿真器运行的时候需要使用的;

„ samples/:包含一系列的应用程序,可以在 Android 的开发环境中,根据它们建立工程,编译并在仿真器上 运行;

„ skins/:包含了几个仿真器的皮肤,每个皮肤对应了一种屏幕尺寸;

„ templates/:包含了几个用 SDK 开发工具的模板;

„ tools/:特定平台的工具; Any development tools that are specific to the platform version.

„ android.jar:Android 库文件的 JAVA 程序包,在编译本平台的 Android 应用程序的时候被使用。

不同保本的 API 对应着不同的 API 级别,Android 已经发布,并且属于正式支持的各个版本的 SDK 如下所

Android 的 SDK 需要配合 ADT 使用,ADT(Android Development Tools)是 Eclipse 集成环境的一个插件。

通过扩展 Eclipse 集成环境功能,使得生成和调试 Android 应用程序既容易又快速。

2.2 Android SDK环境安装

Android 的 SDK Windows 版本需要以下的内容:

„ JDK 1.5 或者 JDK 1.6

„ Eclipse 集成开发环境

„ ADT(Android Development Tools)插件

„ Android SDK

其中 ADT 和 Android SDK 可以到 Android 开发者的网站去下载,或者在线安装亦可,ADT 的功能如下所 示:

„ 可以从 Eclipse IDE 内部访问其他的 Android 开发工具。例如,ADT 可以让你直接从 Eclipse 访问 DDMS 工 具的很多功能——屏幕截图、管理端口转发(port-forwarding)、设置断点,观察线程和进程信息。

„ 提供了一个新的项目向导(New Project Wizard),帮助你快速生成和建立起新 Android 应用程序所需的最基 本文件

JDK 1.6 版本其文件为 jdk-6u10-rc2-bin-b32- windows-i586-p-12_sep_2008.exe,点击直接进行安装即可。

2.2.2. 安装Eclipse

Eclipse 集成开发环境是开放的软件,可以到 Eclipse 的网站上去下载:

http://www.eclipse.org/downloads/

Eclipse 包含了以下的几个版本

„ Eclipse 3.3(Europa)

„ Eclipse 3.4(Ganymede)

„ Eclipse 3.5(Galileo)

在 Android 的开发中,推荐使用 Eclipse 3.4 和 Eclipse 3.5,Eclipse 3.3 虽然也可以使用,但是没有得到 Android 官方的验证。

如果使用 Eclipse 3.4,可以去下载 eclipse-SDK-3.4-win32.zip 包;如果使用 Eclipse 3.5,可以去下载 eclipse-SDK-3.5.1-win32.zip 包。这个包不需要安装,直接解压缩即可,解压缩后执行其中的 eclipse.exe 文件。

2.2.3. 获得Android SDK

Android 的 SDK 是一个比较庞大的部分,包含了 Android 系统的二进制内容、工具和文档等。得到 Android SDK,可能使用到两种方式:

„ 下载 Android SDK 的包(Archives)

„ 通过软件升级的方式(Setup)

下载 Android SDK 的包:对于 Android SDK 1.6 之前的版本,包括 Android SDK 1.1,Android SDK 1.5,Android SDK 1.6 可以直接从 Android 开发者中下载得到,每个 SDK 包含 Linux、Windows 和 MAC 三个版本。在 Windows 环境中,使用 Windows 的版本,例如:android-sdk-windows-1.5_r2.zip,android-sdk-windows-1.6_r1.zip,这个 包通常用几百 M 的大小。

以这种方式下载的 Android SDK,不需要安装,直接解压缩即可。

目前 Android 系统推荐使用的方式软件升级获得 Android 包:

„ 第一步:获得 android-sdk_r04-windows.zip

从 Android 开发者上,获取 Android SDK 的相关包 android-sdk_r04-windows.zip,这个包比实际的 Android 的 SDK 要小得多,只有 20 多 M,其中包含了一个 Setup 可执行程序,获取完整的 SDK 是通过这个可执行程序获得的。解 压缩这个包,获得 Android SDK 的基本目录结构,但是其中还没有实际的内容。

„ 第二步:运行SDK Setup.exe程序,下载实际的 Android SDK 运行程序,Android SDK 的,出现 SDK 的下载界面:

在 Settings 中进行设置,选中 Force ……项,并且选择保存(Save and Apply)。

图 设置安装路径

回到 Installed Packages 中,进行安装,出现 Android 的各个版本的 SDK、工具、文档的安装界面,如下所 示:

图 选择要安装的组件

每个组件可以选择,接受(Accept)表示安装,拒绝(Reject)表示不安装,接受全部(Accept All)表示 安装所有的内容。文档一般安装成最新的版本。

选择后,安装程序将依次安装各个组件。

图 安装界面

下载过程中,每个组件将首先被放置到 temp 中,以一个 zip 包的形式存在。下载完成后,得到完整的 Android SDK。

2.2.4(1). 在Eclipse 3.4(Ganymede)中安装ADT

第一步:启动 Eclipse 选择“Help”>“Software Updates...”准备安装插件。

图 Eclipse 3.4 中选择软件升级

第二步:在打开的对话框中点击“Available Software”,出现 Eclipse 的现有软件对话框。

图 Eclipse 3.4 中选择要安装的插件

点击右侧自上而下的第 3 个按钮,“Add Site...”准备增加插件。

图 增加 ADT 的路径

在“Add Site”对话框中,输入 Android 插件的路径:

https://dl-ssl.google.com/android/eclipse/

另外的一种方式是点击 Archive…按钮,这样可以不使用网络,直接指定磁盘中的 ADT 包(目前最新的版 本是 ADT-0.9.5.zip)。

第三步:回到安装对话框,可以看到 plugin 的 URL 下面有“Developer Tools”。选择到“Developer Tools”

中,

图 Eclipse 3.4 中选择安装 Android 的 DDMS 和 ADT

然后点击“Install...”按钮,继续运行,如图所示:

图 Eclipse 3.4 中进行安装 Android 的 DDMS 和 ADT

选择 Next 将出现如图的对话框:

图 Eclipse 3.4 中选择同意 Android 的协议

选择接受(accept)并且选择 Finish 完成安装之前的配置,后面的将进入安装的 Android 组件的阶段。

安装的过程要经过寻找依赖和安装两个阶段,如图所示:

图 Eclipse 3.4 中解决依赖关系和安装

第四步:安装完成,关闭并重新启动 Eclipse。再次进入 Eclipse 3.4 后,将发现 ADT 已经被安装。

2.2.4(2). 在Eclipse 3.5(Galileo)中安装ADT

第一步:启动 Eclipse 选择 “Help”>“Install New Software...”准备安装插件。

图 Eclipse 3.5 中选择安装新软件

第二步:出现软件升级的对话框

图 Eclipse 3.5 的软件升级的对话框

点击右侧自上而下的第 3 个按钮,“Add Site...”准备增加插件。

图 Eclipse 3.5 中增加 ADT 插件的路径

在“Add Site”对话框中,输入 Android 插件的路径:

https://dl-ssl.google.com/android/eclipse/

另外的一种方式是点击 Archive…按钮,这样可以不使用网络,直接指定磁盘中的 ADT 包(最新的版本是 ADT-0.9.5.zip)。

第四步:回到软件升级对话框,work with 的路径变为了 https://dl-ssl.google.com/android/eclipse/,后面的列

第四步:回到软件升级对话框,work with 的路径变为了 https://dl-ssl.google.com/android/eclipse/,后面的列