如何使用eclipse开发android.docx_第1页
如何使用eclipse开发android.docx_第2页
如何使用eclipse开发android.docx_第3页
如何使用eclipse开发android.docx_第4页
如何使用eclipse开发android.docx_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文示例代码下载地址:/developerworks/cn/education/opensource/os-eclipse-android/downloads.html简介黑莓和 iPhone 都提供了受欢迎的、高容量的移动平台,但是却分别针对两个不同的消费群体。黑莓是企业业务用户的不二选择。但是,作为一种消费设备,它在易用性和 “新奇特性” 方面难以和 iPhone 抗衡。Android 则是一个年轻的、有待开发的平台,它有潜力同时涵盖移动电话的两个不同消费群体,甚至可能缩小工作和娱乐之间的差别如今,很多基于网络或有网络支持的设备都运行某种 Linux 内核。这是一种可靠的平台:可经济有效地进行部署和提供支持,并且可直接作为面向部署的良好的设计方法。这些设备的 UI 通常是基于 HTML 的,可通过 PC 或 Mac 浏览器查看。但并不是每个设备都需要通过一个常规的计算设备来控制。想象一下传统的家用电器,例如电炉、微波炉或面包机。如果您的家用电器由 Android 控制,并且有一个彩色触摸屏,会怎么样?如果电炉上有一个 Android UI,那么操控者甚至可以烹饪点什么东西。在本文中,了解 Android 平台,以及如何将它用于移动和非移动应用程序。安装 Android SDK,并构建一个简单的应用程序。下载本文中的示例应用程序的源代码。回页首Android 简史Android 平台是Open Handset Alliance的成果,Open Handset Alliance 组织由一群共同致力于构建更好的移动电话的公司组成。这个组织由 Google 领导,包括移动运营商、手持设备制造商、零部件制造商、软件解决方案和平台提供商以及市场营销公司。从软件开发的观点看,Android 正处在开源领域的中心位置。市场上第一款支持 Android 的手机是由 HTC 制造并由 T-Mobile 供应的 G1。这款设备从设想到推出花了大约一年的时间,惟一可用的软件开发工具是一些实行增量改进的 SDK 发行版。随着 G1 发行日的临近,Android 团队发布了 SDK V1.0,用于这个新平台的应用程序也浮出水面。为了鼓励创新,Google 举办了两届 “Android Developer Challenges”,为优胜的参赛作品提供数百万美金的奖励。G1 问世几个月之后,随后就发布了 Android Market,它使用户可以浏览应用程序,并且可以将应用程序直接下载到他们的手机上。经过大约 18 个月,一个新的移动平台进入公众领域。回页首Android 平台Android 有丰富的功能,因此很容易与桌面操作系统混淆。Android 是一个分层的环境,构建在 Linux 内核的基础上,它包括丰富的功能。UI 子系统包括: 窗口 视图 用于显示一些常见组件(例如编辑框、列表和下拉列表)的小部件Android 包括一个构建在 WebKit 基础上的可嵌入浏览器,iPhone 的 Mobile Safari 浏览器同样也是以 WebKit 为基础。Android 提供多种连接选项,包括 WiFi、蓝牙和通过蜂窝(cellular)连接的无线数据传输(例如 GPRS、EDGE 和 3G)。Android 应用程序中一项流行的技术是链接到 Google 地图,以便在应用程序中显示地址。Android 软件栈还提供对基于位置的服务(例如 GPS)和加速计的支持,不过并不是所有的 Android 设备都配备了必需的硬件。另外还有摄像支持。过去,移动应用程序努力向桌面应用程序看齐的两个领域分别是图形/媒体和数据存储方法。Android 通过提供对 2D 和 3D 图形的内置支持,包括 OpenGL 库,解决了图形方面的挑战。由于 Android 平台包括流行的开源 SQLite 数据库,因此缓解了数据存储的负担。图 1 显示一个简化的 Android 软件层次结构。图 1. Android 软件层次结构回页首应用程序架构如前所述,Android 运行在 Linux 内核上。Android 应用程序是用 Java 编程语言编写的,它们在一个虚拟机(VM)中运行。需要注意的是,这个 VM 并非您想象中的 JVM,而是 Dalvik Virtual Machine,这是一种开源技术。每个 Android 应用程序都在 Dalvik VM 的一个实例中运行,这个实例驻留在一个由 Linux 内核管理的进程中,如下图所示。图 2. Dalvik VMAndroid 应用程序由一个或多个组件组成:活动具有可视 UI 的应用程序是用活动实现的。当用户从主屏幕或应用程序启动器选择一个应用程序时,就会开始一个动作。服务服务应该用于任何需要持续较长时间的应用程序,例如网络监视器或更新检查应用程序。内容提供程序可以将内容提供程序看作数据库服务器。内容提供程序的任务是管理对持久数据的访问,例如 SQLite 数据库。如果应用程序非常简单,那么可能不需要创建内容提供程序。如果要构建一个较大的应用程序,或者构建需要为多个活动或应用程序提供数据的应用程序,那么可以使用内容提供程序实现数据访问。广播接收器Android 应用程序可用于处理一个数据元素,或者对一个事件(例如接收文本消息)做出响应。Android 应用程序是连同一个 AndroidManifest.xml 文件一起部署到设备的。AndroidManifest.xml 包含必要的配置信息,以便将它适当地安装到设备。它包括必需的类名和应用程序能够处理的事件类型,以及运行应用程序所需的许可。例如,如果应用程序需要访问网络 例如为了下载一个文件 那么 manifest 文件中必须显式地列出该许可。很多应用程序可能启用了这个特定的许可。这种声明式安全性有助于减少恶意应用程序损害设备的可能性。下一节讨论构建 Android 应用程序所需的开发环境。回页首所需的工具开始开发 Android 应用程序的最简捷的方式是下载 Android SDK 和 Eclipse IDE(参见参考资料)。Android 开发可以在 Microsoft Windows、Mac OS X 或 Linux 上进行。本文假设您使用的是 Eclipse IDE 和用于 Eclipse 的 Android Developer Tools 插件。Android 应用程序是用 Java 语言编写的,但是是在 Dalvik VM(非 Java 虚拟机)中编译和执行的。在 Eclipse 中用 Java 语言编程非常简单;Eclipse 提供一个丰富的 Java 环境,包括上下文敏感帮助和代码提示。Java 代码通过编译后,Android Developer Tools 可确保适当地将它打包,包括 AndroidManifest.xml 文件。虽然没有 Eclipse 和 Android Developer Tools 插件也可以开发 Android 应用程序,但是那样就需要熟悉 Android SDK。Android SDK 是作为一个 ZIP 文件发布的,可以将该文件解压到硬盘上的一个目录中。由于有多个 SDK 更新,建议有意识地组织开发环境,以便在不同的 SDK 安装之间轻松地切换。SDK 包括:android.jarJava 归档文件,其中包含构建应用程序所需的所有的 Android SDK 类。documention.html 和 docs 目录本地和网上提供的 SDK 文档。这些文档的主要形式为 JavaDocs,以便于在 SDK 中导航大量的包。文档还包括一个高级开发指南和 Android 社区的链接。Samples 目录samples 子目录包含各种应用程序的源代码,包括 ApiDemo,该应用程序演示了很多 API。这个示例应用程序可以作为 Android 应用程序开发的良好起点。Tools 目录包含所有用于构建 Android 应用程序的命令行工具。最常用、最有用的工具是adb实用程序(Android Debug Bridge)。usb_driver该目录包含将开发环境连接到支持 Android 的设备(例如 G1 或 Android Dev 1 解锁开发手机)所需的驱动程序。只有 Windows 平台的开发人员才需要这些文件。Android 应用程序可以在实际的设备上运行,也可以在 Android SDK 附带的 Android Emulator 上运行。图 3 显示 Android Emulator 的主屏幕。图 3. Android EmulatorAndroid Debug Bridgeadb实用程序支持一些可选命令行参数,以提供强大的特性,例如复制文件到设备或从设备复制文件。可以使用 shell 命令行参数连接到手机本身,并发送基本的 shell 命令。图 4 显示在通过 USB 线连接到 Windows 笔记本电脑的一个实际设备上运行的adbshell 命令。图 4. 使用adbshell 命令在这个 shell 环境中,可以: 显示网络配置,网络配置可显示多个网络连接。注意这多个网络连接:o lo是本地或 loopback 连接。o tiwlan0是 WiFi 连接,该连接由本地 DHCP 服务器提供一个地址。 显示PATH环境变量的内容。 执行su命令,以成为超级用户。 将目录改为 /data/app,其中存放用户应用程序。 列出包含某个应用程序的目录。Android 应用程序文件实际上是归档文件,可通过 WinZip 之类的软件查看。扩展名为 apk。 发出 ping 命令,查看 G 是否可用。从相同的命令提示符环境中,还可以与 SQLite 数据库交互,启动程序以及执行许多其他系统级任务。想像一下您正在连接到电话,因此这是非常了不起的功能。在下一节,您将创建一个简单的 Android 应用程序。回页首编写一个基本的应用程序本节展示如何构建一个 Android 应用程序。示例应用程序非常简单:一个修改后的 “Hello Android” 应用程序。您将进行一个微小的修改,使屏幕背景全部变为白色,以便把手机用作手电筒。这个例子不是很有创意,但是可以作为一个有用的例子。请下载完整的源代码。为了在 Eclipse 中创建应用程序,选择File New Android project,这将启动 New Android Project 向导。图 5. New Android project 向导接下来,创建一个简单的应用程序,该应用程序有一个活动,并且在 main.xml 中有一个 UI 布局。布局包含一个文本元素,您将修改这个文本元素,以显示 Android FlashLight。下面的清单显示了这个简单的布局。清单 1. Flashlight 布局在 strings.xml 中创建两个颜色资源。清单 2. strings.xml 中的颜色 Android FlashLight FlashLight #FFFFFF #000000主屏幕布局有一个定义为all_white的背景色。在 strings.xml 文件中,可以看到all_white被定义为一个值为 #FFFFFF 的 RGB 三元组,即纯白。布局包含一个TextView,这实际上是一块静态文本。它是不可编辑的。文本被设为黑色,并通过gravity属性设为水平居中。该应用程序有一个名为 FlashLight.java 的 Java 源文件,如以下清单所示。清单 3. Flashlight.javapackage com.msi.flashlight;import android.app.Activity;import android.os.Bundle;public class FlashLight extends Activity /* Called when the activity is first created. */ public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); 该代码是直接来自 New Project 向导的模板代码: 它是 Java 包 com.msi.flashlight 的一部分。 它有两个 import:o 一个用于 activity 类o 一个用于 bundle 类 当该活动发起后,onCreate方法被调用,传入一个savedInstanceState。对于我们来说,不必关心这个 bundle。只有在暂停然后恢复活动时才会用到。 onCreate方法覆盖了同名的 activity 类方法。它调用超类的onCreate方法。 对setContentView()的调用将关联 main.xml 文件中定义的 UI 布局。main.xml 和 strings.xml 中的任何内容都自动映射到 R.java 源文件中定义的常量。任何时候都不要直接编辑这个文件,因为它随着每次构建而改变。运行该应用程序可以看到一个白色屏幕,其中有黑色文本。图 6. flashlight 的白色屏幕下面显示用于 FlashLight 应用程序的 AndroidManifest.xml 文件。清单 4. 用于 FlashLight 的 AndroidManifest.xml 该文件是由用于 Eclipse 的 Android Developer Tools 插件自动创建的。您不需要做任何事情。当然,这个应用程序并不是很强大。但是如果希望读点书,又不想打扰正在睡觉的爱人,或者如果需要在断电时去地下室查看保险丝盒,那么这个应用程序还是很方便的。回页首结束语在本文中,您阅读了对 Android 的简介,并构建了一个小型的应用程序。希望本文中的例子能激起您进一步探索 Android 平台的兴趣。Android 有望成为对市场产生深远影响的开源平台,它的用处将远远超越移动电话。开始之前本教程介绍如何在 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 地址查找。Android 简介在讨论 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 MachineDalvik 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。回页首intentintent 是一种构造,应用程序可以通过它发出请求,这就像是发出求助信号。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 应用程序 简要介绍 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布局 注意,每个元素有一个或多个属于 Android 名称空间的属性。下一节讨论如何获取 Android SDK 并在 Eclipse 环境中配置它。Android Software Developer Kit我们已经大致了解了 Android 平台,现在讨论如何设置 Eclipse 环境来支持 Android 应用程序开发。本节讨论如何获取 Android SDK 并在 Eclipse 环境中配置它。获取和安装 Eclipse如果您还没有安装 Eclipse,那么从 Eclipse Foundation 下载并安装 Eclipse IDE 最新的稳定版(参见参考资料)。安装包是一个压缩的文件夹。把这个文件夹的内容解压到您计算机上的适当位置。安装程序并不在 Windows 上创建任何图标或快捷方式。对于本教程,Eclipse 文件夹位于 c:softwareeclipse 目录。双击 eclipse 安装目录中的 eclipse.exe 启动 Eclipse。这会启动 IDE。软件提示您指定一个 “工作空间” 并建议一个默认位置,比如 c:documents and settingsusernameworkspace。选择这个位置或者指定另一个工作空间位置。启动 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:softwaregoogleandroid_m3-rc37a。显然,如果要在 Mac OS X 和 Linux 上安装 SDK,应该安装在通常安装开发工具的位置。Eclipse 和 Android SDK 都已经安装好了。现在应该安装 Eclipse 插件。回页首获取并安装 Eclipse 插件下面介绍安装 Eclipse 插件 Android Developer Tools 的步骤。注意,Android 网站上也提供了安装说明。更多信息请参见参考资料。按照以下步骤安装 Android Developer Tools:1. 在 Eclipse 中运行 “Find and Install” 特性(在Help Software Updates菜单下面)。2. 选择Search for new features to install选项。3. 选择New Remote Site。给站点命名,比如 “Android Developer Tools”。在对话框中输入以下 URL:/android/eclipse。注意,这个 URL 使用 HTTPS 协议。这是一个安全的下载。图 1. New Update Site4. 列表中会增加一个新条目并被默认选中。单击Finish。搜索结果会显示 Android Developer Tools。选择Developer Tools并单击Next。5. 阅读并接受许可协议之后,单击Next。注意,许可协议中对于使用 Google Maps API 有一个特殊的要求。6. 检查并接受安装位置,然后单击Finish。现在下载并安装这个插件。这个插件没有经过数字签名(到编写本教程时),所以只需单击Install All,然后重新启动 Eclipse。回页首配置 Eclipse 插件重新启动 Eclipse 之后,应该把这个插件连接到 SDK 的安装位置。在 Window 菜单中选择Preferences。单击左边树视图中的Android。在右边的面板中,指定 SDK 的安装位置。本教程使用的安装位置是 c:softwaregoogleandroidm3-rc37a(同样,在 Mac OS X 和 Linux 系统上也应该使用适当的位置)。指定 SDK 安装位置之后,可以配置另外三部分设置。下面简要介绍一下: Build 部分中的选项用来自动地重新构建资源。保持这个选项的设置不变。Build 选项可以改变输出的详细程度。Normal 是默认设置。 DDMS Dalvik Debug Monitor Service 用来监视正在运行的 VM。这些设置指定调试器用来连接 VM 的 TCP/IP 端口号、各个日志记录级别和选项。默认设置应该是合适的。 LogCat 这是在底层 Linux 系统上创建的一个日志文件。可以在这个对话框中选择字体。根据需要调整这个选项。好了!Eclipse 环境已经设置好了,可以开始创建 Android 应用程序了。构建 SaySomething Android 应用程序本节要使用 Android Developer Tools 创建一个基本的 Android 应用程序,它称为 SaySomething。创建这个应用程序之后,将调试和运行它。New project 向导第一步是创建一个新项目。选择用来创建 Android 项目的向导,如下所示。图 2. New project 向导这个应用程序需要: Name Location Package name Activity name 可以认为这是应用程序的主 “表单” 或屏幕 Application name看看这个新项目。图 3. 新的 Android 项目这会创建一个默认的应用程序,可以构建和运行它。可以在 Package Explorer 中查看它的组件。回页首Package ExplorerPackage Explorer(在 Eclipse 的 Java 透视图中)显示 Android 示例应用程序的所有组件,见图 4。图 4. Package Explorer需要注意的组件包括:src 文件夹包含示例应用程序的包,即com.msi.ibmtutorial。R.javaAndroid Developer Tools 自动创建这个文件,它提供访问 Android 应用程序的各种资源所需的常量。后面会详细讨论 R 类与资源之间的关系。SaySomething.java应用程序的主活动类的实现。Referenced libraries包含 android.jar,这是 Android SDK 中的 Android 运行时类的 jar 文件。res 文件夹包含应用程序的资源,包括: 图标 布局文件 字符串AndriodManifest.xml示例应用程序的部署描述符。接下来,详细研究一下源代码。回页首应用程序的主活动这个示例应用程序由一个活动组成,即SaySomething。正如前面提到的,SaySomething类是在 SaySomething.java 文件中实现的。清单 4. SaySomething.java package com.msi.ibmtutorial;import android.app.Activity;import android.os.Bundle;public class SaySomething extends Activity /* Called when the activity is first created. */ Override public void onCreate(Bundle icicle) super.onCreate(icicle); setContentView(R.layout.main); 在这个源代码片段中,要注意几点: SaySomething是一个普通的 Java 类,包含包和导入语句。 SaySomething扩展 android.app 包中的 Android 基类Activity。 onCreate()方法是这个活动的入口点,它接受一个Bundle类型的参数。Bundle类本质上是 map 或 hashmap 的包装器。在这个参数中传递构造活动所需的元素。本教程不讨论这个参数。 setContentView(.)负责用 R.layout.m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论