返学费网 > 培训机构 > 厦门新博教育

4008508622

全国统一学习专线 8:30-21:00

Android 是 Google 提供的移动、无线、计算机和通信平台。通过使用 Android Eclipse 插件,可以在强大的 Eclipse 环境中构建 Android 应用程序。本教程介绍如何用 Eclipse 插件 Android Development Tools 进行 Android 应用程序开发,包括对 Android 平台和 Android Development Tools 的介绍,并开发两个示例应用程序。
此外,您还可以通过教程“构建 Android 手机 RSS 阅读器: 使用 Android 处理 XML”,了解如何构建一个运行在 Android 平台上的 RSS 阅读器。
开始之前
本教程介绍如何在 Eclipse 环境中进行 Android 应用程序开发,包括两个示例应用程序。第一个示例是一个基本的应用程序,涉及构建和调试的所有阶段。第二个应用程序示例涉及比较复杂的 Android 特性,包括联系人搜索和 Google Maps 地址查找。要想从本教程获得最大收益,具备移动开发经验会有帮助,但不是必需的。开发 Android 应用程序需要 Java? 编程技能,但是对于本教程不是必需的。
关于本教程
我们为什么要关注 Android?有两个原因使 Android 成为重要的平台。首先,Google 引入了 Android,它在很短时间内就获得了市场的关注。Google 正在进军移动市场。它在这个市场上采取的第一个行动就是发布 Android 和 Open Handset Alliance,这是一个令人印象深刻的起点。第二,Android 不仅仅是另一种包含电话、菜单和触摸屏功能的移动平台。您将在本教程中了解到,Android 提供了一种不同的应用程序开发方法。由于可以对请求的操作和代码进行运行时绑定,Android 的体系结构支持高度可定制的软件环境。无论是考虑市场因素还是 Android 的技术方面,它都是一个值得研究的平台。
本教程分为以下几节:
Android 基础知识和必需的工具
Android Software Developer Kit
构建和调试 SaySomething Android 应用程序
创建内容提供器和 Google Maps 应用程序
系统需求
本教程需要结合使用几种技术。
Eclipse 平台
Eclipse 是一个运行插件的平台。您应该安装 Eclipse Classic 的最新版本(本教程使用 V3.3.1)。
Android Developer Tools
按照 安装 Android SDK 中的说明安装 Android Developer Tools(Eclipse 插件)。
源代码
本教程中的源代码片段包括:
AndroidManifest.xml(片段)— 这个文件是 Android 应用程序的应用程序部署描述符。
IntentReceiver — 演示 IntentReceiver 的实现,这个类处理 AndroidManifest.xml 文件中 IntentFilter 标记所公布的 intent。
SaySomething.java — 实现一个 Android 活动,这是本教程的示例应用程序的主要入口点。
Main.xml — 这个文件包含 Android 活动所用的视觉元素或资源。
R.java — 这个文件是由 Android Developer Tools 自动生成的,它把视觉资源 “连接” 到 Java 源代码。
AndroidManifest.xml(完整)— 这是完整的 AndroidManfest.xml 文件,包含每个重要元素的描述。
MobileServiceCallContacts.java — 这个文件包含的代码显示联系人并对用户输入做出反应,执行 Google Maps 地址查找。
在讨论 Eclipse 插件和开发 Android 应用程序之前,我们先看看 Android 的体系结构和一些重要的术语,这会对本教程后面的讨论和您自己构建 Android 应用程序有帮助。
Android 术语
在 Eclipse 环境中开发 Android 应用程序需要了解 Eclipse 环境和 Android 平台的知识。了解以下术语会有助于用 Eclipse 插件开发 Android 应用程序。
Open Handset Alliance
这是一个由 Google 公司主导的组织,它由许多公共和私人组织组成。
Android
这是 Open Handset Alliance 的主打产品。它是一种针对移动设备的开放源码操作环境。
模拟器
模拟另一个系统的软件工具 — 这常常是在个人计算机(IBM?、Mac、Linux?)上运行的一个环境,它模拟另一个环境,比如移动计算设备。
Linux
一种开放源码的操作系统内核,许多计算平台都使用这种操作系统,包括服务器、桌面计算机、网络设备和移动计算设备。Android 在 Linux 内核上运行。
Dalvik Virtual Machine
Dalvik VM 是 Android 产品组合中的一种操作环境,它在运行时解释应用程序代码。Dalvik VM 与 Java VM 相似,但是两者不兼容。
Android 基础知识和必需的工具
Android 是一种针对移动平台的开放源码操作系统。到编写本教程时,它是一种纯软件的平台,没有可用的硬件设备。
Android 平台被称为一个产品组合,因为它是一系列组件的集合,包括:
基于 Linux 内核的操作系统
Java 编程环境
工具集,包括编译器、资源编译器、调试器和模拟器
用来运行应用程序的 Dalvik VM
简要介绍了 Android 平台的体系结构之后,我们来从市场的角度看看这个平台的一些重要特性。
Android 为什么很重要?
自从 Android 和最初的 SDK 发布以来,计算机技术新闻界一直非常关注 Android。Android 之所以重要主要有两个原因。
Android 是 Google 进军移动市场的主要行动。移动应用程序领域竞争激烈,新的竞争者很难涉足。Google 拥有大量资源和强大的品牌实力,有能力涉足任何市场。Google 进军移动市场已经好几年了。Android 原来属于另一家公司,Google 通过收购这家公司大大提高了在移动市场上的竞争力。Google 的任何行动都会受到关注,而且引入新平台也很引人注目。Android 同时具备这两个因素。
第二个原因是 Android 的应用程序模型与众不同。Android 应用程序并不是需要大量单击操作的纯粹的菜单式应用程序。Android 应用程序中确实有菜单和按钮,但是 Android 在体系结构中引入了一种新颖的设计元素 intent。
intent
intent 是一种构造,应用程序可以通过它发出请求,这就像是发出求助信号。intent 可能像下面这样:
"Wanted: An application to help me look up a contact" 或 "Wanted: An application to help me display this image" 或 "Wanted: An application to perform this geographic-based search"
应用程序可以按照相似或互补的方式进行注册,表明它们有能力或有兴趣执行各种请求或 intent。比如:
"Available: Application ready and willing to present contact records in clear, concise manner" 或 "Available: Application ready and willing to perform a geographic search"
这些是 IntentFilter 的示例,下面将要讨论。
IntentFilter
应用程序通过一个称为 IntentFilter 的构造声明它们能够执行某些类型的操作。IntentFilter 可以在运行时进行注册,也可以在 AndroidManifest.xml 文件中设置。下面的代码片段取自一个对 SMS(文本)消息进行响应的 Android 应用程序:
清单 1. 对 SMS 进行响应的 Android 应用程序
< receiver class=".MySMSMailBox" >
< intent-filter>
< action android:value="android.provider.Telephony.SMS_RECEIVED" />
< /intent-filter>
< /receiver>
简要介绍 intent 和 IntentFilter 之后,下一节介绍 Android 应用程序的四种主要类型。
Android 应用程序 — 概述
我们来看看 Android 应用程序的四种主要类型:活动、服务、接收器和 ContentProvider。我们还要看看显示用户界面(UI)元素的视图。
活动
活动是最常用的 Android 应用程序形式。活动在一个称为视图 的类的帮助下,为应用程序提供 UI。视图类实现各种 UI 元素,比如文本框、标签、按钮和计算平台上常见的其他 UI 元素。
一个应用程序可以包含一个或多个活动。这些活动通常与应用程序中的屏幕形成一对一关系。
应用程序通过调用 startActivity() 或 startSubActivity() 方法从一个活动转移到另一个活动。如果应用程序只需 “切换” 到新的活动,就应该使用前一个方法。如果需要异步的调用/响应模式,就使用后一个方法。在这两种情况下,都需要通过方法的参数传递一个 intent。
由操作系统负责决定哪个活动最适合满足指定的 intent。
服务和接收器
与其他多任务计算环境一样,“在后台” 运行着一些应用程序,它们执行各种任务。Android 把这种应用程序称为 “服务”。服务是没有 UI 的 Android 应用程序。
接收器是一个应用程序组件,它接收请求并处理 intent。与服务一样,接收器在一般情况下也没有 UI 元素。接收器通常在 AndroidManifest.xml 文件中注册。清单 2 是接收器代码的示例。注意,接收器的类属性是负责实现这个接收器的 Java 类。
清单 2. 接收器代码
package com.msi.samplereceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentReceiver;
public class myreceiver extends IntentReceiver
{
public void onReceiveIntent(Context arg0, Intent arg1)
{
// do something when this method is invoked.
}
}
用 ContentProvider 进行数据管理
ContentProvider 是 Android 的数据存储抽象机制。我们以移动设备上常见的一种数据为例:地址簿或联系人数据库。地址簿包含所有联系人及其电话号码,用户在使用手机时可能需要使用这些数据。ContentProvider 对数据存储的访问方法进行抽象。ContentProvider 在许多方面起到数据库服务器的作用。对数据存储中数据的读写操作应该通过适当的 ContentProvider 传递,而不是直接访问文件或数据库。可能还有 ContentProvider 的 “客户机” 和 “实现”。
下一节介绍 Android 视图,这是 Android 在移动设备屏幕上显示 UI 元素的机制。
视图
Android 活动通过视图显示 UI 元素。视图采用以下布局设计之一:
LinearVertical
后续的每个元素都排在前一个元素下面,形成一个单一列。
LinearHorizontal
后续的每个元素都排在前一个元素右边,形成一个单一行。
Relative
后续的每个元素相对于前一个元素有一定的偏移量。
Table
与 HTML 表相似的一系列行和列。每个单元格可以包含一个视图元素。
选择一种布局(或布局的组合)之后,就可以用各个视图显示 UI。
视图元素由大家熟悉的 UI 元素组成,包括:
Button
ImageButton
EditText
TextView(与标签相似)
CheckBox
Radio Button
Gallery 和 ImageSwitcher(用来显示多个图像)
List
Grid
DatePicker
TimePicker
Spinner(与组合框相似)
AutoComplete(具有文本自动补全特性的 EditText)
视图是在一个 XML 文件中定义的。清单 3 给出一个简单的 LinearVertical 布局示例。
清单 3. 简单的 LinearVertical 布局
< ?xml version="1.0" encoding="utf-8"?>
< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
androidrientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
< TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Activity 1!"
/>
< TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Activity 1, second text view!"
/>
< Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Switch To Activity 2"
id="@+id/switchto2"
/>
< /LinearLayout>
注意,每个元素有一个或多个属于 Android 名称空间的属性。
Android Software Developer Kit
我们已经大致了解了 Android 平台,现在讨论如何设置 Eclipse 环境来支持 Android 应用程序开发。本节讨论如何获取 Android SDK 并在 Eclipse 环境中配置它。
获取和安装 Eclipse
如果您还没有安装 Eclipse,那么从 Eclipse Foundation 下载并安装 Eclipse IDE 最新的稳定版(参见 参考资料)。安装包是一个压缩的文件夹。把这个文件夹的内容解压到您计算机上的适当位置。安装程序并不在 Windows? 上创建任何图标或快捷方式。对于本教程,Eclipse 文件夹位于 c:\software\eclipse 目录。
双击 eclipse 安装目录中的 eclipse.exe 启动 Eclipse。这会启动 IDE。软件提示您指定一个 “工作空间” 并建议一个默认位置,比如 c:\documents and settings\username\workspace。选择这个位置或者指定另一个工作空间位置。
启动 Eclipse 之后,单击主屏幕上的 Workbench - Go to the workbench 图标。
现在该获取 Android SDK 了。
获取和安装 Android SDK
在 参考资料 中找到 Android 的下载链接。
有针对 Windows、Mac OS X(只有 Intel? 版)和 Linux(i386)的 SDK 安装版。选择适合您平台的最新的 SDK 版本。注意,到编写本教程时,最新的 Android SDK 版本是 m3-rc37a。
Android SDK 是一个压缩的文件夹。下载这个文件夹并把它的内容解压到您计算机上的适当位置。对于本教程,SDK 安装在 c:\software\google\android_m3-rc37a。显然,如果要在 Mac OS X 和 Linux 上安装 SDK,应该安装在通常安装开发工具的位置。
Eclipse 和 Android SDK 都已经安装好了。现在应该安装 Eclipse 插件。
获取并安装 Eclipse 插件
下面介绍安装 Eclipse 插件 Android Developer Tools 的步骤。注意,Android 网站上也提供了安装说明。更多信息请参见 参考资料。
按照以下步骤安装 Android Developer Tools:
在 Eclipse 中运行 “Find and Install” 特性(在 Help > Software Updates 菜单下面)。
选择 Search for new features to install 选项。
选择 New Remote Site。给站点命名,比如 “Android Developer Tools”。在对话框中输入以下 URL:https://dl-ssl.google.com/android/eclipse。注意,这个 URL 使用 HTTPS 协议。这是一个安全的下载。
列表中会增加一个新条目并被默认选中。单击 Finish。搜索结果会显示 Android Developer Tools。选择 Developer Tools 并单击 Next。
阅读并接受许可协议之后,单击 Next。注意,许可协议中对于使用 Google Maps API 有一个特殊的要求。
检查并接受安装位置,然后单击 Finish。
现在下载并安装这个插件。这个插件没有经过数字签名(到编写本教程时),所以只需单击 Install All,然后重新启动 Eclipse。
配置 Eclipse 插件
重新启动 Eclipse 之后,应该把这个插件连接到 SDK 的安装位置。在 Window 菜单中选择 Preferences。单击左边树视图中的 Android。在右边的面板中,指定 SDK 的安装位置。本教程使用的安装位置是 c:\software\google\android\m3-rc37a(同样,在 Mac OS X 和 Linux 系统上也应该使用适当的位置)。
指定 SDK 安装位置之后,可以配置另外三部分设置。下面简要介绍一下:
Build 部分中的选项用来自动地重新构建资源。保持这个选项的设置不变。Build 选项可以改变输出的详细程度。Normal 是默认设置。
DDMS — Dalvik Debug Monitor Service 用来监视正在运行的 VM。这些设置指定调试器用来连接 VM 的 TCP/IP 端口号、各个日志记录级别和选项。默认设置应该是合适的。
LogCat — 这是在底层 Linux 系统上创建的一个日志文件。可以在这个对话框中选择字体。根据需要调整这个选项。
好了!Eclipse 环境已经设置好了,可以开始创建 Android 应用程序了。

温馨提示:为不影响您的学业,来校区前请先电话咨询,方便我校安排相关的专业老师为您解答
  • 详情请进入厦门新博教育
  • 已关注:318
  • 咨询电话:
  • 热门课程
姓名不能为空
手机号格式错误