首页 » Android程序设计:第2版 » Android程序设计:第2版全文在线阅读

《Android程序设计:第2版》Finch YouTube视频示例的源代码结构

关灯直达底部

本节简单地描述Finch YouTube视频应用的源代码,它和简单的视频列表应用不同。首先,文件被保存在两个目录中:保存第12章中的Finch视频应用的目录和第12章所依赖的Finch框架库所在的目录。YouTube应用的源文件包括:

在$(FinchVideo)/src/目录下的第12章给出的文件

$(FinchVideo)/src/com/oreilly/demo/pa/finchvideo/FinchVideo.java

FinchVideo类包含Video类,它和简单的视频应用FinchVideo.SimpleVideos的功能相同。FinchVideo.Videos类定义了一些常量,以及简单视频应用版本中所定义的内容提供者列名称。FinchVideo类和Videos类都没有包含任何可执行代码。

$(FinchVideo)/src/com/oreilly/demo/pa/finchvideo/provider/FinchVideoContent-Provider.java

该文件是主内容提供者,它提供YouTube元数据服务,并包括了基于YouTube GData API实现的异步RESTful请求。

$(FinchVideo)/lib-src/com/oreilly/demo/pa/finchvideo/provider/YouTubeHandler.java

该文件解析了YouTube GData API的响应,当有数据时,插入数据项。

在$(FinchFramework)/lib-src目录下的是Finch框架源代码

$(FinchFramework)/lib-src/com/finchframework/finch/rest/RESTfulContentProvider.java

该文件包含从Android内容提供者调用RESTful HTTP请求的简单框架。FinchVideoContentProvider类扩展了该类,从而可以重用异步管理HTTP请求的功能。

$(FinchFramework)/lib-src/com/finchframework/finch/rest/FileHandler.java

$(FinchFramework)/lib-src/com/finchframework/finch/rest/FileHandlerFactory.java

这两个文件是将下载到的URI内容缓存到文件的简单框架。它们用于响应应用对缩略图URI的请求。

$(FinchFramework)/lib-src/com/finchframework/finch/rest/ResponseHandler.java

这个文件提供从YouTube API处理下载的HTTP内容的抽象层。YouTubeHandler继承了该类。

$(FinchFramework)/lib-src/com/finchframework/finch/rest/UriRequestTask.java

这是可运行的对象,专门用于下载HTTP内容。它使用Apache HTTP客户端框架。