基于android的多功能日程表系统的设计与实现

上传人:痛*** 文档编号:78195901 上传时间:2022-04-21 格式:DOC 页数:52 大小:1.01MB
收藏 版权申诉 举报 下载
基于android的多功能日程表系统的设计与实现_第1页
第1页 / 共52页
基于android的多功能日程表系统的设计与实现_第2页
第2页 / 共52页
基于android的多功能日程表系统的设计与实现_第3页
第3页 / 共52页
资源描述:

《基于android的多功能日程表系统的设计与实现》由会员分享,可在线阅读,更多相关《基于android的多功能日程表系统的设计与实现(52页珍藏版)》请在装配图网上搜索。

1、烟台大学毕业论文(设计)烟台大学毕业论文(设计)任务书院(系):计算机与控制工程学院姓名于文英学号201158504444毕业届别2015专业软件工程毕业论文(设计)题目 基于Android的多功能日程表系统的设计与实现指导教师刘秀美学历本科职称系统工程师所学专业软件工程本篇论文将简单分析介绍基于安卓系统平台的多功能日程表系统的开发背景和实施意义,接着分步骤详细介绍了多功能日程表系统的分析、设计与实现的过程,最后对本次课题进行了简单的总结。主要参考资料:1 李佐彬. Android开发入门与实战体验M. 机械工业出版社.2 韩超、梁泉. Android系统原理及开发要点详解M. 电子工业出版社

2、. 3 韩超. Android经典应用程序开发J. 人力资源出版社.2011.54 公磊、周聪. Android的移动应用终端应用程序开发与研究J. 南昌: 计算机与现代化.2008.8进度安排:2015.1.252015.2.20:系统的分析阶段,开题2015.2.212015.3.14:制定需求文档,数据库设计,UI设计,架构设计2015.3.142015.3.31:日程表系统编码的具体实现2015.3.312015.4.10:系统的测试阶段,测试用例设计,进一步补充完善2015.4.112015.4.19:论文的撰写和答辩指导教师(签字): 年 月 日院(系)意见: 教学院长(主任)(签

3、字): 年 月 日备注:摘要 当代社会,网络技术突飞猛进式的超越发展,用户获取信息和娱乐的方式正在向多元化发展。无疑,操作系统的发展已经成为产业价值增长的重点课题。Internet网络的发展正随着移动平台的崛起而发展迅速,传统式的PC应用程序被移植到更具有挑战性的移动平台的现象已成为社会发展的一种必然趋势。Android系统占领着最大的市场份额,其次是IOS占领第二大市场份额,因此当今世界网络的发展为Android用户开发,满足大部分人群的日常生活应用的生活软件已经成为了现在信息科技发展最具活力的话题。越来越多的网络人才热衷于Android的开发,进而推动了Android的高速度的发展,也使得

4、移动平台的发展前景更加广阔,各大网络商家为了吸引客户,不断寻求技术上的创新和不断提高体验度。Android已经成为年轻人日渐推崇的网络技术,促进了Android系统的不断发展。本课题专门选用了当代科技最具有活力的安卓系统来作为设计的实现技术,进而设计了一个多功能日程表系统软件,用户可以通过本软件来做一些日常事情的记录,同时也可以做定时提醒。本课题也将简单的介绍基于Android平台的多功能日程表系统的开发背景和设计意义,紧接着将会详细介绍多功能日程表系统的具体分析、详细设计与分步骤实现过程,最后对本次课题的设计做了简单总结。关键词 Android操作系统;多功能日程表;SQ Lite数据库;手

5、机Abstract: Now, network technologymake a spurt of progressbeyond the development mode, the user access to informationandentertainmentis to diversify,undoubtedly,the development of the operating systemhas become a key issueof industrialgrowth in the value ofthe.The development of Internet networkiswi

6、th the rise of the mobileplatformand the rapid development,the traditional PCapplication programis transplanted to themore challengingmobile platformofthe phenomenon has becomean inevitable trend of social development. Android capturethe largest share of the market,followed by IOSoccupy secondmarket

7、 share,so the development ofthe worldnetworkfor Android usersto develop to meet thedaily application ofmostpeoples lifehas becomenow thesoftwareinformation technologydevelopmentthe most vigorousdevelopmenttopic,more and morepeopleare keen onthe Androidnetwork,and then promote thedevelopment ofthe hi

8、ghspeed of Android,but also makes theprospects for the development of mobileplatformis more wide, the Internetbusinesses in order to attract customers,constantly looking for innovative technologyand continuously improvewithperfect experience.Androidyoung people has becomeincreasinglyrespectednetwork

9、 technology,is not only the ITtechnical personnel, moreisthe majority of userspraise and trust,and graduallypromote thedevelopment of Androidsystem.This paperspeciallyselected contemporaryscience and technologythe most energetic Android platformas thedesign development andimplementation technology,a

10、ndimplements a multifunctioncalendarsystem software function,users can usethesoftware to dothe transaction recordsdailythings,but can also dofrom time to time to remind.This paperspeciallyselected contemporaryscience and technologythe most energetic androidas the realization ofthe planning design of

11、multifunctioncalendarsystem based on the Android platform,followed by the specificanalysis,will be described in detail thefunctionscheduleof the detailed design of the systemandstep by stepimplementation process,finally make a briefsummaryon the design of this project.Key words: The Androidsystem; m

12、ultifunctioncalendar; SQLite database; mobile phone目 录1 绪 论11.1 本课题研究的意义及其必要性11.2 国内外应用软件的现状及发展状况12 系统开发平台简介32.1 Android系统开发平台的优势32.1.1 鲜明的开放性32.1.2 开发平台具有不受束缚的特性32.1.3 硬件多样性的选择32.1.4 开发的方便性32.1.5 开发平台拥有Google服务的支持42.2 Android系统架构分析42.2.1 应用程序层42.2.2 应用程序框架52.2.3 系统运行库52.2.4 Linux内核层52.3 开发工具的选择52.4

13、 系统运行环境52.4.1 软件运行平台52.4.2 硬件运行平台63 系统分析73.1 系统功能要求73.2 系统开发功能73.3 系统的可行性分析83.3.1 技术可行性分析83.3.2 经济可行性分析83.3.3 操作可行性分析84 总体设计94.1 功能模块划分94.2 系统模块设计图94.3 系统用例图104.4 系统流程图105 详细设计115.1 各模块的功能125.1.1 日程管理模块125.1.2 日历功能模块125.1.3 闹钟管理模块125.1.4 界面设计135.2 系统数据库的设计135.2.1 数据库表的结构135.2.2 程序代码命名规范145.2.3 数据库与数

14、据库表设计145.3 数据库表之间的关系图156 系统实现166.1 系统文件夹组织176.2 用户管理模块的实现176.3 日历功能的实现196.4 闹钟管理模块的实现216.5 便笺管理功能的实现236.4 课程或活动功能展示257 系统综合测试267.1 概述277.2 注册登录功能测试277.3 日程管理功能测试287.4 日历功能测试307.5 便签功能测试318 总结与展望32结 束 语33致 谢34参考文献35附录 部分代码361 绪 论1.1 本课题研究的意义及其必要性当代社会,网络技术突飞猛进式的超越性发展。作为现代大部分人群日常生活当中最具有发展活力的的移动网络操作系统也得

15、到了当今社会人们的广泛的关注,网络是人们进行交流学习的一种重要手段,快速无阻碍的交流,交流沟通、工作或者学习的即时性,即地性,这些特点都是研究并开发移动网络系统主要的原因。随着Internet的相关技术的发展,特别是Android系统平台的出现,使得人们越来越青睐网络交流的发展前景。网络移动平台的迅速发展,是社会发展的必然趋势,而移动平台应用软件的开发也将有更好的发展,人们在日常生活的业余时间甚至是工作时间应用在手机上的时间也越来越多,手机正成为我们生活中最为亲密最为频繁使用的交流平台。而其贴近生活极具实用性的应用软件所占的比例也会越来越大。因此开发一个可以满足人们日常生活需求的移动平台应用软

16、件是一件很有意义和价值的事情。在现代生活人们复杂的日常工作中,总有很多重要的议程需要安排,用户的学习生活,用户设置的其他必要日程规划,用户个人可以设定显明的标示或提示在规定的时间点安排完成预先设置的工作。多功能日程表系统其主要功能是完成每天的日程通常安排和重要的个人日程安排,并且可以选择给予及时的系统提醒。手机应用软件属于嵌入式软件开发,必须满足占用空间小,运行效率高等诸多特点。多功能日程表已经在PC机上有了很好地实现,但在手机上实现还有较大的难度,因此需要针对手机移动平台的特点进行专业化的设计。开发设定的多功能日程表系统的主要功能就是每天设定工作,完成自己或者他人的工作与计划,便签服务,备忘

17、录等功能。最终用户为导向的系统的功能,为用户提供特定的服务。本系统以移动应用程序的开发为目的,进行了更加深入的理论性研究,诸多的实验和技术性的开发,采用Java语言,开发了一项应用安卓系统的多功能日程表软件,并且对项目的总体设计、应用环境和相关功能的划分做出了详尽的描述,并对日程表系统的实现过程进行了初步阐述。最后,对多功能日程表系统进行了综合测试,并针对多功能日程表系统的发展前景进行了预测,同时对系统的不足之处也做出了相应的分析。 本次项目利用安卓技术开发了一个多功能日程表软件,整合了相关软件的突出优点,舍弃了功能比较差的几个方面。它将日程、日历、课程表、便签组合成一个应用程序,使其适合更多

18、人群的使用,解决了用户在日常生活中需要同时下载多个应用软件的大麻烦。在完成基本性的功能基础上,力求应用程序的创新性和不断满足用户体验的高要求性。1.2 国内外应用软件的现状及发展状况 全球移动手机的操作系统平台有多种,大体上可以分为开放式和封闭式两个大的类别。多功能日程表系统是建立在Android系统平台的设计,而安卓操作系统是开放式的,增加了开发应用软件的积极性和挑战性。安卓操作平台的架构方式与其他移动平台相同。安卓平台总体分为四个层次,从最高层到最低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层四部分。安卓系统应用软件在国外发展起步早于国内,大概在2007年就已经投入了

19、研究和开发,Android操作系统在其正式发布之前,只有内部测试版本,命名为机器人。随着技术的日新月异,Android系统平台技术功能的全面性和安全性也随之扩大增加,新特性增加的同时也在不断完善不同用户的体验感受,更加全面的覆盖了网络技术的新成果。国内的Android系统的开发研究虽然进步较晚,但由于软硬件条件比较成熟,又加之Android系统的开源性,使得它在中国近几年的发展也很迅速。开放性的安卓平台,使得应用软件的开发平台允许任何移动终端厂商积极的参与到技术的开发研究中。赢得了更多的技术参与者。随着用户量的不断膨大和应用软件新特性的日益扩大,安卓系统平台已经逐步迈向一个新的台阶,影响了世界

20、范围的科技。安卓系统的多功能日程表的开发在Android开始初期就纷纷有各种各样的产品出现,和很多类似产品。在国内的技术发展中,由于软硬件条件的适用,各类应用软件的发展速度犹如雨后春笋般涌现。以下介绍两个典型的多功能日程表系统,以说明目前对于此类系统的研究状况:1、正点闹钟。正点闹钟是应用于大众人群日常生活中的智能化的应用程序,几乎可以应用在世界所有的移动平台。生日聚会、重要节日、各种纪念日、生理周期、起床闹钟、考试提醒等事件都可以设置时间进行响铃提醒。把生活中备忘的事件都可以写进正点闹钟。正点闹钟基于widget,更炫更方便,任何需要提醒的事情都可以进行设置,Android版本的正点闹钟还可

21、以随意设置自己喜欢的风格,无论偏好哪种风格都可以找到适合的。但是正点闹钟更像一个多功能的备忘记事录,对于事情计划的设计与安排方面的设定较少。 2、中华万年历。提供设置周期性时间、设置公农历和24小时时间制的设定提醒,可以查看过去时间日期及未来时间日期,可以同时选择时间日期进行查询。每种查询都支持公历、农历两种显示方式。支持时间的设定和提示。还有日记功能,支持快速记事。中华万年历看似涵盖了所有的可以涉及的功能,但是没有展示一个核心的有特色的功能,还是可以从中吸取学习改进很多东西。同类软件种类繁杂多样,缺乏独特鲜明的特色,主要都是以盈利为主要目的,仍然有许多需要开发研究的课题。不过我们仍可从中吸取

22、许多优点和经验以使我们的系统更完善用户体验更好。2 系统开发平台简介2.1 Android系统开发平台的优势2.1.1 鲜明的开放性开放性是安卓系统的最大特点,显著的开放性让技术热爱者对其蜂拥而至,随着用需求的不断增加和手机移动应用软件的日益丰富多样,Android系统平台也将迎来新的历史性篇章。开放性对于操作系统的发展而言,有利于不断的积累其使用者对操作系统的拥护,不断的集聚名气,这里所说的名气包括使用者和加盟的移动手机厂商,而用户最直接的受益就是可以使用日益丰富的移动应用软件资源。开放性使得安卓系统获得了更多的关注,同时竞争者也与日俱增。使用者将有可能用更低廉的价格购买到更心仪的手机。然而

23、,随着Android系统不断的被使用者推崇,其在世界上的使用者覆盖率也将不断攀升,Android系统的不断壮大也将是移动软件发展的最大支撑者。2.1.2 开发平台具有不受束缚的特性信息科技的创新,膨胀了人们日益高涨的精神享受,使得人们开始追求更高端科技的使用,而是不断探索手机移动软件的应用,由于其便捷携带的特点,可以随时随地使用,不再需要在合适的地方才能够使用电脑网络软件。很多时候,应用程序的开发使用会受运营商各方面的制约,需要使用某个功能必须接入特定的网络才可以使用。随着各种高科技的日新月异性,手机接入网络已经不再是网络运营商制约移动网络发展的阻碍。近年来,Android系统的发布和不断的发

24、展,更加不受任何的束缚,不仅具有开源性,更重要的是可以不受束缚。2.1.3 硬件多样性的选择硬件多样性的选择也是Android平台的一大特色,离不开系统的开放性,使得功能各具特色的多样应用产品不断发布。使用性能上的不同和独特的优点,都无法涉及到数据得同时同步性、或者是应用程序的兼容性,如同从诺基亚塞班系统风格手机使用苹果iPhone手机,同时还可将诺基亚中独特的应用软件带到iPhone上使用、手机通讯录等资料也可以更加方便地转移使用。2.1.4 开发的方便性Android系统源码不被封闭,使得参与者不必受到各种各样的羁绊,进而催生了许多功能新奇的软件。Android系统平台的开源,有其两面性,

25、一方面促进了Android系统的不断发展壮大,催生了许多功能实用软件的诞生。另一方面,更多的血腥、暴力、情色方面的程序和游戏也不断升级,造成了许多事端。2.1.5 开发平台拥有Google服务的支持在互联网的Google公司作为一个做服务的公司已经走过10年的历史,从最初的探索阶段到现在在互联网的全面渗透。2.2 Android系统架构分析安卓平台的架构方式和其它OS的方式大同小异,也就是所谓的分层。安卓OS是手机智能应用程序的开发基础平台,所开发的手机智能程序最先涉及OS、中间件(MiddleWare)和应用程序(Application)。根据安卓平台的设计图,可以看出安卓在总体上可以概括为

26、四个部分,从上往下依次是是应用程序层、应用程序框架层、系统运行库层和Linux内核层。图2.1 系统架构图2.2.1 应用程序层用户界面的开发研究是安卓技术最主要的方面,一般同许多程序包同时发布,其包括客户端、短消息程序、联系人应用软件等,编写程序代码的语言最主要是就是JAVA,其中还大部分的内容包含放置在res目录中的各种可用的资源文件、Java程序及相关资源经过编译后,将会即刻形成一个程序包。安卓平台本身提供了界面主屏幕(Home)、手机联系人(Contact)、移动电话号码(Phone)以及上网浏览器(Brower)等许多手机最主要的软件程序。与此,手机软件的技术参与者还可以利用下层部分

27、的API实现自己所需要的代码编写。这也是安卓系统优势所在。2.2.2 应用程序框架Android平台的项目程序的技术参与者可以访问上层部分所利用的API,换句话来说也就是相关软件的结构,该项目模块的设计大大消减了各种应用组件的不断利用,编写的所有项目程序都可以发布它的功能模块分布并且其他相关应用软件都可以利用它的功能(完全违背了程序结构的安全性特点)。该项目的重复利用机制可以让使用者随时随地的替换软件的组件部分。由于安卓平台上层的应用程序是以Java编程来构建的,所以这层包含了UI程序中所需要的各种控件,在其后台是一系列的服务和系统。2.2.3 系统运行库安卓系统包含许多的库,能被安卓系统平台

28、中被称为组件的东西利用。这些库以安卓应用程序框架为桥梁,进而为技术参与者提供各种方便。系统运行库与一般嵌入式系统相对应,也就可以理解为中间件。安卓系统的运行库可以分成各种库和安卓运行环境。2.2.4 Linux内核层 安卓系统平台的创建开发是建立在优化的Linux内核之上的,设置了各种应用服务或者各种驱动等服务,Linux内核连接了移动设备的软件和硬件。Linux内核需要许多诸如显示驱动等的重要驱动。2.3 开发工具的选择开发基于安卓系统的应用软件,需要使用Google提供的Android SDK中的工具集,包括编译器、资源编译器、调试器和模拟器,并使用Eclipse和Android Deve

29、lopment Tools 插件作为集成开发环境。作为开源的移动平台,Android SDK不仅可以支持微软的XP和VISTA系统,也可以支持Linux 操作系统和Mac OS 10.4以上版本。Android的主要开发工具是eclipse+ADT插件。该插件是一个专门为Android定制的插件,该插件集成了对Android工程和工具的支持,它包含了大量功能强大的扩展,使得创建、运行、调试Android程序更加简单便捷。2.4 系统运行环境2.4.1 软件运行平台为了提高应用程序的可操作性,服务平台软硬件的配置也应达到相应的水准。此应用程序主要运行于手机等移动设备。多功能日程表系统在Andro

30、id环境下运行,一方面是由于其界面比其他系统较友好,而且系统的操作简单易学,实用性比其他系统要强,另一方面是由于安卓系统的显明开放性的特性。软件标准如下:操作系统:Android操作系统。数据库:SQLite 32.4.2 开发平台及环境操作系统:Windows7 32位JDK环境:Java Development Kit version=1.7.0开发工具:Eclipse version=4.2.0 Android SDK version=4.4.2 ADT: v19开发语言:Java、XML数据库软件:SQLite 33 系统分析3.1 系统功能要求多功能日程表系统是专门用于用户登录、记录

31、个人日程管理的Android系统应用程序。它具有开发的开放性、操作的便捷性和使用的灵动性。日程管理者进行有效的身份验证登录成功后,可以设定个人事务的提醒、修改、删除等各项要求,在设定的时间进行提醒,在设定个人事务之后,当达到设定的时间后,系统将自动予以提示。当设定好个人事务后,管理者可以随意查询。3.2 系统开发功能因为多功能日程表系统是一个为个人提供服务的系统,用户先注册、然后可以输入个人用户名、个人密码登录多功能日程表系统进行日程事件的设置。所以本程序要实现的主要功能有:1、用户信息模块 (1)用户注册: 新用户需要注册属于自己的用户名和密码以便更好的使用系统的功能和编辑属于自己的信息。

32、(2)用户登录: 用户使用已经注册过的用户名和密码进行登录以便访问自己原有信息和对以往或者新的纪录进行编辑2、日程管理模块设置近日(昨天、今天、明天)的日程管理计划,使得用户及时获知个人备忘事件。并可以及时设定未来某个时间的重要代办事件。 (1)待办事项增加:增加新的待办事项。 (2)待办事项修改:计划有变对待办事项进行修改。(3)待办事项删除:删除过时的或者不需要的待办事项。(4)待办事项查看:查看过去的或者现在的和未来一段时间的待办事项。 3、日程提醒模块 (1)新增闹钟提醒功能:对于待办事项设置闹钟提醒功能,到时闹钟会自动提醒,增加事件的可靠性。 (2)闹钟编辑功能:查询、修改、删除、增

33、加已设置的日程事件的闹钟提示,用户使用更加便捷。 4、日历功能模块 (1)日历查看功能:以月份的形式显示,可以查看阳历、阴历的月份和星期安排以及各种各样的节日和节气。 5、便签功能模块 (1)新增便签:对于一些灵感或者想法可以及时记录下来同时也可以把一些小的安排或者草稿记录保存下来。 (2)便签编辑:修改已有的一些便签,删除不需要的一些便签,查看已经保存的一些便签。 6、课程表功能模块 (1)课程表编辑:增加新的课程表,课程表查询、修改、删除更加便捷。 (2)课程表查看:查看不同时间的或者不同类别的课程表以及备注。3.3 系统的可行性分析可行性分析也就是可行性研究,是经过系统的基础性分析,分析

34、查看新系统开发的可行性和可操作性,主要是从技术方面、经济方面、管理方面进行研究分析,防止失误造成。可行性研究就是想用最少的付出开发出最优秀的产品。下面从三个反面分析系统的可实施性。3.3.1 技术可行性分析从技术上分析主要是分析硬、软件的条件能否满足开发者的需要进而完成应用软件的开发。(1)软件方面,多功能日程表系统需要的各种软件环境都已具备,有SQLite数据库,大量数据可以被处理,可以完整的保有数据并进行管理。(2)硬件方面,科技创新犹如雨后春笋般,硬件的更新也不断涌现,超大的容量,超高的可靠性,低廉的价格,使得硬件平台能很好的满足系统的要求。3.3.2 经济可行性分析经济可行性分析主要是

35、对项目的经济效益进行评价9。利用移动手机来实现多功能日程表系统以成为适应当今人们日益推崇的一种生活方式,开发一套能满足人们日常生活必备的软件是十分必要的,实现多功能日程表系统的智能一体化,可以使个人减少记忆的工作量。本系统在经济上是可观察的,实施开发后可以显著提高用户的时间利用率,大大的满足用户的需求,促进经济的发展,获得更多的收益。网络现代化的实现更进一步。因此在经济上是可行的。3.3.3 操作可行性分析目前,各个城市公共场所、行驶街道、运输系统等都覆盖了网络,人们生活的处处都离不开网络的连接,因而移动设备应用软件的发展迫切需要发展,从而使得Android系统的发展得到更好的利用和更广泛的应

36、用,涵盖生活各个方面。先进的科技水平为开发使用多功能日程表提供了更好的发展机会。4 总体设计4.1 功能模块划分根据多功能日程表系统的实际需要,功能实现起来大致分为以下几个方面:1、用户信息模块 (1)用户注册: 新用户需要注册属于自己的用户名和密码以便更好的使用系统的功能和编辑属于自己的信息。 (2)用户登录: 用户使用已经注册过的用户名和密码进行登录以便访问自己原有信息和对以往或者新的纪录进行编辑2、日程管理模块设置近日(昨天、今天、明天)的日程管理计划,使得用户及时获知个人备忘事件。并可以及时设定未来某个时间的重要代办事件。 (1)待办事项增加:增加新的待办事项。 (2)待办事项修改:计

37、划有变对待办事项进行修改。(3)待办事项删除:删除过时的或者不需要的待办事项。(4)待办事项查看:查看过去的或者现在的和未来一段时间的待办事项。 3、日程提醒模块 (1)新增闹钟提醒功能:对于待办事项设置闹钟提醒功能,到时闹钟会自动提醒,增加事件的可靠性。 (2)闹钟编辑功能:查询、修改、删除、增加已设置的日程事件的闹钟提示,方便用户使用更加便捷。 4、日历功能模块 (1)日历查看功能:以月份的形式显示,可以查看阳历、阴历的月份和星期安排以及各种各样的节日和节气。 5、便签功能模块 (1)新增便签:对于一些灵感或者想法可以及时记录下来同时也可以把一些小的安排或者草稿记录保存下来。 (2)便签编

38、辑:修改已有的一些便签,删除不需要的一些便签,查看已经保存的一些便签。 6、课程表功能模块 (1)课程表编辑:增加新的课程表,课程表查询、修改、删除更加便捷。 (2)课程表查看:查看不同时间的或者不同类别的课程表以及备注。4.2 系统模块设计图根据设计功能模块设置,可得出项目的分布设计图,如图4.1所示。日程表类别管理部分主要实现了:用户信息、日程管理、日程提醒、日历功能、便签功能、课程表。用户信息这一块主要是用户注册和用户登录的实现核心是用户验证。日程管理模块是这个系统的核心简单来说就是备忘录的增删改查。其他的日历查看、便签功能、课程/活动功能依次展开。多功能日程表系统用户信息用户注册用户登

39、录日程管理待办事项增加待办事项修改待办事项删除待办事项查看新增闹钟提醒闹钟编辑日程提醒查看日期节日新增便签日历查看便签功能便签修改删除新增课程表课程表查看课程表图4.1 系统模块图4.3 系统用例图用例图是系统设计重要展现:用户注册用户登录管理事务管理便签管理活动课程 退出 图4.2 系统用例图4.4 系统流程图系统的整个流程是这样的:用户先注册通过验证之后,进行登录,然后进行注册、登录验证。之后进入系统备忘录主界面,可以进行备忘录的添加修改删除等。主界面有查看日历功能,点击手机menu键可以查看菜单,菜单包括便签管理,课程管理,修改信息和退出。整个系统的活动图如下图4.3所示。登录用户登录登

40、录成功 OKERROR登录验证主页面日历信息管理课程表管理便签信息管理闹钟提醒管理日程信息管理用户信息管理 图4.3 系统流程图5 详细设计5.1 各模块的功能本节主要详细介绍各模块的具体功能,以及各模块之间的相互关系。5.1.1 日程管理模块日程管理模块是日程表系统的核心,也是这个系统存在的理由。其他模块基本都是围绕这个主题展开。日程管理模块的主要构成有五部分,第一部分是新增待办事务:包括事务将要发生的具体日期,具体时刻,需不需要添加闹钟提醒,选择什么样的铃声,事务的具体内容是什么。第二部分是修改待办事务:如果既定的计划有变,就需要对日程进行修改,所以编辑项目中的所有条目都可以进行修改。其他

41、部分为删除待办事项,当事务已经过期或者不需要了可以直接删除。其次是查看,添加事务提醒。日程管理模块查看待办事务新增待办事务修改待办事务删除待办事务添加事务提醒图5.1 试题类别管理模块图5.1.2 日历功能模块我们平时使用手机时会感觉一个日历APP的存在是十分理所当然并且特别简单,没有什么操作,大部分时候只是拿他来看一看日期、月份,有什么节日之类的。不过对于我来说它实现起来的难度并不亚于闹钟功能。因为它的组成部分确实很多,需要拼凑的东西很多,而且涉及到不少的计算量,对于在这方面没什么经验的我来说确实遇到不少阻碍。也把中国传统的天干地支,十二生肖,闰年,节气学习了一遍,收获颇丰。5.1.3 闹钟

42、管理模块闹钟提醒是备忘录不可缺少的功能,如果不为备忘的事件设置一个闹钟,就目前来说这个备忘录的意义也不算太大。闹钟的开发是最难的地方,除了复杂的函数调用,还要用到有关适配器的东西,这对于一个从来没接触过Android的人来说要花费的时间确实很多。因为牵扯到要使闹钟静音或震动,还有铃声的选择,所以会涉及到硬件功能的调用,比想象中复杂。5.1.4 界面设计安卓系统的任何应用软件即使功能异常简单,但是如果它有非常简洁大方的设计它依然能得到用户的喜爱,所以界面设计对于安卓应用来说尤为重要。Layout设计日程管理设计日历查看设计便签界面管理课程表界面设计用户注册登录界面设计图5.2 界面设计模块图5.

43、2 系统数据库的设计这一节的主要内容是本系统用到的有关数据库方面的知识,包括数据库命名规范和数据库的结构等。多功能日程表系统,所涉及到的信息量不多,一共有四个表:用户表、日程表、便签表、课程表、闹钟提醒表。5.2.1 数据库表的结构数据库命名规范:数据库以相关的英文单词缩写命名,如表5.1所示: 表5.1 数据库命名数据库名称描述lifememopro.db日程表管理系统数据库表命名以DBTable_开头加相应的英语单词,如表5.2所示:表5.2 数据库表命名数据库表名称描述DBTable_User 账户表字段命名除用户id以_id下划线开头,其他均为相应英语单词,如表5.3所示: 表5.3

44、数据库字段命名字段名称描述_id用户idtime时间5.2.2 程序代码命名规范数据类型命名规则。在系统中定义变量、常量时,以数据类型简写开头加上对应的英语简写,如表5.4 所示:表5.4 数据类型命名规则数据类型简写整型int字符串str布尔型bl单精度浮点型flt双精度浮点型dbl 组件命名的规则。在为组件申明id时以组件类型缩写加对应的作用英语,如表5.5所示:表5.5 组件命名规则组件简写EditTexttxtBottonbtnTextViewtvSpinnerspListViewlv5.2.3 数据库与数据库表设计(1) 用户数据表的内容及要求,如表5.6所示: 表5.6 用户数据表

45、字段名数据类型是否主键是否外键描述_idIntegerYN编号loginidVARCHAR(20)NN用户名passwordVARCHAR(50)NN密码createtimeVARCHAR(50)NN创建时间(2)备忘录数据表的内容及要求,如表5.7所示: 表5.7 备忘录数据表字段名 数据类型是否主键是否外键描述_idIntegerNY编号useridVARCHAR(20)YN用户编号 字段名 数据类型 是否主键 是否外键 描述titleVARCHAR(50)NN标题createtimeVARCHAR(50)NN创建时间bodyVARCHAR(300)NN内容(3) 课程/活动数据表的内容及

46、要求,如表5.8所示:表5.8 课程信息表字段名数据类型是否主键是否外键描述_idIntegerNY编号useridVARCHAR(20)YN用户编号dateVARCHAR(50)NN日期timeVARCHAR(50)NN时间nameVARCHAR(300)NN名称classnameVARCHAR(100)NN课程名称bodyVARCHAR(300)NN备注createtimeVARCHAR(50)NN创建时间(4) 闹钟提醒数据表的内容及要求,如表5.9所示:表5.9 提醒信息表字段名数据类型是否主键是否外键描述_idIntegerYY闹钟编号hourIntegerNN小时minuteInt

47、egerNN分钟NoticedateVarchar(50)NN提醒日期AlarmtimedateNN提醒时间EnabledIntegerNN是否启用VibrateIntegerNN是否震动 (5)便签数据表的内容及要求,如表5.10所示:表5.10 便签信息表字段名数据类型是否主键是否外键描述_idIntegerNY编号useridVARCHAR(20)YN用户编号titleVARCHAR(50)NN标题bodyVARCHAR(50)NN内容 5.3 数据库表之间的关系图图5.3 数据表整体关系图6 系统实现6.1 系统文件夹组织在编写系统之前,定制好系统的系统文件夹组织结构有利于规范系统整体

48、结构如下图所示,采用比较通用的三级分层结构。 6.2 用户管理模块的实现(1)用户注册模块功能的实现。对于用户管理模块来说注册功能的实现是比较重要的,即使在日常的开发中用户注册往往也有较大的工作量,所以在用户注册功能实现上处理的比较细致,相关具体实现如下所示:private class btnRegisterOnClickListener implements OnClickListener public void onClick(View v) if (etLoginID.getText().length() = 0) toastUtil.show(请输入账号);return;if (etL

49、oginID.getText().length() 6) toastUtil.show(账号长度至少为6位);return;if (etPassword.getText().length() = 0) toastUtil.show(请输入密码);return;if (etPassword.getText().length() 6) toastUtil.show(密码长度至少为6位);return;if (etPasswordOK.getText().length() = 0) toastUtil.show(请再次输入密码);return;if (!etPasswordOK.getText().

50、toString().equals(etPassword.getText().toString() toastUtil.show(两次输入密码不一致);return;BaseUtil.HideKeyboard(RegisterActivity.this);Dao dao = orm.getDBTable_UserDao();HashMap map = new HashMap();try if (user = null) map.put(loginid, etLoginID.getText();List list = dao.queryForFieldValues(map);if (list.s

51、ize() 0) toastUtil.show(该帐号已存在); else DBTable_User model = new DBTable_User();model.setLoginid(etLoginID.getText().toString();model.setPassword(etPasswordOK.getText().toString();dao.create(model);toastUtil.show(注册成功);RegisterActivity.this.finish();(2) 用户登录功能的实现用户登录功能的实现比较简单,但是也添加了比较严谨的验证语句用于检验用户的用户名

52、和密码是否正确private class btnLoginOnClickListener implements OnClickListener public void onClick(View v) if (etLoginID.getText().length() = 0) toastUtil.show(请输入账号);return;if (etPassword.getText().length() = 0) toastUtil.show(请输入密码);return;BaseUtil.HideKeyboard(LoginActivity.this);Dao dao = orm.getDBTabl

53、e_UserDao();HashMap map = new HashMap();try map.put(loginid, etLoginID.getText();map.put(password, etPassword.getText();List list = dao.queryForFieldValues(map);if (list.size() 0) SPUtil.set(LoginActivity.this, loginid, etLoginID.getText().toString();if (ckbSavePwd.isChecked() SPUtil.set(LoginActivi

54、ty.this, password, etPassword.getText().toString(); else SPUtil.set(LoginActivity.this, password, );OnLineUser lineUser = new OnLineUser();lineUser.setId(list.get(0).getId();lineUser.setLoginid(list.get(0).getLoginid();/ lineUser.setOther(list.get(0).getId();/ 保存登录用户信息application.setLoginUser(lineUs

55、er);toastUtil.show(登录成功);Intent intent = new Intent(LoginActivity.this,DeskClockMainActivity.class);startActivity(intent);LoginActivity.this.finish(); else toastUtil.show(帐号或密码错误); catch (SQLException e) e.printStackTrace();6.3 日历功能的实现(1)日历展示功能实现日历这一功能是展示信息量最大的一个界面,主要实现部分是前台界面的布局展示和后台对于各种日期节日的计算,相关具

56、体实现如下:public View getView(int position, View convertView, ViewGroup parent) if (convertView = null) convertView = LayoutInflater.from(context).inflate(R.layout.calendar_cell, null); else if(tpwd.getText().toString().equals(ttpwd.getText(). toString() userid=accountDAO.add(new Tb_account(0,tusername.

57、getText(). toString(),tpwd.getText().toString(); ItypeDAO itypedao=new ItypeDAO(Register.this); PtypeDAO ptypedao=new PtypeDAO(Register.this); itypedao.initData(userid); ptypedao.initData(userid); Toast.makeText(Register.this, 已登录:+tusername.getText(). toString(),if (dv != null | dv != ) date1=intentr.getStringExtra(date1); date2=intentr.getStringExtra(date2); datapickerp=payDAO.getDataAnytime(userid, date1, date2) ; datapickeri=incomeDAO.getDataAnytime(userid, date1, date2);if (position 7) if (position = 0 | position =

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!