Google 免费提供的 Android 软件开发工具包 (SDK) 是开发基于 Android 的智能设备应用程序的绝佳起点。SDK 包含各种对开发人员有用的材料,包括大量文档、教程、示例、最佳实践指南以及用于多种开发目的的一系列工具。
SDK 的 Java API 集使应用程序开发人员能够访问基于 Android 的设备支持的本机功能,例如 2D 和 3D 图形、多媒体编解码器、电话功能和定位服务。SDK 中的设备模拟器允许开发人员直接从开发环境中试用他们的代码,而无需物理设备。SDK 有一个 Eclipse 插件,可在丰富的集成开发环境 (IDE) 中公开 Android API 和 SDK 工具。
打开合作之门
对于 Android 代码的个人开发人员来说,SDK 很有价值,而且随着它一直在扩展新功能,它变得越来越重要。但是,它缺少促进开发团队创建应用程序时所需的协作和协调的功能。
通过将来自 Google 的特定设备、本机平台 SDK 与兼容的商业开发解决方案集成,敏捷团队可以实现巨大的效率和更好的结果。将原生 Android SDK 与商业开发环境集成,为 Android 应用程序的无缝源代码控制、迭代应用程序规划、轻松的工作项管理以及大量企业级开发功能打开了大门。
例如,许多 Android 应用程序被构造为混合 Web 应用程序,其中部分应用程序在网络上的应用程序服务器上运行,将数据从企业存储系统(可能是大型计算机)传送到设备。混合应用程序的另一部分在设备本身上运行,显示它通过网络接收的数据并根据设备外形对其进行格式化,同时访问设备的服务,如 GPS、相机和加速度计,以提供丰富且性能良好的用户经验。
这种混合应用程序通常由一个小团队创建,该团队包括几个基本业务逻辑和 Web 应用程序组件的开发人员、几个用户界面 (UI) 开发人员、一个用户体验设计师、几个测试人员和一个团队负责人或经理。 让我们考虑一下这个团队如何在允许每个成员高效沟通和协作的环境中利用 Android SDK。
集成的 Eclipse 环境
Android SDK,或者更准确地说,作为 SDK 一部分的 Android Development Tools Eclipse 插件,可以与基于 Eclipse 的商业协作开发产品(例如 IBM Rational Team Concert (RTC))结合使用。有很多可用信息记录了如何让 Android SDK 和 RTC 在同一个 Eclipse“shell”中工作。请参阅图 1,了解与 RTC 集成时 Android SDK 的外观。
图 1: Rational Team Concert 使开发团队能够在整个生命周期内轻松创建和管理 Android 应用程序。
商业 IDE (RTC) 提供集成的工作项管理,允许团队领导为 Android UI 开发人员定义工作并将这些任务分配给他们,与分配给应用程序逻辑开发人员和其他团队成员的工作分开,包括工作分配给测试人员。与特定工作项相关的代码更改被绑定到一个特定的更改集中,该更改集一次性交付,因此可以将完整的代码更改作为一个单元进行跟踪。当开发人员在他们的 IDE 中编辑文件时,更改集会自动维护。除了编辑他们需要处理的文件之外,开发人员不需要做任何特殊的事情来生成更改集。
在与主代码流完全集成之前,可以在团队成员之间共享变更集。因此,可以与处理显示新数据的逻辑的 UI 开发人员共享更改 Web 应用程序提供的数据格式的更改集,而不会影响团队的其他成员。一旦 UI 代码更改和 Web 应用程序代码更改都被视为准备就绪,它们就可以在一个同步任务中集成到主线代码流中,以供团队其他成员使用。
开发 Web 应用程序的开发人员可以使用作为 SDK 一部分的 Android 设备模拟器,从他们自己的 IDE 执行在设备上运行的应用程序部分。使用共享变更集和集成设备模拟器的组合,开发相同功能(UI 和 Web 应用程序逻辑)的开发人员对可以协作解决由于对应用程序细节的不同理解而可能出现的初始问题。其中一位开发人员可以使用商业 IDE 中内置的屏幕捕获工具捕获设备模拟器的屏幕截图,并与其他开发人员共享该屏幕截图,以显示代码中的确切行为问题或缺陷。
敏捷团队协作开发工具(例如 RTC)允许定义多个短迭代,其中要实施和验证一小组应用程序增强功能。典型的敏捷迭代需要两到四个星期。团队负责人可以与团队合作,将积压列表中的工作项映射到特定的迭代中,并将工作项分配给各个开发人员。当开发人员拿起工作项目并开始在它们上取得进展时,他们的工作会被自动记录下来,并可供团队领导跟踪和查看。这使得有关已完成的内容、现在正在处理的内容以及仍有待完成的内容的信息可以在仪表板演示中轻松跟踪和查看。团队中的每个人都可以看到迭代的进展情况以及为该迭代计划的工作项的状态。
当团队中的测试人员开始对应用程序进行功能测试时,他们可以在共享开发项目中将缺陷作为工作项打开。他们可以轻松抓取失败测试的屏幕截图并将其包含在缺陷记录中。团队负责人可以跟踪这些传入的测试缺陷,并与团队合作分发它们以解决问题。
产品为基础 SDK 增值
多个基于 Eclipse 的商业产品可以同时与 Android SDK 集成,从而为团队提供更强大的功能。例如,可以将设备代码结构建模并保持此模型与真实源代码同步的能力添加到协作敏捷团队环境中。通过将 IBM Rational Rhapsody 等商业产品与组合的 Android SDK 和 RTC 环境集成,团队可以获得使应用程序的高级模型与实际应用程序代码保持同步的能力。因为对于中等规模的项目来说,真正的应用程序结构可能难以理解,所以从源代码生成模型的能力对团队来说非常有价值。
商业静态分析产品可以与基于 Eclipse 的开发环境集成,并提供分析代码质量和安全问题的能力。其中一些产品可以与实际的变更集交付流程集成,因此除非已针对基本质量和安全问题进行分析,否则不会将任何代码集成到主线代码流中。
商业开发产品提供的所有功能都扩展和增强了 Google 提供的基本 SDK。虽然 Google Android SDK 是任何交付要在 Android 平台上执行的代码的项目的基本起点,但当与其他基于 Eclipse 的商业产品中可用的传统敏捷团队开发功能集成时,该 SDK 可以显着提高效率。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !