|
|
打印本页
|
<noscript></noscript>
|
|
讨论
|
|
|
样例代码
|
<!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!--#include virtual="/developerworks/cn/inc/s-new-site-features.inc"--><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
级别: 中级
Frank Ableson (fableson@msiservices.com), 软件设计师
2008 年 4 月 07 日
如果不能随时了解最喜欢的新闻提要,那么移动计算环境又有什么用呢?当然,可以使用 Android 的浏览器浏览最喜爱的 Web 站点,但遗憾的是,这些站点很可能没有针对两英寸高的屏幕进行优化。此外,您也无法使用其他移动应用程序集成 RSS 或其他 XML 数据以构建自己的 mash-up。本教程将展示如何使用 Android Developer Tools 读取、解析和显示 XML 数据。
如果您想在 Eclipse 环境中开始开发 Android 应用程序,请同时学习教程:“用 Eclipse 开发 Android 应用程序”。该教程介绍了如何在 Eclipse 环境中开发 Android 应用程序。
<!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!--#include virtual="/developerworks/cn/inc/s-search-query-capture.inc"--><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
开始之前
本教程介绍了如何在 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 数据
先决条件
本教程需要结合使用几种技术。需要通过以下步骤获得所有这些工具。
完整的源代码可以从 下载 小节获得。本教程包含的源代码片段包括:
- 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页 |
|
分享到:
相关推荐
IBM官方推出的Android RSS阅读器教程,我将其转换成PDF,同时里面也包含了工程相关的源码,供大家学习
基本信息 源码分类:网络浏览 更新时间:2012-08-19 源码大小:0.06 MB 适用平台:Android 2.0+ 源码简介 构建Android手机RSS阅读器的源码。
Rss订阅源码是构建Android手机RSS阅读器的源码。
Rss订阅源码是构建Android手机RSS阅读器的源码。
适用于Android的RSS阅读器 这是一个项目,供联系人查看是否可以在不到10小时的时间内构建基本的RSS阅读器。 ###屏幕截图
这是适用于Android的RSS阅读器,仅适用于 该项目一点也没有死。 我仍然想研究它,但是在过去的几个月中,我没有那么多时间去做。 如果您是开发人员,请随时为PR提供帮助。 如果您是用户,则仍然可以创建新问题...
PSMForums是适用于Android的RSS阅读器。 这是在获得Kotlin的支持时作为个人项目开始的。 RSS是一种古老的技术,并且已经有很多读者,但是我发现其中许多读者难以导航,并且挤满了一些功能,这些功能过于过时或根本...
Google阅读器API(Bazqux阅读器,旧阅读器等) 阅读器 Feedbin(官方或自托管) 其他主要功能包括: UI和阅读的暗模式。 配置源以默认加载全部内容或网页。 专用订阅选项卡,由带有文章标题的最新更新组织。 ...
XYZ阅读器是有关培根所有事物的模拟RSS提要阅读器。先决条件Android SDK v23 Android构建工具v23.0.1 Android支持存储库图书馆 ,Android的HTTP客户端库 ,用于图像下载和缓存的Android库如何安装该项目使用Gradle...
SpiderReddit RSS阅读器(演示) 准系统,用于网站的Android RSS阅读器的简单演示。 [功能](#功能) [构建说明](#build-instructions) [第三方库](#third-party-libraries)特征异步读取RSS提要从任何指定的...
适用于Chrome,Safari,iOS和Android的最佳RSS Feed阅读器扩展。 通过获取FEEDER PRO来支持我们构建供稿器:https://feeder.co/-即时查看何时将新帖子添加到您的RSS和Atom供稿中的一个-通过单击浏览器图标轻松订阅新...
Elfeed是Emacs的出色RSS阅读器,我每天都在使用它,但是现在我在四处旅行,我需要一个基本的移动应用程序。 而且,这是与RN和CLJS一起玩的完美借口。 该项目使用: 我在开发环境中使用Docker和Docker Compose,因为...
使用Material Design原理改变了新闻阅读应用程序的用户体验。 这包括对Material Design UI组件,字体,颜色,运动和表面的一致且有意义的使用。... XYZ阅读器:模拟的RSS feed阅读器,具有横幅照片和标题。 该应用
KMM RSS阅读器 这是使用构建的开源移动应用程序。 这是一个简单的RSS阅读器,您可以将其下载到AppStore和Google Play。 它专用于演示如何在实际生产项目中使用KMM。 项目结构 该存储库包含通用的Kotlin多平台模块,...
规格阅读器 使用http.get请求构造RSS feed 使用应用内浏览器查看文章(此内容已删除) 验证选项卡结构之外的规范条目的单独控制器,以替换应用内浏览器 验证可读性API并获取密钥 加载文章后调用以获取文本] ...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...
此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这...