构建 Android 手机 RSS 阅读器

构建 Android 手机 RSS 阅读器

使用 Android 处理 XML

developerWorks
第 1 页,共 10 页后一页

文档选项
<script language="JavaScript" type="text/javascript"> </script>
将打印机的版面设置成横向打印模式

打印本页

讨论

样例代码


对本教程的评价

帮助我们改进这些内容


级别: 中级

Frank Ableson (fableson@msiservices.com), 软件设计师

2008 年 4 月 07 日

如果不能随时了解最喜欢的新闻提要,那么移动计算环境又有什么用呢?当然,可以使用 Android 的浏览器浏览最喜爱的 Web 站点,但遗憾的是,这些站点很可能没有针对两英寸高的屏幕进行优化。此外,您也无法使用其他移动应用程序集成 RSS 或其他 XML 数据以构建自己的 mash-up。本教程将展示如何使用 Android Developer Tools 读取、解析和显示 XML 数据。

如果您想在 Eclipse 环境中开始开发 Android 应用程序,请同时学习教程:“用 Eclipse 开发 Android 应用程序”。该教程介绍了如何在 Eclipse 环境中开发 Android 应用程序。

开始之前

本教程介绍了如何在 Android 平台之上处理 XML。要按照本教程构建样例应用程序,必须在开发计算机中安装和运行 Android SDK。推荐使用 Eclipse 构建 Android 应用程序,但不作硬性要求。具备移动开发经验固然有帮助,但是 Android 应用程序开发要求具有 Java™ 编程技能,这将有助于本教程的学习。

关于本教程

常用缩写词
  • DOM:文档对象模型(Document Object Model)
  • GUI:图形用户界面(Graphical user interface)
  • HTTP:超文本传输协议(Hyper Text Transport Protocol)
  • RSS:真正简单的连锁(Really Simple Syndication)
  • SAX:XML 简单API(Simple API for XML)
  • SDK:软件开发套件(Software Development Kit)
  • XML:可扩展标记语言(Extensible Markup Language)

Android 的 RSS 阅读器为什么值得我们关注?XML 又是如何融入其中的呢?首先,Android 是一种在移动市场中迅速获得广泛关注的平台。甚至在配备了 Android 的消费型设备出现之前,许多开发人员就已纷纷投入到这一移动市场,希望为即将出现的、备受期待的 Android 式设备做好准备。诸如 Android 这样的富设备(Rich device)要求提供内容。某些情况下,内容的表现形式为游戏或一个生产力应用程序。然而,除了移动电子邮件外,最能够驱动数据使用的内容是新闻和信息。这种内容可能看上去类似于与特定金融市场有关的新闻,或者是天气预报这种比较普遍的信息。对于周末想到海边度假的人,自然十分关心天气预报。于是,以一种简单、实用的方式从移动设备获取数据成为了摆在人们面前的一道难题。

Android 包含了 WebKit.org 浏览器引擎,这意味着它可以向移动用户交付高质量的浏览器体验。然而,对于一个小型屏幕和有限的输入设备,在多个 Web 站点中查找新闻和消息是非常乏味的事情。不要误会,自从出现 WAP 浏览器和有限的基于文本的信息以来,这一市场已经得到了长足的发展,然而,移动信息的价值在于:输入 RSS 提要时一眼就可以判断出它是否可用。RSS 是 “Really Simple Syndication” 的缩写。实际上,RSS 是一种分布感兴趣的信息的方便方法。RSS 支持 XML 数据;数据包含完整信息源的简单摘要。如果对这些摘要该兴趣,用户可以进一步获取信息并获得全部内容。本教程将演示在构建 Android RSS 阅读器过程中涉及到的几个主要的 XML 处理步骤。

本教程分为以下小节:

  • RSS 基础
  • Android RSS 阅读器应用程序架构
  • 使用 SAX 获取并解析 XML 数据
  • 使用 Android 呈现 RSS 数据




回页首


先决条件

本教程需要结合使用几种技术。需要通过以下步骤获得所有这些工具。

  • http://www.eclipse.org/downloads 下载 Eclipse。
  • 要安装 Android Developer Tools(Eclipse 插件),请按照 Android 文档 “安装 Android SDK” 中的说明操作。
  • http://code.google.com/android 中下载 Android SDK。Android SDK 是一个不断发展的项目。撰写本教程时 SDK 的最新版本为 m5-rc14。
  • 选择一个 RSS 提要。本教程使用 developerWorks Web 站点中最受欢迎教程的提要。
  • 建立一个活动的 Internet Connection 来运行示例应用程序。

完整的源代码可以从 下载 小节获得。本教程包含的源代码片段包括:

  • AndroidManifest.xml 片段:该文件是 Android 应用程序的应用程序部署描述符。
  • RSSReader:该类实现主 GUI 并包含菜单处理代码。
  • RSSFeed:该类含有一个经过解析的 RSS 提要,包含 RSS 通道信息和一组 RSSItems
  • RSSHandler:该类实现 SAX 解析器处理程序,从而实现对 XML 流(Internet 中的 RSS 提要)的解析并填充一个 RSSFeed 实例。
  • RSSItem:该类表示解析 XML 流得到的一个 RSS 项。
  • ShowDescription:这是一种行为(Activity),显示所选的 RSSItem 的摘要并包含可链接的文本,可以无缝启动 Android 浏览器来访问 RSSItem 中的可用链接。启用这一 Activity 将在伪同步调用中结合使用一个 Intent 和额外的 Bundle。
  • R.java:该文件表示应用程序使用的 GUI 标识符。

术语

构建一个 Android RSS/XML 应用程序需要 XML、RSS 和 HTTP 方面的知识,还需要了解 Android 平台的各个方面。了解下面的术语对于学习本教程大有裨益。要想了解关于这些主题的更多信息,请参见 参考资料 中的链接。

  • Android:Open Handset Alliance 的旗舰产品。这是一个针对手机等移动设备的开源操作环境。
  • RSS:Really Simple Syndication 是一种可以通过高效的方式发布信息的数据格式。
  • XML:eXtensible Mark-up Language 是一种自描述性的数据格式。
  • HTTP:Hyper Text Transport Protocol 几乎专门用来传输所有的 RSS 提要。
  • 解析器(Parser):这个工具的作用是从一种格式中提取信息并使信息可用于其他结构。例如,XML 解析器可以从一个 XML 数据源提取数据。
  • 模拟器(Emulator):这种软件工具代表另一种系统。Android 目前还不能用于真实的用户硬件平台;本文在 Android Emulator 上运行示例应用程序。




回页首



第 1 页,共 10 页后一页
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值