Android开发教程之使用 Android 和 XML 构建动态用户界面(一).pptx_第1页
Android开发教程之使用 Android 和 XML 构建动态用户界面(一).pptx_第2页
Android开发教程之使用 Android 和 XML 构建动态用户界面(一).pptx_第3页
Android开发教程之使用 Android 和 XML 构建动态用户界面(一).pptx_第4页
Android开发教程之使用 Android 和 XML 构建动态用户界面(一).pptx_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、Android开发教程之使用 Android 和 XML 构建动态用户界面(一),概述 常用缩略词 数据收集 应用程序架构 表 2. 必要的应用程序源文件 项目和数据模型 创建项目 数据模型 清单 1. xmlgui1.xml,为更好地利用本文,您应该使用 Android SDK 来构造 Android 应用程序。完成本文之后,您将了解如何使用 HTTP(S) 执行从应用程序到 web 服务器的通信,以及如何使用 DOM 解析器解析 XML。在此过程中,您将创建自定义和动态的用户界面布局、多线程通信、消息处理程序、以及进程对话框。至少,您将了解 AndroidManifest.xml 和服务器

2、端脚本编写。,概述,本教程介绍一个用于在 Android 设备上进行移动数据收集的动态表单的架构。我将首先介绍一个高级架构,讨论这样一个应用程序在数据收集的大环境中的应用。快速浏览这个已完成的项目,包含每个源文件,对本教程将要介绍的内容有一个大概了解。就像 “厨艺展示” 一样,您使用一些 Java 类从头开始构建这个应用程序,每个 Java 类都被小心引入并关联到应用程序的其他方面,其中最显著是一个数据模型,这个表单引擎就是基于它构造的。最后,您将表单数据保存在服务器上并简单地查看应用程序的服务器端。,Android开发教程,API:应用程序编程接口 DOM:文档对象模型 HTML:超文本标记

3、语言 HTTP(S):超文本传输协议安全 IDE:集成开发环境 SAX:XML 的简单 API SDK:软件开发工具包 UI:用户界面 URL:统一资源定位符 XML:可扩展标记语言,Android开发教程之常用缩略词,我们首先简要讨论数据收集,以及如何在使用 Android 移动设备时轻松实现数据收集。 一个 Android 数据收集框架 收集数据是计算机时代之前的任务。计算机已经变成一个日常 “订书钉”,使我们思考、查找和使用信息的方式发生了革命性的变化。市值数百亿美元的公司要归功于他们在存储、检索和管理海量信息中的高效。今天使用的数据库由各种各样架构的系统供给,包括大型机、客户服务器、w

4、eb 应用程序、以及现在的移动应用程序。,Android开发教程之数据收集,物理存货和周期计数应用程序是移动计算的早期实用应用程序。这些应用程序通常是批量数据收集,其中硬件需要一个扩展插口(docking station)来上传收集的信息。 从出现到现在,移动应用程序市场已经走过了很长一段路程,无线连通性和设备几乎遍布各种文化和市场,渗透到日常生活的每个方面。 尽管数据收集方式可能已经变得更具流动性,但数据收集的核心并没有发生太大变化。用户必须看到一些问题,并且要有一种简单的响应方式。本教程演示如何为 Android 驱动的移动电话构造一个简单的数据收集框架,其中要利用一个 XML 支持的动态

5、元数据结构。,Android开发教程,在深入代码之前,我们先在一个非常高的层面上检查应用程序设置。 Forms Engine 一瞥 我们首先浏览一下这个 Forms Engine 应用程序的各个方面。图 1 描绘这个应用程序与提供各种内容的数据录入表单的一个或多个服务器之间的关系。,Android开发教程之应用程序架构,图 1. 应用程序架构,Android开发教程,在 图 1 中,Form 1 提供 Robotics Competition 的注册,Form 2 要求用户提供关于他们的汽车维修习惯的信息。这些表单和 Android 应用程序通信使用 HTTP(S)来: 下载表单数据。 向用户

6、显示表单数据并(可选)收集特定于设备的数据,比如相机图像、声音录制、GPS 定位、或者罗盘读数。 收集用户提供的数据。 将数据提交给适当服务器。,Android开发教程,本教程的服务器端实现为一对文件:一个描述表单的 XML 文档和一个负责记录表单提交的 PHP 文档。这个 Android 应用程序是一个用 Java 代码编写的原生应用程序,使用 Android SDK,在 Eclipse 中编码。 表 2 显示完整应用程序的源文件。您可以下载包含所有这些源文件的压缩文件(参见 下载)。本教程将详细介绍每个源文件。,Android开发教程,文件名 XmlGui.java XmlGuiForm.

7、java XmlGuiFormField.java XmlGuiEditBox.java XmlGuiPickOne.java RunForm.java main.xml AndroidManifest.xml xmlgui1.xml xmlgui1-post.php xmlgui2.xml 注释 Android Activity 的入口点 一个表单的高级数据模型和方法 表示一个表单域,持有一个表单的每个字段的元数据 实现一个文本框类型用户界面元素 实现一个下拉列表类型用户界面元素 使用上述类处理一个表单 应用程序用户界面主页 此 Android 应用程序的部署描述符 收集 Robotics

8、比赛注册信息的样例表单 处理表单提交的 PHP 脚本 汽车维修习惯调查的样例表单,Android开发教程之表 2. 必要的应用程序源文件,图 2 展示本教程末尾完成的应用程序在 Eclipse 中的项目结构。(查看 图 2 的文本版本。) 图 2. Eclipse 中的项目,Android开发教程,如果您没有一个正在运行的 Android 开发环境,那么现在是安装 Android 工具的绝好时机。要了解如何设置一个 Android 开发环境,请参阅 参考资料 中必要工具的链接,以及一些关于如何为 Android 开发应用程序的入门文章和教程。熟悉 Android 有助于理解本教程。 您已经对架

9、构和应用程序有一个大致了解,现在就开始吧!,Android开发教程,我们现在已准备好在 Eclipse 中启动这个 Android 项目,创建允许您为这个 Forms Engine 应用程序存储和管理元数据的数据模型和类。,Android开发教程之项目和数据模型,创建 Android 应用程序从我们熟悉的地方开始:打开 Eclipse 并选择 File New,如 图 3 所示。 图 3. 新建一个 Android 应用程序,Android开发教程之创建项目,这个步骤将启动 Eclipse New project 向导。选择 Android Project(针对 Android 的专业 Jav

10、a 环境)。确保向项目提供一个有效的标识符(我使用的是 XMLGUI)。为匹配本教程中介绍的解决方案,在 Properties 下面,指定应用程序名为 XML GUI,包名为 com.msi.ibm。选择 Create Activity 复选框并将 Activity name 指定为 XmlGui,如 图 4 所示。,Android开发教程,图 4. 设置一个新项目,Android开发教程,项目创建后,它应该非常类似 图 5 中的图像。(查看 图 5 的文本版本。) 图 5. New project 向导刚刚完成时的 Android 项目,Android开发教程,现在,项目已创建,确保应用程序

11、干净地构建并在 Android Emulator 中运行是一个最佳实践。注意,有时应用程序直到您编辑并保存 Java 源文件时才会构建。这导致 Android SDK 工具自动在 gen 文件夹中生成一些文件。如果 Eclipse 环境中的 Problems 选项卡没有显示任何条目,那么您可以测试这个应用程序。 要测试应用程序,创建一个 Run 配置,如 图 6 所示。在 Android Application 列表中,选择 XmlGui。确保以下值出现:XmlGui 位于 Name 字段中,XMLGUI 位于 Project 字段中,com.msi.ibm.XmlGui 位于 Launch

12、字段中。单击 Run。,Android开发教程,图 6. Run 配置设置 此项目已在 Android 模拟器中创建、配置并正确启动,现在可以为 Android 创建 XML 驱动的数据收集工具了。,Android开发教程,这个应用程序的具体细节要求它向一个用户显示输入元素,验证数据,然后将数据提交到一个指定服务器。如果这个应用程序只针对新记录设置,那么它什么用处也没有,因为它不支持查询现有记录以便编辑或删除。 要向应用程序提供足够的关于如何显示数据录入表单的指示,需要一个信息集(通常称为元数据)。元数据是关于数据的数据。简言之,这个应用程序必须理解几个数据元素,包括: Form Name 人

13、们可读的表单名称 Form Identifier 这个元数据收集的惟一标识符 Submission URL 收集到的数据的发送地址 一个或多个字段 这些字段可能是文本、数字,或者 “从列表中选择” 类型的字段,Android开发教程之数据模型,几乎所有种类的问题都映射到这三种类型的用户界面元素中的一种。例如,可以实现一个复选框作为一个 Yes 或 No 选择字段。可以实现多重选择(multi-select)作为多选字段。当然,您可以随意扩展本教程中展示的代码。 对于您的应用程序,使用场景如下:您在参加一个活动,其中您可以注册一个或多个项目。您可以填写一张注册表,也可以等到回家后登录该组织的网站

14、进行注册。在本例中,您将假定一位用户将通过在一个 Android 设备上下载一个动态表单,以便在现场从他的手机填写一张简单表单,提供申请者的姓名、性别和年龄。 清单 1 显示了 xmlgui1.xml 的内容,该文件表示一个 Robotics 俱乐部活动的注册表单。,Android开发教程, ,Android开发教程之清单 1. xmlgui1.xml,注意关于这个 XML 文档的以下几点: 这个 XML 非常容易解析,这要归功于元素属性的广泛使用。之所以使用这种方法,原因是与多个子元素和标记相比,它使提取数据更容易。以这种方式使用属性还能保持较小的下载大小,并有助于保持较低的解析时间。 submitTo 属性告知应用程序,数据收集完成后将要发送到的位置。 每个 field 元素同时提供一个字段名和一个标签的属性。尽管这些值是相关的,但您希望每个 nam

温馨提示

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

评论

0/150

提交评论