参考Android平台阅读器的设计与开发的论文.doc
《参考Android平台阅读器的设计与开发的论文.doc》由会员分享,可在线阅读,更多相关《参考Android平台阅读器的设计与开发的论文.doc(35页珍藏版)》请在沃文网上搜索。
1、基于Android平台的Rss阅读器的设计与开发摘要:随着3G时代的到来,移动用户通过GPRS可以高速享受Intenet提供的服务。本软件通过Rss站点方便用户迅速获取感兴趣的内容。本论文采用Android开源系统技术,利用Java语言和Eclipse,结合目前使用广泛的Rss(Really Simple Syndication),以及目前广泛使用的HTML文件解析和分析工具HtmlParser对RSS阅读器进行编写。使用HtmlParse解析HTML文件来获取指定内容能节省GPRS流量。本软件利用Android提供的各种组件对界面进行设计,达到很好的用户体验。关键词:Android;RSS;
2、HtmlParser;HTML;阅读器目录第一章 绪论41.1课题的研究意义41.2相近研究课题的特点及优缺点分析41.3本文的主要工作5第二章 Android的架构分析52.1 Android特征52.2 Android架构62.2.1 关键应用程序72.2.2 应用程序框架72.2.3 C/C+函数库72.2.4 Java程序运行环境72.2.5 Linux内核72.3 Android应用的构成和工作机制72.3.1 Activity82.3.2 Intent Receiver92.3.3 Service92.3.4 Content Provider102.3.5 Rss解析剖析102.4
3、 本章小结11第三章 开发环境介绍及构建11第四章 需求分析124.1功能需求124.2性能需求154.3数据需求164.4安全需求16第五章 Android数据库的设计165.1 数据库及字段属性设计175.2数据库的连接175.2.1数据库创建175.2.2 数据库操作18第六章 系统设计与实现186.1 Rss资源的收集和分析186.2 系统界面的设计226.2.1 主界面的实现226.2.2主界面中子界面的实现236.3 资源文件的解析276.3.1本地XML文件的解析276.3.2网络文件解析286.4 数据存储316.4.1 SharedPerference316.4.2 File
4、存储方式316.4.3 SQLiteDataBase数据库316.4.4 Android中Application的应用316.4.5数据存储在项目中的应用326.5 内容界面功能的实现32第七章 结论33参 考 文 献34第一章 绪论1.1 课题的研究意义随着移动通信的发展以及互联网向移动终端的普及,网络和用户对移动终端的要求越来越高,3G时代的到来为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。随着3G时代的到来,手机上网越来越方便,而网上充斥着各种各样的信息,让网民们很头疼,很难找到自己感兴趣的新闻,而且中国手机流量费用的高
5、昂,在众多网页中寻找自己感兴趣的信息浪费了过多没必要损失的流量。RSS为网民提供新闻标题和摘要,它的作用就像一道筛子,为网民过滤了网站的大量“无用”信息,节省大量的流量,使网民直达自己所需的网页。网民可通过RSS阅读器进行阅读,而不必每次到目标网站去寻找最新信息。提供RSS服务的网站,可以节省用户访问目标网站的时间。便捷和主动传递,这正是RSS订阅最有价值的地方。1.2 相近研究课题的特点及优缺点分析RSS阅读器按照其运行环境基本可以分为三类。 第一类大多数阅读器是运行在计算机桌面上的,通过所订阅网站的新闻供应,可自动、定时地更新新闻标题。在该类阅读器中,有Awasu、FeedDemon和RS
6、SReader这三款流行的阅读器,都提供免费试用版和付费高级版。国内最近也推出了几款RSS阅读器:周博通,看天下,博阅。第二类新闻阅读器通常是内嵌于已在计算机中运行的应用程序中。例如,NewsGator内嵌在微软的Outlook中,所订阅的新闻标题位于Outlook的收件箱文件夹中。另外,Pluck内嵌在Internet Explorer浏览器中。第三类则是在线的WEB RSS阅读器,其优势在于不需要安装任何软件就可以获得RSS阅读的便利,并且可以保存阅读状态,推荐和收藏自己感兴趣的文章。这些Rss阅读器都是基于PC机的,而基于Android平台的RSS阅读器现在还是很少并且这些RSS阅读器基
7、本都是解析RSS Feed后,获取到内容的链接后启动Android中的浏览器应用进行跳转,这样浏览器根据链接下载对应的内容,页面中相应的一些内容和图片对与用户来说并没有什么实际的用处,永不并不希望看到这些无关的内容,这些无关的内容相应的也浪费了很多GPRS流量,而中国目前GPRS流量的价格还是比较高,这样无疑给用户造成了很到的损失。1.3 本文的主要工作本文首先给出了系统的研究背景,对当前RSS的发展现状做了简单的介绍。进而详细的分析了Android的特征、架构以及Android应用的构成和工作机制。本文详细的提出了软件的架构,以及解析RSS方案;采用Java开源的JAR包对HTML文件进行分
8、析和获取图片和文字信息;对各个界面的布局和实现方式进行详细说明;对数据库设计模块进行了详尽的需求分析,经分析得到数据库设计模块,它主要完成用户对已经获取的内容的存储,删除和查询操作;运用Android提供的各种组件设计和实现很好的UI效果,实现很好的用户体验;详细介绍了该软件的性能优化。第二章 Android的架构分析Android是一个移动设备的软件平台,是由Linux+Java构成的开源软件,它提供包括SDK、Key Apps、Middleware、Linux Kernel四个部分在内的全套手机软件方案。它开放了基于Linux内核以上的开发工具,从而保证了内容的可移植性和多样性。Andro
9、id平台为我们开发应用程序提供了一套很好的框架,我们可以在这个平台的基础上开发不同的应用程序,也可以开发新的组件供应用程序调用1。2.1 Android特征Dalvik虚拟:Android采用的Java虚拟机是自主开发的代号为Dalvik的虚拟机技术,在保证API方面兼容的同时Dalvik针对移动手机进行了大幅优化,占用资源更小,运行效率更高。内嵌浏览器:基于开源的浏览器网页排版引擎WebKit。优化的图形:强大的自定义二维图形库。基于OpenGL ES 1O标准的3D图形功能,在移动3D开发中有着至关重要的地位。SQLite数据库:SQLitet提供结构化的数据存储。它是一款轻型免费的且开源
10、的数据库,它的设计目标是嵌入式的,它占用的资源非常低、需要的内存空间少、处理速度比较快和支持事务处理功能等。多媒体支持:支持各种通用的音视频和静态图像格式,如MP3、JPG、PNG等。Open Core是Android多媒体框架的核心,所有Android平台的音视频采集,播放的操作都是通过它来实现的。通过Open Core,程序员可以方便快速的开发出想要的多媒体应用程序。GSM技术:(依赖硬件)Global System for Mobile Communications,全球移动通讯系统,俗称“全球通”,是第二代移动通信技术,其开发El的是让伞球各地可以共同使用一个移动电话网络标准,让用户使
11、_一部手机就能行遍全球。蓝牙,EDGE,3G,and WiFi是一种短距离的无线连接技术,在短距离内可以实现话音和数据的无线传输。EDGE(EnhaIlced Data Rate for GSM Evolution),是增强型数据速率GSM演进技术。Camera,GPS,compass,and accelerometer:(依赖硬件)GPS(GlobalPositioning System)ItTI驯全球定位系统。它是一个由覆盖全球的24颗1J星组成的卫星系统。Compass是个开放源代码的JAVA搜索引擎框架。强大的开发环境:包括一个设备模拟器,调试工具,内存和性能检测,以及EclipseI
12、DE的开发插件。Eclipse是个集成开发环境2。2.2 Android架构Android的架构是Linux内核、C/C+函数库、Dalvik虚拟机、应用框架以及关键应用程序构成的,如图2-1。通过编译基于框架的应用程序可以降低开发负荷。应用软件原则上是在Dalvik VM上运行的。图2-1 Android架构图32.2.1 关键应用程序Android平台内包含一些关键应用程序,如邮件收发客户端程序、短信收发程序、日历和网页浏览器等,开发者可以在其平台上开发更多有特色的应用程序。开发语言是Java。2.2.2 应用程序框架Android应用程序的开发基于框架和组件。Android本身已在其框架
13、中提高了许多的组件供应用程序调用,当然开发者也开放新的组件,并将组件放入应用程序框架中,以供自己和其它应用程序调用。2.2.3 C/C+函数库Android应用程序框架之下是一套C/C+函数库,它们服务于Android应用程序组件,其功能通过组件间接提供给开发者。这些函数库包括:标准C函数库、媒体功能库、浏览器引擎、2D和3D图形库、基于WEB应用的的安全协议SSL、用于点阵和矢量字体渲染的FreeType以及SQLite引擎等。2.2.4 Java程序运行环境Android的Java程序运行环境包含一组Java核心函数库及Dalvik虚拟机,它们有效地优化了Java程序的运行过程。所有的An
14、droid应用都运行在它自己的进程里,该进程是一个Dalvik虚拟机的实例,Dalvik被设计成能在一台设备上高效的运行多个虚拟机实例。Dalvik虚拟机的可执行文件被封装成Dalvik可执行格式(.dex)。这是被优化过的最小内存依赖的格式。Java编译器(dx工具)将注册了的和运行时用到的类编译成.dex格式。Dalvik虚拟机依赖于底层Linux内核提供的功能,如线程机制,和内存管理机制等。2.2.5 Linux内核Android系统平台是基于优化了的Linux内核,是其系统平台的核心。它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层,提供了一个屏蔽层用于屏蔽硬件
15、和上层软件。2.3 Android应用的构成和工作机制对于一个Android应用程序来说,是由Activity、 Intent Receiver 、Service、Content Provider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。在应用程序中使用时,需要在配置文件AndroidMainfestxml中进行配置。这个配置文件是每个Android应用程序所必需的,用于定义应用程序的组件、组件的功能以及必要条件等。2.3.1 ActivityActivity是构成应用程序中最重要的构造块, 在Android应用程序中,几乎都是通过Activity来与用户进行交互,
16、所以Activity主要负责的就是创建与用户进行交互的显示窗口,你可以在这些窗口里通过调用setContentView(View)方法来显示你自己的用户界面。1. 活动生命周期活动(Activity)在系统中以活动栈的形式进行管理。当一个新的活动启动后,被放到了栈项,成为了运行活动,而新活动之前的活动在活动栈里总位于新活动之下,直到新的活动退出才重新回到前台。 图2-2 Activity状态变换路径图4从图2-2可以看出,Activity有三个关键的循环:(1)活动的整个生命期:从首次调用onCreate(Bundle)开始,到最终调用onDestroyO结束。在onCreate()中进行所有
17、初始化,在onDestroyO时进行清理工作,释放资源。(2)活动的可见生命期:从调用onStart()开始,到onStop()被调用为止。在这段时间内,即使活动不与用户进行交互,用户也可以在屏幕上看到它。在这两个方法调用之间,可以维护活动显示给用户的资源。onStart()和onStop()方法可以多次调用,因为活动随时可以在可见和隐藏之间进行转换。(3)活动的后台生命期:从调用onResume()开始,到onPause()被调用为止。在这段时间内活动处于其它所有活动之前,并与用户进行交互。一个活动可以不断在resumed状态和paused状态之间变换4。2. 活动之间的切换Android使
18、用了Intent类来实现活动之间的切换工作。Intent负责对应用中一次操作的动作、动作涉及的数据和附加数据进行描述。根据Intent的描述,负责找到对应的组件,将Intent传递给调用的组件并完成组件的调用。因此,Intent起着一种媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。在应用中,我们可以以两种形式来使用Intent:直接Intent,指定了component属性的Intent,通过指定具体的组件类,通知应用启动对应的组件。间接Intent,没有指定comonent属性的Intent,则需要包含足够的信息,这样系统才能根据这些信息,在所有的可用组件中
19、,确定满足此Intent的组件。2.3.2 Intent ReceiverIntent Receivert是用于对外部事件的响应,当外部事件发生时,会使用NotificationManager通知用户。当一个Intent Receiver被触发时,系统会在需要的时候启动对应的应用程序。如在本系统中,当用户正在其它界面进行操作时,有好友发送消息过来,就会以通知的形式发送到当前界面的正上方来通知用户。各种应用还可以通过使用ContextbroadcastIntent()将它们的Intent Receiver广播给其它的应用程序,实现应用之间的通讯。2.3.3 ServiceService是提供连续
20、信息的应用程序。它是运行于应用程序后台的服务,在用户进行其它活动的时候,这个服务将一直运行在基于Android平台的即时通讯系统的研究与实现后台直到用户停止该服务或服务运行结束。本系统客户端扩展功能的音乐播放就是采用Service来进行设计和开发的,使用户可以边聊天边听音乐。2.3.4 Content ProviderContent Provider应用程序能够将它们的数据保存到文件、SQL数据库和其它的存储设备中。当应用程序需要使用存储设备中的数据时,可以使用Content Provider来完成。使用Content Provider能够灵活的替换底层使用的存储设备,使开发者可以专著于应用逻
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考 Android 平台 阅读器 设计 开发 论文