用 Eclipse 开发 Android 应用程序.docx

上传人:b****6 文档编号:7880097 上传时间:2023-05-12 格式:DOCX 页数:29 大小:500.19KB
下载 相关 举报
用 Eclipse 开发 Android 应用程序.docx_第1页
第1页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第2页
第2页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第3页
第3页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第4页
第4页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第5页
第5页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第6页
第6页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第7页
第7页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第8页
第8页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第9页
第9页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第10页
第10页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第11页
第11页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第12页
第12页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第13页
第13页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第14页
第14页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第15页
第15页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第16页
第16页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第17页
第17页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第18页
第18页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第19页
第19页 / 共29页
用 Eclipse 开发 Android 应用程序.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

用 Eclipse 开发 Android 应用程序.docx

《用 Eclipse 开发 Android 应用程序.docx》由会员分享,可在线阅读,更多相关《用 Eclipse 开发 Android 应用程序.docx(29页珍藏版)》请在冰点文库上搜索。

用 Eclipse 开发 Android 应用程序.docx

用Eclipse开发Android应用程序

开始之前

本教程介绍如何在Eclipse环境中进行Android应用程序开发,包括两个示例应用程序。

第一个示例是一个基本的应用程序,涉及构建和调试的所有阶段。

第二个应用程序示例涉及比较复杂的Android特性,包括联系人搜索和GoogleMaps地址查找。

要想从本教程获得最大收益,具备移动开发经验会有帮助,但不是必需的。

开发Android应用程序需要Java™编程技能,但是对于本教程不是必需的。

关于本教程

我们为什么要关注Android?

有两个原因使Android成为重要的平台。

首先,Google引入了Android,它在很短时间内就获得了市场的关注。

Google正在进军移动市场。

它在这个市场上采取的第一个行动就是发布Android和OpenHandsetAlliance,这是一个令人印象深刻的起点。

第二,Android不仅仅是另一种包含电话、菜单和触摸屏功能的移动平台。

您将在本教程中了解到,Android提供了一种不同的应用程序开发方法。

由于可以对请求的操作和代码进行运行时绑定,Android的体系结构支持高度可定制的软件环境。

无论是考虑市场因素还是Android的技术方面,它都是一个值得研究的平台。

本教程分为以下几节:

∙Android基础知识和必需的工具

∙AndroidSoftwareDeveloperKit

∙构建和调试SaySomethingAndroid应用程序

∙创建内容提供器和GoogleMaps应用程序

系统需求

本教程需要结合使用几种技术。

Eclipse平台

Eclipse是一个运行插件的平台。

您应该安装EclipseClassic的最新版本(本教程使用V3.3.1)。

AndroidDeveloperTools

按照安装AndroidSDK中的说明安装AndroidDeveloperTools(Eclipse插件)。

源代码

本教程中的源代码片段包括:

∙AndroidManifest.xml(片段)—这个文件是Android应用程序的应用程序部署描述符。

∙IntentReceiver—演示IntentReceiver的实现,这个类处理AndroidManifest.xml文件中IntentFilter标记所公布的intent。

∙SaySomething.java—实现一个Android活动,这是本教程的示例应用程序的主要入口点。

∙Main.xml—这个文件包含Android活动所用的视觉元素或资源。

∙R.java—这个文件是由AndroidDeveloperTools自动生成的,它把视觉资源“连接”到Java源代码。

∙AndroidManifest.xml(完整)—这是完整的AndroidManfest.xml文件,包含每个重要元素的描述。

∙MobileServiceCallContacts.java—这个文件包含的代码显示联系人并对用户输入做出反应,执行GoogleMaps地址查找。

Android简介

在讨论Eclipse插件和开发Android应用程序之前,我们先看看Android的体系结构和一些重要的术语,这会对本教程后面的讨论和您自己构建Android应用程序有帮助。

Android术语

在Eclipse环境中开发Android应用程序需要了解Eclipse环境和Android平台的知识。

了解以下术语会有助于用Eclipse插件开发Android应用程序。

OpenHandsetAlliance

这是一个由Google公司主导的组织,它由许多公共和私人组织组成。

Android

这是OpenHandsetAlliance的主打产品。

它是一种针对移动设备的开放源码操作环境。

模拟器

模拟另一个系统的软件工具—这常常是在个人计算机(IBM®、Mac、Linux®)上运行的一个环境,它模拟另一个环境,比如移动计算设备。

Linux

一种开放源码的操作系统内核,许多计算平台都使用这种操作系统,包括服务器、桌面计算机、网络设备和移动计算设备。

Android在Linux内核上运行。

DalvikVirtualMachine

DalvikVM是Android产品组合中的一种操作环境,它在运行时解释应用程序代码。

DalvikVM与JavaVM相似,但是两者不兼容。

Android基础知识和必需的工具

Android是一种针对移动平台的开放源码操作系统。

到编写本教程时,它是一种纯软件的平台,没有可用的硬件设备。

Android平台被称为一个产品组合,因为它是一系列组件的集合,包括:

∙基于Linux内核的操作系统

∙Java编程环境

∙工具集,包括编译器、资源编译器、调试器和模拟器

∙用来运行应用程序的DalvikVM

简要介绍了Android平台的体系结构之后,我们来从市场的角度看看这个平台的一些重要特性。

 

Android为什么很重要?

自从Android和最初的SDK发布以来,计算机技术新闻界一直非常关注Android。

Android之所以重要主要有两个原因。

Android是Google进军移动市场的主要行动。

移动应用程序领域竞争激烈,新的竞争者很难涉足。

Google拥有大量资源和强大的品牌实力,有能力涉足任何市场。

Google进军移动市场已经好几年了。

Android原来属于另一家公司,Google通过收购这家公司大大提高了在移动市场上的竞争力。

Google的任何行动都会受到关注,而且引入新平台也很引人注目。

Android同时具备这两个因素。

第二个原因是Android的应用程序模型与众不同。

Android应用程序并不是需要大量单击操作的纯粹的菜单式应用程序。

Android应用程序中确实有菜单和按钮,但是Android在体系结构中引入了一种新颖的设计元素intent。

 

intent

intent是一种构造,应用程序可以通过它发出请求,这就像是发出求助信号。

intent可能像下面这样:

"Wanted:

Anapplicationtohelpmelookupacontact"或"Wanted:

Anapplicationtohelpmedisplaythisimage"或"Wanted:

Anapplicationtoperformthisgeographic-basedsearch"

应用程序可以按照相似或互补的方式进行注册,表明它们有能力或有兴趣执行各种请求或intent。

比如:

"Available:

Applicationreadyandwillingtopresentcontactrecordsinclear,concisemanner"或"Available:

Applicationreadyandwillingtoperformageographicsearch"

这些是IntentFilter的示例,下面将要讨论。

 

IntentFilter

应用程序通过一个称为IntentFilter的构造声明它们能够执行某些类型的操作。

IntentFilter可以在运行时进行注册,也可以在AndroidManifest.xml文件中设置。

下面的代码片段取自一个对SMS(文本)消息进行响应的Android应用程序:

清单1.对SMS进行响应的Android应用程序

 

value="android.provider.Telephony.SMS_RECEIVED"/>

 

简要介绍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.接收器代码

packagecom.msi.samplereceiver;

importandroid.content.Context;

importandroid.content.Intent;

importandroid.content.IntentReceiver;

publicclassmyreceiverextendsIntentReceiver

{

publicvoidonReceiveIntent(Contextarg0,Intentarg1)

{

//dosomethingwhenthismethodisinvoked.

}

}

用ContentProvider进行数据管理

ContentProvider是Android的数据存储抽象机制。

我们以移动设备上常见的一种数据为例:

地址簿或联系人数据库。

地址簿包含所有联系人及其电话号码,用户在使用手机时可能需要使用这些数据。

ContentProvider对数据存储的访问方法进行抽象。

ContentProvider在许多方面起到数据库服务器的作用。

对数据存储中数据的读写操作应该通过适当的ContentProvider传递,而不是直接访问文件或数据库。

可能还有ContentProvider的“客户机”和“实现”。

下一节介绍Android视图,这是Android在移动设备屏幕上显示UI元素的机制。

 

视图

Android活动通过视图显示UI元素。

视图采用以下布局设计之一:

LinearVertical

后续的每个元素都排在前一个元素下面,形成一个单一列。

LinearHorizontal

后续的每个元素都排在前一个元素右边,形成一个单一行。

Relative

后续的每个元素相对于前一个元素有一定的偏移量。

Table

与HTML表相似的一系列行和列。

每个单元格可以包含一个视图元素。

选择一种布局(或布局的组合)之后,就可以用各个视图显示UI。

视图元素由大家熟悉的UI元素组成,包括:

∙Button

∙ImageButton

∙EditText

∙TextView(与标签相似)

∙CheckBox

∙RadioButton

∙Gallery和ImageSwitcher(用来显示多个图像)

∙List

∙Grid

∙DatePicker

∙TimePicker

∙Spinner(与组合框相似)

∙AutoComplete(具有文本自动补全特性的EditText)

视图是在一个XML文件中定义的。

清单3给出一个简单的LinearVertical布局示例。

清单3.简单的LinearVertical布局

xmlversion="1.0"encoding="utf-8"?

>

android="

android:

orientation="vertical"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent"

>

android:

layout_width="fill_parent"

android:

layout_height="wrap_content"

android:

text="Activity1!

"

/>

android:

layout_width="fill_parent"

android:

layout_height="wrap_content"

android:

text="Activity1,secondtextview!

"

/>

android:

layout_width="wrap_content"

android:

layout_height="wrap_content"

android:

text="SwitchToActivity2"

id="@+id/switchto2"

/>

注意,每个元素有一个或多个属于Android名称空间的属性。

下一节讨论如何获取AndroidSDK并在Eclipse环境中配置它。

 

AndroidSoftwareDeveloperKit

我们已经大致了解了Android平台,现在讨论如何设置Eclipse环境来支持Android应用程序开发。

本节讨论如何获取AndroidSDK并在Eclipse环境中配置它。

获取和安装Eclipse

如果您还没有安装Eclipse,那么从EclipseFoundation下载并安装EclipseIDE最新的稳定版(参见参考资料)。

安装包是一个压缩的文件夹。

把这个文件夹的内容解压到您计算机上的适当位置。

安装程序并不在Windows®上创建任何图标或快捷方式。

对于本教程,Eclipse文件夹位于c:

/software/eclipse目录。

双击eclipse安装目录中的eclipse.exe启动Eclipse。

这会启动IDE。

软件提示您指定一个“工作空间”并建议一个默认位置,比如c:

/documentsandsettings/username/workspace。

选择这个位置或者指定另一个工作空间位置。

启动Eclipse之后,单击主屏幕上的Workbench-Gototheworkbench图标。

现在该获取AndroidSDK了。

 

获取和安装AndroidSDK

在参考资料中找到Android的下载链接。

有针对Windows、MacOSX(只有Intel®版)和Linux(i386)的SDK安装版。

选择适合您平台的最新的SDK版本。

注意,到编写本教程时,最新的AndroidSDK版本是m3-rc37a。

AndroidSDK是一个压缩的文件夹。

下载这个文件夹并把它的内容解压到您计算机上的适当位置。

对于本教程,SDK安装在c:

/software/google/android_m3-rc37a。

显然,如果要在MacOSX和Linux上安装SDK,应该安装在通常安装开发工具的位置。

Eclipse和AndroidSDK都已经安装好了。

现在应该安装Eclipse插件。

 

获取并安装Eclipse插件

下面介绍安装Eclipse插件AndroidDeveloperTools的步骤。

注意,Android网站上也提供了安装说明。

更多信息请参见参考资料。

按照以下步骤安装AndroidDeveloperTools:

1.在Eclipse中运行“FindandInstall”特性(在Help>SoftwareUpdates菜单下面)。

2.选择Searchfornewfeaturestoinstall选项。

3.选择NewRemoteSite。

给站点命名,比如“AndroidDeveloperTools”。

在对话框中输入以下URL:

https:

//dl-URL使用HTTPS协议。

这是一个安全的下载。

图1.NewUpdateSite

4.列表中会增加一个新条目并被默认选中。

单击Finish。

搜索结果会显示AndroidDeveloperTools。

选择DeveloperTools并单击Next。

5.阅读并接受许可协议之后,单击Next。

注意,许可协议中对于使用GoogleMapsAPI有一个特殊的要求。

6.检查并接受安装位置,然后单击Finish。

现在下载并安装这个插件。

这个插件没有经过数字签名(到编写本教程时),所以只需单击InstallAll,然后重新启动Eclipse。

 

配置Eclipse插件

重新启动Eclipse之后,应该把这个插件连接到SDK的安装位置。

在Window菜单中选择Preferences。

单击左边树视图中的Android。

在右边的面板中,指定SDK的安装位置。

本教程使用的安装位置是c:

/software/google/android/m3-rc37a(同样,在MacOSX和Linux系统上也应该使用适当的位置)。

指定SDK安装位置之后,可以配置另外三部分设置。

下面简要介绍一下:

∙Build部分中的选项用来自动地重新构建资源。

保持这个选项的设置不变。

Build选项可以改变输出的详细程度。

Normal是默认设置。

∙DDMS—DalvikDebugMonitorService用来监视正在运行的VM。

这些设置指定调试器用来连接VM的TCP/IP端口号、各个日志记录级别和选项。

默认设置应该是合适的。

∙LogCat—这是在底层Linux系统上创建的一个日志文件。

可以在这个对话框中选择字体。

根据需要调整这个选项。

好了!

Eclipse环境已经设置好了,可以开始创建Android应用程序了。

 

构建SaySomethingAndroid应用程序

本节要使用AndroidDeveloperTools创建一个基本的Android应用程序,它称为SaySomething。

创建这个应用程序之后,将调试和运行它。

Newproject向导

第一步是创建一个新项目。

选择用来创建Android项目的向导,如下所示。

图2.Newproject向导

这个应用程序需要:

∙Name

∙Location

∙Packagename

∙Activityname—可以认为这是应用程序的主“表单”或屏幕

∙Applicationname

看看这个新项目。

图3.新的Android项目

这会创建一个默认的应用程序,可以构建和运行它。

可以在PackageExplorer中查看它的组件。

 

PackageExplorer

PackageExplorer(在Eclipse的Java透视图中)显示Android示例应用程序的所有组件,见图4。

图4.PackageExplorer

需要注意的组件包括:

src文件夹

包含示例应用程序的包,即com.msi.ibmtutorial。

R.java

AndroidDeveloperTools自动创建这个文件,它提供访问Android应用程序的各种资源所需的常量。

后面会详细讨论R类与资源之间的关系。

SaySomething.java

应用程序的主活动类的实现。

Referencedlibraries

包含android.jar,这是AndroidSDK中的Android运行时类的jar文件。

res文件夹

包含应用程序的资源,包括:

∙图标

∙布局文件

∙字符串

AndriodManifest.xml

示例应用程序的部署描述符。

接下来,详细研究一下源代码。

 

应用程序的主活动

这个示例应用程序由一个活动组成,即SaySomething。

正如前面提到的,SaySomething类是在SaySomething.java文件中实现的。

清单4.SaySomething.java

packagecom.msi.ibmtutorial;

importandroid.app.Activity;

importandroid.os.Bundle;

publicclassSaySomethingextendsActivity

{

/**Calledwhentheactivityisfirstcreated.*/

@Override

publicvoidonCreate(Bundleicicle)

{

super.onCreate(icicle);

setContentView(R.layout.main);

}

}

在这个源代码片段中,要注意几点:

∙SaySomething是一个普通的Java类,包含包和导入语句。

∙SaySomething扩展android.app包中的Android基类Activity。

∙onCreate()方法是这个活动的入口点,它接受一个Bundle类型的参数。

Bundle类本质上是map或hashmap的包装器。

在这个参数中传递构造活动所需的元素。

本教程不讨论这个参数。

∙setContentView(..)负责用R.la

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2