【基于安卓Android学习生活软件的设计11000字(论文)】_第1页
【基于安卓Android学习生活软件的设计11000字(论文)】_第2页
【基于安卓Android学习生活软件的设计11000字(论文)】_第3页
【基于安卓Android学习生活软件的设计11000字(论文)】_第4页
【基于安卓Android学习生活软件的设计11000字(论文)】_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE11基于安卓Android学习生活软件的设计摘要近几年由于移动终端的飞速发展,移动客户端的应用软件出现了很多,学生对手机依赖感越来越强。据相关《大学生手机依赖与时间管理倾向、学业拖延、主观幸福感的关系》研究发现,时间管理倾向与手机依赖呈负相关,即手机依赖水平越高,那么时间管理倾向就越低。而手机依赖水平越高,学业拖延就越来越严重,手机依赖与学业拖延之间呈正相关关系REF_Ref9392\w\h[1]。因此,越来越需要减少学生和各种群体对移动电话的依赖并增强时间观念。随着科学技术高速发展,手机普及率越来越高,几乎每个大学生甚至小学生都拥有至少一台智能手机,移动端应用发展也风起云涌,各式各样的应用程序上市以满足不同人群的需求,给人们带来方便的同时也让越来越多的人沉迷于手机,花费越来越多的时间在各种社交平台和应用软件上,严重影响了学习和工作的效率,从而导致拖延症的发生。日程小助手App的开发与设计正是在此前景下产生的构想,目的是为了帮助人们有效管理时间、安排一天行程,提高时间利用率,减少对手机的依赖,避免拖延症,确保正常学习生活工作的开展。本系统是一个基于安卓手机平台的日程助手系统,具有基本的日程活动的增、删、改、查功能,在日历浏览的界面中可突出显示有安排的日期。用户可根据不同的活动设置任务,便于对日程的管理。关键词:日程管理;Java;安卓目录TOC\o"1-3"\h\u246491绪论 1141911.1研究背景 1147151.2目的和意义 1247181.3国内外研究现状 2226851.4开发环境简介 325091.5系统开发软件简介 4180701.5.1安卓平台的简介 425221.5.2Eclipse的简介 5212801.5.3其他软件的简介 5323281.6安卓环境的搭建 6264541.6.1软件下载准备 6118541.6.2JDK安装 6199502需求分析 7247362.1系统的需求分析 797982.2需求分析 794282.3系统的功能模块结构图 783433总体设计 10218153.1数据存储设计 10217793.2主界面显示Activity 10317383.3日程界面 11216983.4日历的显示 12243543.6时间分析的实现 14190194设计思想与实现 15206425系统测试与运行 16292065.1系统运行环境 1632005.2软件测试 16113656结束语 1831995参考文献 19PAGEPAGE111绪论1.1研究背景近年,随着智能移动设备的普及率和移动设备硬件质量的明显提高,各个移动设备的功能愈加完善,同时对移动式产品的系统平台的关注也在逐步增加。目前,我国最常见的移动开发平台包括iPhone,Symbian,Windows

Phone以及现在已经攻占大部分市场份额的Android。目前为止,国内已经有了大量移动设备基于Android系统的用户。据了解,截止2020年第二季度Android系统的国内智能手机市场占有率就已经超过了60%,而在北美以及西欧的市场占有率也到达了40%,可见Android系统正处于飞速发展、高速崛起之中。现如今对Android体系的利用和开辟在海内依然属于火热阶段,加大了相关技术和人员的投入。

Android系统是基于Linux内核的软件平台和操作系统,是在2007年11月5日由Google公布的手机系统平台,早期是由Google开发,后为Open

Handset

Alliance开发。它主要分为三部分,采用软件堆层(Software

stack,又名软件叠层)的架构。其中底层以Linux核心工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程式的一部分。Android系统作为当前最炙手可热的移动应用操作系统之一,在2012年就已经占据了欧美市场超过50%的市场份额。而在中国,智能手机市场上基于Android系统的智能终端也在不断地增加。截止2020年,安卓手机市场占比来看,华为稳居第一,市场占比达19.66%,由此可见,Android系统越来越受重视,已经与人们的生活密切相关。1.2目的和意义智能手机的APP应用软件在短期内迅速发展,立足于竞争激烈的系统平台领域,主要原因是它的多元化发展很好的满足了现代社会发展的节奏和人们日常生活的基本需求。手机应用软件已经不仅仅只满足用户单一功能的需求,而且还渗透到了生活、学习和工作的全方位,已经成为了当今社会不可或缺的工具。无论是上班时间还是休息时间,街道上或是地铁中,随处可见的是在操作手机的人。可以说,手机应用软件很大程度的推动了手机的使用率,使手机成为我们无法缺少的物品。尽管数据显示,截止到2020年第四季度,中国手机网民规模已经达到了9.86亿人,使用智能手机的比率为99.7%,虽然使用智能手机已达到饱和阶段,而中国手机网民规模和智能手机用户规模整体上仍然继续呈现增长趋势。但无法忽略的事实是,增长率却是呈明显下降趋势的REF_Ref2807\w\h[2]。这说明中国智能手机的普及率已经基本达到顶端,使用智能手机已达到饱和阶段,虽然持有量还在不断增加,但是最终会逐渐趋于稳定。同时也说明了,在相对稳定的市场里,随着不断加入的移动手机应用的增多,手机APP的竞争会愈加激烈,同类型产品的数量也会不断增加。这会使同类型的手机移动应用同质化加重,部分功能越来越一致,同时也会给应用软件的创新带来很大的困难,但也反方向的催生了很多垂直化和细分化的同类型软件。比如,移动APP会逐渐改变过去一次性满足用户所有功能需求的习惯,逐渐向更细分功能,更注重客户体验,注重人机交互的方向进行改变。而这个时间管理应用程序,专门针对用户的时间分配和实际日程所用时间的情况进行记录和管理。我们一般所说的时间管理,是指在时间分配上的自我管理,是否合理分配了时间,是否在分配的时间内完成了应该完成的工作。一方面,更清晰地认识到时间的特征,在进行时间管理时逐渐发现其中的规律;另一方面,我们必须学会在连续的时间管理实践中找到科学合理的方式来安排时间的使用,提高我们的时间控制能力,真正地控制时间而不是受时间控制。一般来说,人们倾向于先完成相对简单的工作,而难度较大或花费时间较长的任务则会选择逃避和拖延,对自己的待做工作没有准确的概念。精准详细的时间规划有利于提高工作学习以及生活的效率,有效减少拖延带来的效率低下等相关影响。这个应用程序只需要提前进行每日时间安排,并花费几分钟根据实际情况对使用时间进行记录,通过图表形式使用户对自己的的时间管理有更清晰地认识。1.3国内外研究现状闻名世界的Google公司开发了安卓系统(Android),这是主要在移动设备上使用的操作系统。2008年10月,谷歌发布了首部装载有安卓系统的智能手机AndroidSDK1.0,在之后的不到十年的时间里,基于Android平台的手机已经占领了全球手机市场份额的80%以上。于此同时基于Android系统的应用也在逐渐扩展,现在已广泛存在于电视、相机、平板电脑等其他领域当中。近几年来,基于Android系统平台的移动设备越来越普及。安卓手机、安卓电视、安卓平板电脑等Android系统产品,凭借其高度的开放性、出色的兼容性和丰富的应用、可开发性等特点在全球市场得到了广泛认可。根据一家市场研究公司在2012年在美国发布的报告显示,在当年销售基于Android系统的智能手机就已经占领了全美国的移动电话销售的28%份额,基于苹果的智能手机占市场份额21%。目前来看,全球移动设备市场中,微软公司的Windows系统、苹果公司的IOS系统和谷歌公司的Android系统呈现三足鼎立之势REF_Ref2807\w\h[2]。但根据业内人士分析,随着安卓系统的不断的发展和推出相应的应用软件,选择Android手机或者无线终端设备的人会越来越多,Android系统的市场霸主地位将很难撼动。对于Android系统来说,其最大的特点就是开放的源码。这个特点很大程度地改变了过去某些软件制造商垄断地位的系统平台,很多开放的内容开发商和软件供应商可以分享共同的利益,并大大提高了用户的体验。近期,国内智能手机市场的竞争形势已经开始趋于明朗,各个手机厂商开始将注意力转向中低端手机市场。Android系统也开始在手机操作系统旷日持久的竞争中占领上风。根据艾媒咨询发布的《2020年中国安卓智能手机用户调查.研究报告》数据显示,2020年中国安卓智能手机的用户使用品牌的调查中,国内品牌华为、vivo、oppo的市占率排名前三。随着近年来营业商对4G业务的大力推广以及5G规模的迅速扩张,Android系统无疑将会成为最大的市场需求,尤其是在当今全球移动手机销售量最大的中国。大型、中型还有小型的手机制造商在过去的几年里都在不停的招揽Android工程师,来开发基于Android的智能手机及应用软件。基于Android系统的应用软件的开发也不是孤立存在的,它要求开发者了解Android的三层框架,也必须要融合Java层框架内的通信机制、核心服务框架的关键机制、Java和C/C++整合开发的技术、HAL驱动框架及其API和云服务(CloudService)框架及其API等技术。时间管理类app的实现方法有很多,湖北师范大学的杨哲文等人表示为了解决对时间管理有困难的人的问题,代表方法有两种.一种是按照要处理事情的轻重缓急为标准来安排所有的工作,可以称为“应对法”。另外一种是通过记录每天处理所有事物所花费的时间,从而来分配自己的时间的方法,叫做“调控法”。这两种方法都有一个共同的缺点,就是忽略了主体,人的作用。所以他们提出了“时间微积分”的思想,是为了达到特定的目标根据每天的时间而对自己行动做出某种规划。而StePhenR.Covey的研究表明,时间管理方法从基于手表和时钟的提醒工具的时代开始,历经了基于日历和笔记的计划工具时代和基于优先权的控制工具与计划时代,一直到现在,进入了强调效率和能动性的时代,把角色和目标融入时间管理的第四代。GTD方法成为了现在时间管理的主流理论。GTD方法由DavidAllen提出,主要分为五个步骤,核心步骤为组织。现在全世界进行Android开发主要有两个开发环境:Eclipse和AndroidStudio。其中由谷歌公司新发布的AndroidStudio是基于IntelliJIDEA开发而成的REF_Ref6608\w\h[5]。使用AndroidStudio进行开发时,开发者可以方便快捷地进行Android应用地调试,而除了AndroidStudio是Android开发的IDE集成环境以外,还具有是基于Gradle构建支持、包含重构和快速修复等Android专属功能、可以提供捕获性能、版本兼容性和可用性的工具、功能强大的布局编辑器和支持应用签名等特点。1.4开发环境简介Android软件开发的基础语言是Java,开发工具是AndroidStudio,为当前大家都普遍使用的安卓开发工具,也是官方发布的安卓开发工具。Android的上层应用程序是用Java语言开发,同时还需要基于Dalvik虚拟机。因此,Google公司推荐使用主流的Java继承开发环境Eclipse。如果只有Eclipse还不够,因为是使用Java语言进行开发,还应该有由SUN公司提供的JavaSDK(其中包括JRE:JavaRuntimeEnvironment)。此外,Android的应用程序开发和Java开发之间存在很大的差异,所以还需要有Google提供的AndroidSDK。同时,还需要在Eclipse安装ADT,以提供用于Android开发的开发工具的升级或者变更,它是Eclipse下开发工具的升级下载的工具。简而言之,需要以下软件,才能搭建Android开发环境,从而进行Android应用程序的开发。(1)Eclipse(2)JDK(3)AndroidSDK(4)ADT(AndroidDevelopmentTools)1.5系统开发软件简介1.5.1安卓平台的简介安卓是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Android操作系统最初由AndyRubin开发,主要支持手机。Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。安卓平台特色介绍:开放性:就优势而言,Android平台首先就是其开放性。开发的平台对任何移动终端厂商都抱有开放的态度让移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发人员,伴随着用户和应用的日益丰富,一个崭新的平台也逐步走向成熟。开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和制造商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。同时也可以通过一些第三方优化过的系统通过刷机来实现更好的用户体验,如MIUI,Flyme等。丰富的硬件:这一特性还是与Android平台的开放性相关,鉴于Android的开放性,众多的厂商会推出具有不同功能的各种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。方便开发:Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。Google应用:在互联网的Google已经经过了历史的检验,从搜索巨人到全面的互联网渗透完全融入进了人们生活的方方面面,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将这些优秀的服务无缝结合起来REF_Ref9861\w\h[6]。1.5.2Eclipse的简介Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。虽然大部分用户愿意将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。在开发的过程中Eclipse中的所有内容都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性并不仅限于Java开发工具。尽管Eclipse是使用Java语言开发的,但它的用途并不仅限于Java语言;例如,支持诸如C/C++和COBOL等编程语言的插件已经可用,在后期也将有可能会推出。Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。1.5.3其他软件的简介JDKJDK(JavaDevelopmentKit)是SunMicrosystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的JavaSDK。JDK是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。JDK是学好Java的第一步。而专门运行在x86平台的Jrocket在服务端运行效率也要比SunJDK好很多。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。AndroidSDKSDK:(softwaredevelopmentkit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。因此,AndroidSDK指的既是Android专属的软件开发工具包。ADT(AndroidDevelopmentTools)目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。1.6安卓环境的搭建1.6.1软件下载准备分别下载JDK、Eclipse、AndroidSDK,并首先解压Eclipse完成安装。1.6.2JDK安装首先按提示完成SDK安装,然后设置环境变量(非必须)。1.我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:2.JAVA_HOME值为:C:\ProgramFiles\Java\jdk-10.0.2(我所安装JDK的目录)3.CLASSPATH值:.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\bin;4.Path:

在开始追加%JAVA_HOME%\bin;安装完成之后,检查JDK是否安装成功。打开cmd窗口,输入java–version查看JDK的版本信息。出现下面的画面表示安装成功了,如图1-1所示:图1-1安卓环境设置JDK效果测试图2需求分析2.1系统的需求分析该系统是一个基于安卓平台的手机日程管理软件。它主要是为本软件的用户提供日程管理方面服务的,主要包括日历的查看、日历上日期对应日程的查看、日程的增加、日程的删除、日程的修改、对本软件的设置以及软件相关信息的查看等。本软件有助于用户记住重要的日程并给予提醒,也有助于用户更好的管理自己的时间、提高工作学习的效率来减轻生活上的一些负担,更轻松及有效的过好每一天。2.2需求分析根据系统分析,需求如下:日历查看模块:界面为一个完整的日历形式,包括当前日期的完整显示,还有每个日期上都分别有阳历和阴历的日期显示,并且日历中包含了各个重要的节日或纪念日等。在日历界面上每个日期都会跳到当前日期的日程添加界面或者是日程显示界面。点击具体的日期,当日已添加的行程会出现在日历下方,点击具体行程,界面会跳转到日程详情界面,日历上会对当日有添加日程的日期进行标记,以确保不会有日程遗漏的情况出现。日程管理模块:在本模块中包括总的日程显示页面和日历页面所跳转到的日程显示界面或者是日程添加界面。总日程显示界面每一个日程都会有它所包含的日期、时间、日程类型、重复类型和日程内容。日历日期所对应的日程显示界面也是相应的显示。而在日程添加界面中包含了显示界面所对应的各项数据、添加日程成功后会有对应日历日期的标记。另外也有对日程的一系列管理操作的功能。(3)日程添加模块:包含日程管理界面所对应的各项数据,包括标题、描述、日期、时间、地点、标识颜色和重点的输入,添加日程成功后会有对应日历日期的标记,并显示在当日时间轴上。(4)日程详情模块:显示详细日程信息,且有时间记录部分,包括读秒计时,开始、结束等按钮,用户可以实时记录每项日程所用时间。被记录的时间将会存储在数据库,在进行时间分析时使用。(5)时间分析模块:以饼状图和柱状图的方式呈现,以一周为周期,将用户的计划时间和实际所用时间进行对比、分析,帮助用户找出时间规划的不足,改善生活习惯。2.3系统的功能模块结构图在程序设计分析的基础上,结合实际情况,得出本程序的功能模块结构图。在结构图中包括了功能模块的表示及其中部分功能的实现原理。首先是一个总的功能模块的结构图,其中包括了系统设计时的总体功能概括,如图2-1。日程管理系统日程管理系统主界面日历模块任务模块设置模块关于模块日历显示总日程显示类型设置关于界面单一日程显示图2-1总系统功能模块然后在总体的功能模块后面是主体功能的详细模块显示。在日历界面显示上可分为几个部分,如图2-2所示,日历显示日历显示阴历显示节假日显示日期显示图2-2日历显示模块还有就是日程的功能模块的详细介绍。总体书写了日程添加界面的功能点,结构图如图2-3所示。新建日程显示新建日程显示重复类型选择日程时间书写日程类型选择日程内容书写图2-3日程界面模块2.4主要功能流程新建日程流程如图2-4所示。图2-4新建日程删除及查看日程流程如图2-5所示。图2-5删除及查看日程3总体设计3.1数据存储设计根据功能模块设计了数据库表NoteBean,Android提供了标准化的数据库创建方式。建立DBHelper类继承到MyDBHelper,实现onCreate方法,onCreate方法是用于初次使用软件时生成数据库。表中包括日程ID、日程标题、日程内容、日程时间、日程重点、地点、标志颜色、重点等几个参数。建立时要对应需要写上参数名、参数类型、主键等,数据字典如表3-1所示。表3-1数据库表字段名字段含义类型长度主键id主键唯一标识int11是note_title标题varchar255否note_info内容varchar255否note_date创建日期varchar255否start_time开始时间varchar255否end_time结束时间varchar255否note_address地点varchar255否note_color颜色int1否note_important重点varchar255否do_time用时varchar255否3.2主界面显示Activity主界面提供日程显示,并支持左右选项卡滑动。主界面使用LinearLayout的线性布局和RelativeLayout的相对布局相结合的方式来布置内容。首先要建立好Android工程,然后在工程下的res/layout文件下建立一个名为main的空xml文件,然后按照思路在这个文件里添加布局代码即可。创建项目,MainActivity自动继承AppCompatActivity。onCreate方法重写了父类Activity的onCreate方法,用来初始化了Activity实例对象。在设计代码过程中使用了ButterKnife框架,这个框架采用注解进行注入,编译期生成代码,对运行没有副作用。在初始化布局后,调用bind方法。当编译Android工程时,ButterKnife工程中的ButterKnifeProcessor类的process()方法将会执行以下的操作:(1)首先它会扫描Java代码中所有的ButterKnife注解

@Bind

@OnClick

@OnItemClicked

等(2)当它发现一个类中含有任何注解时,

ButterKnifeProcessor

会生成一个Java类,名字类似

于<className>$$ViewBinder

ViewBinder<T>

接口会被这个新生成的类实现。(3)其中这个

ViewBinder

类包含了所有对应的代码,比如说

@Bind

注解对应

findViewById()

,

@OnClick

对应了

view.setOnClickListener()

等等。(4)最后,当Activity启动

ButterKnife.bind(this)

开始执行时,ButterKnife会加载对应的

ViewBinder

类从而调用它们的

bind()

方法。然后进行主页上边导航栏的初始化设置,使用了NavigationTabStrip控件。设定Strip类型为线条,高度为6,缩放因数为2。通过ViewPager实现滑动切换动画。3.3日程界面(1)保存日程信息,先从新增记事页面里获取标题、描述、日期、时间、地点、标识颜色、重点这几个参数,在确定所有信息输入完整后,将这些个参数放入到数据库中。

(2)查询某一天的日程信息,因为这里设计的是通过对日程的点击来查看当前选中日期的详细信息,即是根据日程的ID来查看的。Android

sqlite查询的方法是query语句。

(4)删除日程,这里删除日程操作需要把日程和对应日期上的标记同时删除,这样比较便于管理,这里删除使用的语句是delete。

(5)要将日程标志日期保存到数据库中,这里是为了把在日期上标识的信息存储在数据库内,方法和第一步的保存方法类似,只是数据不一样,而且这里使用的是数组形式。(6)关闭数据库。判断后直接关闭当前数据库。

3.4日历的显示首先使用DateUtils处理时间类,获取当前是一年中的第几周(从周一开始)。cal=Calendar.getInstance();这一句一定要设置,否则美国认为第一天是周日,而在中国默认第一天是周一,对当前是第几周的计算会出现错误。然后获取当前是周几,周日要特殊处理为0。系统主界面默认了选择日历界面在头部菜单栏的下方。

下面是日历界面中主体日期部分显示的完成

。日历选择器。dpTimer.setOnDateSelected(newOnDateSelected(){@Overridepublicvoidselected(List<String>date){}@Overridepublicvoidselected(Stringdate){if(date!=null){//tvText.setText(date.substring(date.lastIndexOf("-")+1));//curDate=date;//setClothesImage();SelectDate=DateUtils.format(DateUtils.parse(date,"yyyy-M-d"),"yyyy-MM-dd");loadTwoData();}}});在MainActivity文件初始化实例对象时加入动态添加布局文件的方法。

我将此方法命名为MyGridView。在这个方法中同样是先进行动态化布局,由于这里用的是GridView,这个GridView应用于将一系列的空间组织成二维网格的形式显示出来,所以适用于我在这里进行的日期界面的建立。

Splash也就是应用程序启动之前要先启动的一个画面,上面一般会简单的介绍应用程序的厂商,包括厂商的LOGO、名称、版本等信息,一般是一张图片或一个动效,显示延迟几秒钟后会自动消失,然后正常显示应用程序的主体页面。使用Activity作为Splash,这应该是最常用的方式了。方法就是新建一个Activity,然后给它设置一个背景,或者是要显示的信息(厂商,LOGO,名字和版本),这里选用显示的是产品名称。让它显示延迟几秒种,然后finish()掉它,并同时启动应用主体Activity。具体代码如下。publicclassSplashActivityextendsAppCompatActivity{

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_splash);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);//设置全屏

AlphaAnimationaa=newAlphaAnimation(0.3f,1.0f);

aa.setDuration(1800);

RelativeLayoutv=(RelativeLayout)findViewById(R.id.activity_splash);

v.startAnimation(aa);

aa.setAnimationListener(newAnimation.AnimationListener()

{

@Override

publicvoidonAnimationStart(Animationanimation)

{

}

@Override

publicvoidonAnimationRepeat(Animationanimation){

}

@Override

publicvoidonAnimationEnd(Animationanimation){

IntentmIntent;

mIntent=newIntent(SplashActivity.this,MainActivity.class);

startActivity(mIntent);

finish();

}

});

}

}4设计思想与实现对于时间管理App设计,以及UI界面的设计,我主要采用简便的界面进行设计,下面将以图形的方式介绍各个功能的实现过程。4.1日程模块首页通过时间轴和日程表的选项卡可以进行切换。时间轴模块如图4-1、日程表模块如图4-2所示。图4-1时间轴界面图4-2日程表界面时间轴显示当日日程,按日程开始时间进行排序,点击时间轴日程块进入详细信息界面,日程详细信息包括事件、时间、日期、地点、描述、重点等。可根据个人喜好通过选择不同标识颜色对日程进行归类划分,通过点击右上角确定按钮完成日程添加,如图4-3所示。图4-3日程详细界面日程表界面可查询其他日期已添加日程,点击日程进入详细信息界面,通过点击首页时间轴日程块和日程表日程进入日程详细信息界面,点击开始、暂停、结束按钮,实时记录时间所花费的时间,如图4-4所示。图4-4时间记录界面通过点击首页右上角icon进入时间分析界面,如图4-5所示。图4-5时间分析界面PAGEPAGE115系统测试与运行5.1系统运行环境根据以上对系统各种需求的分析和定义,建议系统测试选择进行真机测试,用于测试的Android手机机型为华为荣耀7,搭载的系统为Android6.0,测试机信息如图5-1所示。图5-1测试机信息5.2软件测试随着智能移动终端的普及,手机应用软件受到了越来越多的重视,软件测试的作用也越来越凸显。一般来说软件测试的意义是找出软件中的错误,检验软件是否完成了开发初期任务书给定的功能要求,是否满足了用户的需要,给风险评估和软件质量模型的建立提供依据。

软件测试的目的一般有三个:确认软件的质量、提供必要的信息和对软件开发过程的测试。对软件质量的测试主要是为了检测产品是否完成了之前所设定的功能,其次是为了确保是通过正确的方法实现的该功能。提供信息是指产品经理和开发人员在完成自己的大部分工作后,需要通过软件测试文档获得相应的反馈信息,从而作为风险评估的依据,以及是否需要进一步改进迭代。我们一般认为软件测试是指对软件本身的测试,其实并不仅仅是这样,他还包括了对软件开发过程的测试。因为如果无法保证软件开发过程的质量,就无法保证软件本身的质量。一个充满缺陷的开发过程是不可能开发出没有问题的产品的。由此,软件测试这样就保证了整个过程的高质量。而这三个方面最重要的目的就是检测软件的质量,要完成这一工作,主要是从以下几个方面来进行衡量的:一、在规定的时间内使用正确的方法完成了工作。二、产品应该符合一般默认的应用标准,在不同国家,不同类型用户的操作习惯和要求会有一定的差异,这就需要考虑到了用户体验的问题。还有产品的可维护性的特点是否得到了满足。三、产品的高质量并不取决于是否设计了精美的代码,是否和初期产品设计的功能一致。四、质量合格也意味着它能满足用户的功能需求。要进行软件测试这项工作,最关键的一点就是站在用户的角度看问题,从用户的角度出发鉴别用户所需要的功能是否满足。在测试过程中发现问题,发现不便捷的交互方式,用例是否出现错误,把这些问题都解决掉,产品质量才能有效提高。6结束语经过一段时间的努力,我的毕业设计——时间管理软件基本完成了,系统成功地通过了测试,基本上完成了模拟器的实现及手机操作的实现。毕业设计刚开始的初期,经过了一开始的准备工作,包括任务书、开题报告、外文翻译的撰写,使我对自己的毕业设计的定位、具体要实现的功能有了大概的认识。然后开始对之前学习过的Java知识进行了复习,对安卓开发的基础知识进行了学习、熟悉。这些准备就绪了以后才开始进行毕业设计的启动,尽管做了一些准备工作但一开始还是遇到了很多的问题。然后通过自己的不断尝试,不断的学习,向同学寻求帮助,终于成功解决了毕业设计产品中的一些难点。虽然还是有没有解决的问题,但在这个过程中我真实地经历了很多,收获了很多。我了解到了很多之前在书本中无法获取的经验,也再一次清楚地认识到只有自己亲身实践才能更有效地提升自己的能力。我发现只有知识是不够的,必须要与实践相结合才能提高自己的专业知识和实际操作能力。通过本次产品的开发,我对AndroidStudio这一开发环境又有了全新的认识,我越是深入的使用它,越能清晰地体会到这个平台的人性化。我们可以预见到,随着信息技术的发展,将来不管使用哪种开发语言,使用哪种开发工具,开发模式都会越来越完善,开发平台会越来越成熟,功能控件趋于集成化,灵活性也会越来越高。这些优化将会为开发者带来很大的方便,节约大量的成本,给开发者提供更大的空间。基于Android的时间管理软件,除了最基本的日程查询功能外,还具备

温馨提示

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

评论

0/150

提交评论