欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    基于Android的学习资源推送系统的设计与实现 毕业设计论文.doc

    • 资源ID:3919810       资源大小:1.51MB        全文页数:32页
    • 资源格式: DOC        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于Android的学习资源推送系统的设计与实现 毕业设计论文.doc

    编号本科生毕业设计(论文)题目:基于Android的学习资源推送系统 的设计与实现 人文 学院 教育技术学 专业学 号 1701090104 学生姓名 指导教师 教授 二一三年六月摘 要随着计算机技术的飞速发展,手机也已进入智能手机时代。通过在日常生活中观察发现学生与老师学生与学生之间的教学与学习资源的资源共享还存在一定的不足,为了让智能手机用户能够更加方便地使用智能手机操作系统服务于学习,决定开发基于Android平台的学习资源推送系统。本文采用自顶向下的结构化的系统分析方法,阐述了一个功能全面的学习资源推送系统的开发过程、操作流程及其一些核心的技术。本文首先进行了项目概述,简单介绍了项目开发的背景、项目开发的目的和项目开发的意义;接下来是系统规划阶段,通过实际的业务流程调研,分析了系统的组织结构,具体完成了学习资源推送系统的需求分析、可行性分析、现行业务流程分析,并通过对现行业务流程的优化,得出了系统的业务流程;之后是系统分析,具体完成了数据流分析和数据字典;系统设计阶段主要完成了功能模块的划分、数据库的设计和系统界面设计。该阶段对各个模块的功能进行了详细设计,形成了本系统的功能模块图,在此基础上选择了合适的开发模式;数据库的设计先进行了概念结构设计,之后进行了逻辑结构设计,最后完成了数据库表的设计。根据前几个阶段的分析和设计,本系统在设计方面采用手机原生应用,同时使用Java技术进行程序的设计与功能实现。本系统的设计实施为学习资源推送系统的运行做基础,为学习资源推送系统提供良好的条件。关键字:android;学习资源推送系统;智能手机平台AbstractABSTRACTWith the rapid development of computer technology, mobile phones have entered the era of smart phones. By observing the everyday life of students and teachers , we found there are some shortcomings in sharing learning resources between students and teachers. In order to allow smart phone users to use the smart phone operating system more easily for learning, author decided to develop the learning resources of the push system based on the Android platform. The paper adopted the top-down structured system analysis method, elaborating a comprehensive learning resource function push system development process, operational procedures and some of its core technology. This paper conducted a project overview, a brief introduction to the background of the project development, project development and project development objective sense; followed by the system planning stage, through the actual business process research, analysis of the system's organizational structure, the specific study completed resource push system requirements analysis, feasibility analysis, analysis of existing business processes, and through the optimization of existing business processes, business process system obtained; followed by a systematic analysis of specific data flow analysis and complete data dictionary; system design stage is mainly completed the division of functional modules, database design and system interface design. The stage of the function of each module were designed in detail, forming a functional block diagram of the system, on this basis, choose the appropriate development model; database design first conduct a structural design concept, followed by a logical structure design, the final completed the database table design. According to the first few stages of analysis and design, the system is used in the design of mobile native applications, using Java technology for program design and feature implementation. The system is designed and implemented as a foundation of the learning resource push operation and it provided a good condition of the push system for learning resources .Keywords:android; push system of Learning Resources; Smartphone platform目录目 录第1章 绪论11.1 研究现状与发展趋势11.2 研究意义21.3 研究内容2第2章 系统设计32. 1系统界面设计32. 2 总体功能设计42.2.1具体方案选择5第3章 系统实现73.1 系统软硬件环境配置73.1.1Android开发环境介绍73.1.2Android开发平台搭建73.1.3Android系统架构研究83.1.4类库83.1.5 Tomcat服务器83.2 客户端各功能模块实现93.2.1启动模块103.2.2 学习资源列表模块103.2.3 学习资源细览模块113.2.4 推送消息通知123.2.5 推送消息客户端模块143.3 服务端各功能模块实现173.3.1学习资源管理模块173.4 数据提供183.5 后台服务193.6 推送机制以及分析19第4章 结论与展望214.1 结论214.2 不足之处及未来展望21参考文献23致 谢2525基于安卓的学习资源推送系统的设计与实现第1章 绪论1.1 研究现状与发展趋势据Gartner最新数据显示(图1-1),2010年第二、三季度全球智能手机销售继续大幅增长,其中第三季度安卓占全球智能手机市场的25.5%,仅次于塞班,成为第二大智能手机系统。2010第二、三季度与去年同期相比,增度分别是15.4%及22%,增势迅猛。而塞班系统较09年的市场份额,尽管终端销量有大幅度提升,但增势下滑10%,形势非常严峻。其他操作系统的表现则要平稳很多。图1-1 四年间手机系统发展状况安卓是首款开源代码的操作系统,采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改安卓的SDK软件包。系统的开源性使其具有良好的拓展性,一方面,为众多移动应用开发者提供了良好的系统性平台,有利于移动应用的集合;另一方面,终端厂商可以针对自身的特殊需要“定制化开发”。与此相比,尽管2010年2月,塞班基本完成开源工作,但由于代码臃肿,用户界面设计缺失,塞班的开源并无实际意义,错失发展良机。据Informa预测,2012年,安卓手机销量将超过诺基亚塞班手机,届时安卓将成为全球最大的智能手机平台。谷歌表示目前安卓手机每日平均激活量为20万部,销售速度加速上涨。我们认为,安卓在全球市场的成长壮大,塞班市场份额不断下跌已成不争事实。安卓操作系统发展迅猛主要得益于免费、开源和良好产业运作策略,这三点为安卓在智能手机市场赢得更多的发展机遇。系统的免费让更多的厂商加入,推动了份额的上升;代码的开源让更多的开发者进入应用开发;应用的丰富吸引了更多用户选择,这也是谷歌值得众多厂商学习的地方。此外,谷歌通过OHA联合众多厂商进行系统研发,不断更新版本,将系统应用推广到更多的终端产品中,确保用户体验持续改善。所以安卓软件的学习和开发不管在国内外都具有有很大的前景。1.2 研究意义三网融合已经成为大势所趋,也是我国重点推进的国家信息化战略。在三网融合发展的过程中,电脑和移动终端早已经与互联网对接并实现了网络化。今年来,智能手机终端的普及直接推动了移动互联网和Web2.0的发展,虽然只是被动使用网络和应用的变化,但是对推动互联网的发展却起到了及其关键的作用。然而,相对于层出不穷的各种游戏应用。很多书籍,学习软件的优化普及程度却偏低。基于这种情况,开发贴近生活且实用的学习资源推送智能手机应用软件可以便捷的进行日常学习和工作。学生在学习时遇到的一个头疼的问题就是不能很好地从老师和其他同学那里获得第一手的学习资源,基于这些想到了通过这款基于Android系统的学习资源推送系统完善学校的网上课程系统,来使得同学们和老师获得一个更方便的资源共享和获得第一手信息,方便大家集思广益,有利于促进我们的学习效率。1.3 研究内容随着科技的日渐发达,电子设备越来越高的科技含量,电子设备也越来越精巧,手机等移动设备将成为人们的主要获取信息的渠道。在今天的手机群雄并起时代,谷歌在2008年推出了一款名为谷歌Android开源操作系统的智能手机,它采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改SDK包,系统的开源性使其具有良好的拓展性。这款软件包括了操作系统、用户界面和应用程序,即智能手机工作所需要的全部软件。Android的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验,包括丰富的图形组件、多媒体支持功能以及强大的浏览器。本设计的实现主题是基于Android的学习资源推送系统软件的设计和实施。第2章 系统设计2. 1 系统界面设计根据需求分析可以看出系统界面设计主要包含三个部分:客户端界面设计和服务端界面设计。其中客户端的界面设计总体结构和思路如图2-1和图2-2所示:登陆界面学习资源增加学习资源管理服务端账户管理图2-1 服务端界面结构设计图2-2 服务端总体效果图由于服务端只做简单的学习资源管理因此上述图所展示的功能就能满足总体要求,下面是客户端的界面设计(图2-3):登陆界面学习资源列表学习资源刷新学习资源下载学习资源推送图2-3 客户端总体结构设计客户端的学习资源效果图,客户端学习资源下载效果图,学习资源推送效果图(图2-4)。图2-4 客户端总体效果图2. 2 总体功能设计从系统设计是一个把软件需求转换成用软件系统表示的过程。通过对目标系统的分析和研究,做出了软件工程课程网站的总体规划,这是全面开发系统的重要基础。在对软件工程课程网站全面分析调查的基础上,制定出软件工程课程网站的总体规划。系统设计包括系统总体设计、系统详细设计、系统数据库设计、系统开发工具、开发技术和开发模式等。从功能需求上分析可以看出,整个应用程序应划分为3个部分,分别是Android客户端、JSP服务端和MySql数据库,各部分之间的关系如图2-5所示。图2-5 系统设计图从模块结构图中不难看出,后台服务是整个应用程序的核心,主要是JSP服务端,负责根据请求做出响应,并从MySql数据库中获取对应的信息。JSP服务端运行在Tomat上面,跟Android客户端的交互基于HTTP,返回数据格式为JSON格式,在Android客户端程序运行前先启动,启动后的JSP服务将一直保持运行状态。JSP服务端封装了所有对数据库访问操作的方法,Android客户端会通过它来实现数据库的操作。 在开发之初,总体的文件结构和运行功能初步构思如图2-6所示:学习资源推送登陆界面资源列表资源下载推送通知登录系统资源增加用户管理资源管理服务端数据库客户端图2-6 总体功能结构2.2.1 具体方案选择所谓的消息推送就是从服务器端向移动终端发送连接,传输一定的信息。比如一些新闻客户端,每隔一段时间收到一条或者多条通知,这就是从服务器端传来的推送消息;还比如常用的一些IM软件如微信、GTalk等,都具有服务器推送功能。推送方法如下:1)通过SMS进行服务器端和客户端的交流通信。在Android平台上,你可以通过拦截SMS消息并且解析消息内容来了解服务器的意图,可以实现完全的实时操作。但是问题是这个方案的成本相对比较高,且依赖于运营商。2)循环主动定时获取这种方法需要客户端来做一个定时或者周期性的访问服务器端接口,以获得最新的消息。轮询的频率太慢可能导致某些消息的延迟,太快则会大量消耗网络带宽和电池。3)持久连接这个方案可以解决由轮询带来的性能问题,但是还是会消耗手机的电池。我们需要开一个服务来保持和服务器端的持久连接(苹果就和谷歌的C2DM是这种机制)。但是对于Android系统,当系统可用资源较低,系统会强制关闭我们的服务或者是应用,这种情况下连接会强制中断。(Apple的推送服务之所以工作的很好,是因为每一台手机仅仅保持一个与服务器之间的连接,事实上C2DM也是这么工作的。即所有的推送服务都是经由一个代理服务器完成的,这种情况下只需要和一台服务器保持持久连接即可。C2DM=Cloud to Device Messaging)。从上面的描述中我们选择第二种可以基本满足我们软件的需求:本软件是一个Android 客户端+JSP Servlet服务端应用程序,启动Android上的应用程序后可以查看文章的信息,包括标题、图片、文章等。Android客户端上的文章信息数据是通过后台JSP Servlet服务端应用程序获取的,这个后台服务可以根据客户端发出的请求,返回文章信息。文章信息,包括图片和文字,这些信息都保存在数据库中。第3章 系统实现3.1 系统软硬件环境配置Android应用程序是用java语言写的,通过aapt工具把应用程序所需要的任何数据资源文件打包成apk文件,这个文件是一个将应用安装到手机上的一个载体。有很多方式,每个android应用程序存在于不同的世界;第一,默认的,每个应用在他自己的Linux进程中运行,当应用中的任何代码需要执行时android就启动相应的进程,当不需要执行时并且系统资源被其他应用请求时android就关闭相应的进程。第二,每个进程都有他自己的虚拟机对象(VM),所以应用程序代码与其他的应用运行是彼此隔离的。第三,默认的,每个应用被分配一个唯一的Linux user ID,都被设置权限以便应用程序的文件只对用户可见或者只对应用自己可见。安排两个应用程序共享一个user ID是可能的,这种情况下他们彼此之间是可以看见对方的文件的,为了保护系统资源,拥有相同ID的应用也能被安排运行在一个相同的Linux进程中,共享。3.1.1 Android开发环境介绍Android的上层应用程序是用Java语言开发,同时还需要基于Dalvik虚拟机,所以,Google公司推荐使用主流的Java继承开发环境Eclipse。只有Eclipse还不够,因为是使用Java语言进行开发,还应该有由SUN公司提供的Java SDK(其中包括JRE:Java Runtime Environment)。此外,Android的应用程序开发和Java开发有较大区别的,所以还需要有Google提供的Android SDK。同时,还需要在Eclipse安装ADT,为Android开发提供开发工具的升级或者变更,是Eclipse下开发工具的升级下载的工具。简言之,需要以下软件,才能搭建Android开发环境,从而进行Android应用程序的开发。(1)Java SDK (2) Eclipse (3) Android SDK (4) ADT3.1.2 Android开发平台搭建 第一,首先到http:/www.eclipse.org/downloads/下载Eclipse集成开发环境并且解压,这里推荐下载Java EE 集成版本,可以为平台的搭建省下不少工作。接着再去http:/java.sun.com/javase/downloads/index.jsp 站点下载SDK后安装,下载http:/dl.google.com/android/android-sdk-windows-1.5_r1.zip,Android SDK1.5后解压。第一步下载工序就结束了。第二,双击Eclipse解压后目录中的eclipse.exe然后启动,选择Eclipse菜单中的Help-> Install New Software-> 选项卡上的Available Software,点击右侧的“Add”输入http:/dl-ssl.google.com/android/eclipse/后确定,然后在“Work with”下拉菜单中选择刚才输入的网址。过一会就会出现一个Developer Tools选项,勾上以后点击Next以后Eclipse会自动网上查找Android 开发工具插件,然后找到Android DDMS和Android Development Tools,选中这两个点击Finish,Eclipse就会自动下载并安装Android插件了,最后会提示重启Eclipse。第三,重启后选择Eclipse菜单中的Windows-> Preferences 在左侧的Android项目中SDK Location中填入Android SDK解压后的目录,然后点击Apply。第四,在WindowsXP的系统变量中的path变量中添加一个值,该值指向解压后的Android SDK目录下的tools文件夹。3.1.3 Android系统架构研究在Android SDK中,定义了让开发者使用与核心应用程序相同API的权限应用程序框架是为了要简化组件的重新利用而设计的,应用程序可以发布功能为其它应用程序所使用。但是,这要受限于应用程序架构的安全机制,使用者以用同样的机制来新增、置换组件。目前所有的应用程序是由服务及系统来组成,包含有:(l)一套强大和可扩展的视图系统:用来建构一个应用程序的基本组件,包了在开发系统画面时,常用的列表、网格、文本框、按钮等控制项,甚至是内嵌的Web浏览器。 (2)内容提供者:使应用程序可以访问另一个应用程序的数据(如联系人数库),或者共享它们自己的数据。(3)资源管理器:提供各种非程序代码的资源让应用程序去使用。例如:本字符串、图形文件或排版相关的布局文件。(4)通知管理器:提供应用程序在状态栏中显示应用程序自定义的提示信息。(5)活动管理器:管理所有应用程序的生命周期及提供常用的导航回退功能。例如:启动应用程序要用到的资源准备及关闭应用程序时释放内存及相关资源等工作。(6)视窗管理器:用来管理所有启动程序的视窗。(7)位置管理器:用来管理地图服务的相关功能。(8)电话管理器:用来管理用户拨打与接听电话的相关功能。(9)包管理器:管理所有安装在Android系统内的包。3.1.4 类库在Android中包含一些C/C+的类库,这些类库能被Android系统中不同的组件来使用。开发者可以通过应用程序框架使用这些功能。部分核心类库列表如下:(1)surface Manager:主要的功能是让开发者可以去存取/显示系统及管理的功能,在显示与存取操作间的对应、互动以及实现无接缝的2D/3D多应用程序之间的整合。例如:在2D、2D显示上的合成、叠合动作。(2)3Dlibraries:主要是依openGLES1.0规范所定义的3D绘图引擎。该库使用硬件加速(当硬件可用时),可以将硬件的3D功能做最佳化的处理显示。(3)SGL:主要是处理有关显示2D方面的绘图引擎。(4)Media Frame work:主要是以packetVideo公司的OpenCORE为基础所发展的多媒体类库,该库支持回放和录制大量流行的音视频格式和静态图片。例如:MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF等格式。(5)Free Type:主要是用来显示点阵图和处理向量字形的。3.1.5 Tomcat服务器Tomcat是一个免费的开源的Servlet容器。与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(Web Archive)文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet。这种集成只需要修改一下Apache和Tomcat的配置文件即可。基于Tomcat的开发其实主要是Jsp和Servlet的开发,开发Jsp和Servlet非常简单,可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可。3.2 客户端各功能模块实现客户端的主要功能可以参照以下流程图(图3-1):登陆客户端主界面动画学习资源列表结束服务器新增刷新发出请求下载成功学习资源下载成功?下载过?已存在?图3-1 客户端主体流程图从以上流程图可以看出客户端的功能主要在学习资源列表,和详细信息查看以及下载资源上面。登陆成功之后会显示“学习资源”的主界面动画效果,否则会提示错误并返回重新登陆。然后点击出现学习资源列表页,在此之前客户端会向服务器发送请求,服务端从数据库中调出学习资源信息,并将列表信息返回给客户端。此时若有新的学习资源更新服务端会自动检测在学习资源列表是否已存在,该资源若在两分钟之内客户端刷新学习资源列表则直接返回新资源信息,若两分钟之后仍未刷新则会推送出有新学习资源的推送消息到客户端。学习资源下载则有三种情况若未曾下载过该文件则会提示已下载并返回学习资源细览界面,若未下载过,一般情况下会下载,并提示下载成功,并不排除未下载而提示错误,这种情况极少出现,在此不予赘述。客户端各个模块的效果及核心代码如下:3.2.1 启动模块在工程名b_tuisong上点右键,然后选择“Run As”,然后选择“Android Application”。 Android虚拟机启动后app应用。登陆界面如图3-2所示:图3-2 启动模块单一的图片很容易使用户产生视觉疲劳,所以使用动画效果可以很好的弥补这一缺点,再安卓中,提供了两种方法来实现动画效果。一种是Tween,该方法通过实现控件的放大缩小以及透明度的变化来产生动画效果。另一种为Frame动画,该方法是通过播放连续的图片来产生动画效果。我采用的是第二种方法。登陆界面的学习资源弹出动画实现代码如下:protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); / 弹出动画效果显示 3.2.2 学习资源列表模块点击学习资源,进入学习资源列表模块,该模块的主要功能是实现学习资源列表显示,每次进入客户端都会向服务器发出请求,服务器从数据库获取实时信息更新学习资源列表,其效果图如图3-3所示:图3-3 学习资源列表其核心实现代码如下:Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); type = (String) getIntent().getExtras().get("type"); setContentView(R.layout.foods_list); / 加载数据以上代码是用来加载服务端发表的各项学习资源数据,这里加载的数据只显示一个简表,具体的资源信息需点击条目后进入查看详细描述。protected void onListItemClick(ListView l, View v, int position, long id) super.onListItemClick(l, v, position, id); Intent intent = new Intent( NewsList.this, NewsInfoActivity.class);intent.putExtra("food", list.get(position);startActivity(intent);/点击每一行时跳转到NewsInfoActivity实现点击每一行时跳转到NewsInfoActivity即学习资源细览界面,在细览界面中有对该条资源的详细描述,若发表的是txt文本文档则直接显示内容全文,可用来发送各类通知等。3.2.3 学习资源细览模块点击学习资源列表其中的一条,进入学习资源细览模块,显示他的详细信息,如图3-4所示:图3-4 学习资源细览核心实现代码如下:TextView tv_description = (TextView) this.findViewById(R.id.description);tv_description.setText( Html.fromHtml(news.description) ) ;Button downloadBtn = (Button) this.findViewById( R.id.download_btn );downloadBtn.setOnClickListener( new View.OnClickListener() public void onClick(View v) String url = Constants.WEB_APP_URL + "upload/" + news.getPic() ;HttpDownloader downloader = new HttpDownloader(); 以上是学习资源细览界面实现具体方法。客户端下载服务端数据时先向服务器发出请求服务器返回消息判断各种情况各种情况处理如下:int result = downloader.downFile( url, "book/" , news.getPic() ); if( result = 1)Toast.makeText(NewsInfoActivity.this,"文件已存在", Toast.LENGTH_SHORT).show() ;else if( result = 0 ) Toast.makeText( NewsInfoActivity.this, "文件下载成功,请在/sdcard/book/下查看", Toast.LENGTH_SHORT).show() ;elseToast.makeText(NewsInfoActivity.this,"文件出错", Toast.LENGTH_SHORT).show() ; ) ;/文件下载的判断与提示弹出3.2.4 推送消息通知在jsp服务端添加新的学习资源,Android客户端会自动检测到信息,并显示在界面通知中,自动检测并实现推送设置心跳时间两分钟,其效果图如图3-5和3-6所示:图3-5 添加学习资源视图图3-6 客户端推送消息提醒视图其中核心代码实现如下:if( list.size() > 0 ) name= (NotificationManager)context.getSystemService(context.NOTIFICATION_SERVICE); News object = list.get(0) ; /* create Intent,调用AlarmAlert.class */ Intent intent2 = new Intent(context, NewsInfoActivity.class); intent2.putExtra("food2", object );Notification notification = new Notification( R.drawable.ic_launcher , "有新的学习资源" ,System.currentTimeMillis();/闹铃提示和学习资源推送提醒后面的参数分别是显示在顶部通知栏的小图标,小图标旁的文字(短暂显示,自动消失)系统当前时间 ,有新的学习资源时可以出发闹钟或者震动来提示使用者。 notification.defaults=Notification.DEFAULT_ALL; notification.flags = notification.FLAG_AUTO_CANCEL ;这是设置通知是否同时播放声音或振动,声音为Notification.DEFAULT_SOUND振动为Notification.DEFAULT_VIBRATE;Light为Notification.DEFAULT_LIGHTS,在我的Milestone上好像没什么反应全部为Notification.DEFAULT_ALL如果是振动或者全部,必须在AndroidManifest.xml加入振动权限PendingIntentpt=PendingIntent.getActivity(context,0,intent2,PendingIntent.FLAG_UPDATE_CURRENT);点击通知后的动作,这里是转回main 这个Acticitynotification.setLatestEventInfo(context,object.getName(), object.getDescription().substring(0, 20) , pt);nm.notify(notification_id, notification); /点击通知后回到该学习资源细览其主要流程图如下:结束服务端提示客户端客户端刷新服务端推送过?图3-7 推送消息流程图上图主要反映了客户端从服务器获取消息的流程,一种是在客户端执行刷新操作,直接发送向服务器请求,服务器处理并刷新学习资源列表。第二种是到了心跳时间客户端仍未执行刷新操作时,服务器发送提示消息,并推送最新资源。3.2.5 推送消息客户端模块点击通知中推送到的学习资源信息其中一条通知,自动跳转到显示他的详细信息,点击下载按钮,下载到本地的sdcard上,可以用手机的软件,打开并观看。如图3-8所示:图3-8 学习资源下载视图根据URL下载文件,前提是这个文件当中的内容是文本,函数的返回值就是文本当中的内容。从功能要求不难发现要从以下四步实现这一功能1.创建一个URL对象2.通过URL对象,创建一个HttpURLConnection对象3.得到InputStream4.从InputStream当中读取数据其中主要代码实现如下:public String download(String urlStr)StringBuffer sb = new StringB

    注意事项

    本文(基于Android的学习资源推送系统的设计与实现 毕业设计论文.doc)为本站会员(小小飞)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开