首页 Android_开发从入门到精通_IBM

Android_开发从入门到精通_IBM

举报
开通vip

Android_开发从入门到精通_IBM 1 Android 开发从入门到精通 Android 开发从入门到精通 Android 是一种基于 Linux® V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话领域,包括智能电话和更廉价 的翻盖手机。但是, Android 全面的计算服务和丰富的功能支持完全有能力扩展到移动电话市场以外。Android 也可以用于其他 的平台和应用程序。本专题提供的教程、技术文章首先带大家了解 Android 开发,进而深入到 Android 开发的各个方面。 ...

Android_开发从入门到精通_IBM
1 Android 开发从入门到精通 Android 开发从入门到精通 Android 是一种基于 Linux® V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话领域,包括智能电话和更廉价 的翻盖手机。但是, Android 全面的计算服务和丰富的功能支持完全有能力扩展到移动电话市场以外。Android 也可以用于其他 的平台和应用程序。本专题提供的教程、技术文章首先带大家了解 Android 开发,进而深入到 Android 开发的各个方面。 Android 开发入门  Android 开发简介 Android 是 Google 提供的移动、无线、计算机和通信平台。通过使用 Android Eclipse 插件,可以在强大的 Eclipse 环境中构建 Android 应用程序。本教程介绍如何用 Eclipse 插件 Android Development Tools 进行 Android 应用 程序开发,包括对 Android 平台和 Android Development Tools 的介绍,并开发两个示例应用程序。  用 Eclipse 开发 Android 应用程序 Android 是一种基于 Linux® V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话领域,包括智能电话 和更廉价的翻盖手机。但是, Android 全面的计算服务和丰富的功能支持完全有能力扩展到移动电话市场以外。Android 也可以用于其他的平台和应用程序。在本文中,阅读对 Android 平台的简介,并学习如何编写基本的 Android 应用程序。 深入 Android 开发  手机上的 Scala Android 操作系统为移动开发提供强大、开放的平台。它利用了 Java 编程语言和 Eclipse 工具平台的威力。现在,还 可以将 Scala 编程语言加入到其中。在本文中,您将看到如何使用 Scala 作为 Android 上的主要开发语言,从而可以 使用一种更具 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 达力、更加类型安全的编程语言编写移动应用程序。  构建 Android 手机 RSS 阅读器 本教程将展示如何使用 Android Developer Tools 读取、解析和显示 XML 数据。构建一个运行在 Android 平台上的 RSS 阅读器,并集成不同的 RSS 或其他 XML 数据源以构建自己的 mash-up 应用。  Android 助力云计算 开源的 Android 操作系统已经席卷全球,它允许您在任何位置运行复杂的云计算应用程序。它 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 用于在电池供电设备(如 T-Mobile G1 智能电话)上高效工作,Android 本质上就是 Linux,Android 编程模型有多个层,允许创建为云计算量 身定做的安全应用程序。使用 Android 达到新的高度并体验前所未有的移动计算吧。  使用 Android 实现联网 Android 是面向应用程序开发的丰富平台,它提供一套出色的用户界面元素和数据管理功能。它还为开发连接到真实世界 的应用程序提供了出色的网络选项。您希望连接到哪里?也许您希望告诉全世界您正在使用 Twitter。或者希望收到有关 在本地洗衣店或熟食店的排号。如果希望将 Android 连接到您所生活的世界,那么请阅读本文。  深入探讨 Android 传感器 Android 是一个面向应用程序开发的富平台,它拥有许多具有吸引力的用户界面元素和数据管理功能。Android 还提供了 一组丰富的接口选项。在本文中,学习如何配合使用 Android 的各种传感器选项监控您的环境。样例代码展示了如何在 Android 电话中录制音频。想构建自己的婴儿监视器吗?想用声音来接听电话或者打开房门吗?请学习如何利用配备有 Android 的设备的硬件功能。 回页首 2 Android 开发简介 Android 开发简介 开源的设备平台 Android 是一种基于 Linux® V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话 领域,包括智能电话和更廉价的翻盖手机。但是, Android 全面的计算服务和丰富的功能支持完全 有能力扩展到移动电话市场以外。Android 也可以用于其他的平台和应用程序。在本文中,阅读对 Android 平台的简介,并学习如何编写基本的 Android 应用程序。 简介 黑莓和 iPhone 都提供了受欢迎的、高容量的移动平台,但是却分别针对两个不同的消费群体。黑莓是企业业务用户的不二选择。 但是,作为一种消费设备,它在易用性和 “新奇特性” 方面难以和 iPhone 抗衡。Android 则是一个年轻的、有待开发的平台,它 有潜力同时涵盖移动电话的两个不同消费群体,甚至可能缩小工作和娱乐之间的差别 如今,很多基于网络或有网络支持的设备都运行某种 Linux 内核。这是一种可靠的平台:可经济有效地进行部署和提供支持,并且 可直接作为面向部署的良好的设计方法。这些设备的 UI 通常是基于 HTML 的,可通过 PC 或 Mac 浏览器查看。但并不是每个 设备都需要通过一个常规的计算设备来控制。想象一下传统的家用电器,例如电炉、微波炉或面包机。如果您的家用电器由 Android 控制,并且有一个彩色触摸屏,会怎么样?如果电炉上有一个 Android UI,那么操控者甚至可以烹饪点什么东西。 在本文中,了解 Android 平台,以及如何将它用于移动和非移动应用程序。安装 Android SDK,并构建一个简单的应用程序。下 载 本文中的示例应用程序的源代码。 Android 简史 Android 平台是 Open Handset Alliance 的成果,Open Handset Alliance 组织由一群共同致力于构建更好的移动电话的公司 组成。这个组织由 Google 领导,包括移动运营商、手持设备制造商、零部件制造商、软件解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 和平台提供商以及市场营销公 司。从软件开发的观点看,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 为基础。 回页首 回页首 3 Android 开发简介 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 内核管理的进程中,如下图所示。 回页首 4 Android 开发简介 Android 应用程序由一个或多个组件组成: 活动 具有可视 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.jar Java 归档文件,其中包含构建应用程序所需的所有的 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 Emulator 回页首 5 Android 开发简介 Android Debug Bridge adb 实用程序支持一些可选命令行参数,以提供强大的特性,例如复制文件到设备或从设备复制文件。可以使用 shell 命令行参数 连接到手机本身,并发送基本的 shell 命令。图 4 显示在通过 USB 线连接到 Windows 笔记本电脑的一个实际设备上运行的 adb shell 命令。 图 4. 使用 adb shell 命令 6 Android 开发简介 在这个 shell 环境中,可以:  显示网络配置,网络配置可显示多个网络连接。注意这多个网络连接: o lo 是本地或 loopback 连接。 o tiwlan0 是 WiFi 连接,该连接由本地 DHCP 服务器提供一个地址。  显示 PATH 环境变量的内容。  执行 su 命令,以成为超级用户。  将目录改为 /data/app,其中存放用户应用程序。  列出包含某个应用程序的目录。Android 应用程序文件实际上是归档文件,可通过 WinZip 之类的软件查看。扩展名为 apk。  发出 ping 命令,查看 Google.com 是否可用。 从相同的命令提示符环境中,还可以与 SQLite 数据库交互,启动程序以及执行许多其他系统级任务。想像一下您正在连接到电话, 因此这是非常了不起的功能。 在下一节,您将创建一个简单的 Android 应用程序。 编写一个基本的应用程序 本节展示如何构建一个 Android 应用程序。示例应用程序非常简单:一个修改后的 “Hello Android” 应用程序。您将进行一个微 小的修改,使屏幕背景全部变为白色,以便把手机用作手电筒。这个例子不是很有创意,但是可以作为一个有用的例子。请 下载 完 整的源代码。 为了在 Eclipse 中创建应用程序,选择 File > New > Android project,这将启动 New Android Project 向导。 回页首 7 Android 开发简介 接下来,创建一个简单的应用程序,该应用程序有一个活动,并且在 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.java package 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); } 8 Android 开发简介 } 该代码是直接来自 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 源文件中定义的常量。任何时候都不要直接编辑这个文件,因为它随着每次构建而改变。 运行该应用程序可以看到一个白色屏幕,其中有黑色文本。 下面显示用于 FlashLight 应用程序的 AndroidManifest.xml 文件。 清单 4. 用于 FlashLight 的 AndroidManifest.xml 9 Android 开发简介 该文件是由用于 Eclipse 的 Android Developer Tools 插件自动创建的。您不需要做任何事情。 当然,这个应用程序并不是很强大。但是如果希望读点书,又不想打扰正在睡觉的爱人,或者如果需要在断电时去地下室查看保险 丝盒,那么这个应用程序还是很方便的。 结束语 在本文中,您阅读了对 Android 的简介,并构建了一个小型的应用程序。希望本文中的例子能激起您进一步探索 Android 平台的 兴趣。Android 有望成为对市场产生深远影响的开源平台,它的用处将远远超越移动电话。 回页首 10 手机上的 Scala 手机上的 Scala 使用 Android、Scala 和 Eclipse 创建移动应用程序 Android 操作系统为移动开发提供强大、开放的平台。它利用了 Java™ 编程语言和 Eclipse 工具 平台的威力。现在,还可以将 Scala 编程语言加入到其中。在本文中,您将看到如何使用 Scala 作 为 Android 上的主要开发语言,从而可以使用一种更具表达力、更加类型安全的编程语言编写移动 应用程序。 先决条件 在本文中,我们将创建一个在 Android 设备上运行的移动应用程序。您将需要安装 Android SDK;本文使用 V1.5 SDK。应用 程序代码将用 Scala 编程语言编写。如果您从来没用过 Scala,那么没有关系,因为本文将解释 Scala 代码。但是,即使您不熟 悉 Scala,建议您至少熟悉 Java 语言。本文使用 Scala V2.7.5 进行开发。对于 Android 和 Scala 都提供了很好的 Eclipse 插 件。本文使用 Eclipse V3.4.2 和 Android Development Tools(ADT) V0.9.1 以及 Scala IDE 插件 V2.7.5。请参阅 参考 资料,获得所有这些工具。 设置 编写 Android 应用程序听起来像是一个复杂的命题。Android 应用程序在它们自己的虚拟机中运行:Dalvik 虚拟机。但是, Android 应用程序的构建路径是开放的。下面表明了我们将使用的基本策略。 图 1. Android 上 Scala 的构建路径 其思想是,我们首先将所有 Scala 代码编译成 Java 类文件。这是 Scala 编译器的工作,所以这方面没什么太复杂的事情。接下 来,获取 Java 类文件,使用 Android dex 编译器将类文件编译成 Android 设备上的 Dalvik VM 使用的格式。这就是所谓的 dexing,也是 Android 应用程序的常规编译路径。通常,要经历从 .java 文件到 .class 文件再到 .dex 文件的过程。在本文, 惟一不同的是我们从 .scala 文件开始。最后,.dex 文件和其他应用程序资源被压缩成一个 APK 文件,该文件可安装到 Android 设备上。 那么,如何让这一切发生?我们将使用 Eclipse 做大部分工作。但是,此外还有一个较复杂的步骤:要让代码运行,还需要来自标 准 Scala 库中的代码。在典型的 Scala 安装中,这是 /lib/scala-library.jar 中一个单独的 JAR。但是,这个 JAR 包括一些不 受 Android 支持的代码。有些代码需要稍作调整,有些代码则必须移除。scala-library.jar 的定制构建是运行得最好的,至少目 前是这样。请参阅 参考资料,了解这里使用的定制构建。我们将把这个 JAR 称作 Android 库 JAR。 有了这个 JAR,剩下的事情就很容易了。只需使用 Eclipse 的 ADT 插件创建一个 Android 项目。然后将一个 Scala 特性 (nature)添加到项目中。用前面谈到的 Android 库替代 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的 Scala 库。最后,将输出目录添加到类路径中。现在,可以开始 了。主 Scala 站点对此有更详细的描述(请参阅 参考资料)。现在,我们有了基本的设置,接下来看看我们将使用 Scala 创建的 Android 应用程序。 UnitsConverter 现在,我们知道如何利用 Scala 代码,将它转换成将在 Android 设备上运行的二进制格式,接下来可以使用 Scala 创建一个移 回页首 回页首 11 手机上的 Scala 动应用程序。我们将创建的应用程序是一个简单的单位转换应用程序。通过这个应用程序可以方便地在英制单位与公制单位之间来 回转换。这是一个非常简单的应用程序,但是我们将看到,即使是最简单的应用程序也可以从使用 Scala 中获益。我们首先看看 UnitsConverter 的布局元素。 创建布局 您也许对编写手机上运行的 Scala 感到兴奋,但是并非所有的移动开发编程都应该用 Scala 或 Java 语言完成。Android SDK 提 供了一种很好的方式,使用基于 XML 的布局系统将用户界面代码与应用程序逻辑分离。我们来看看本文中的应用程序的主要布局 文件,如清单 1 所示。 清单 1. Converter 应用程序的主要布局
本文档为【Android_开发从入门到精通_IBM】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_620647
暂无简介~
格式:pdf
大小:954KB
软件:PDF阅读器
页数:32
分类:互联网
上传时间:2011-09-01
浏览量:8