Android手机日程管理系统的开发与设计.docx
《Android手机日程管理系统的开发与设计.docx》由会员分享,可在线阅读,更多相关《Android手机日程管理系统的开发与设计.docx(27页珍藏版)》请在冰豆网上搜索。
![Android手机日程管理系统的开发与设计.docx](https://file1.bdocx.com/fileroot1/2023-2/1/aac8c7e2-1934-412b-bd0c-46d738546bb0/aac8c7e2-1934-412b-bd0c-46d738546bb01.gif)
Android手机日程管理系统的开发与设计
【摘要】
随着智能手机的快速普及,智能手机操作系统市场风生水起。
当代日程管理被赋予了更多的内容。
随着事务的增多和管理者自我管理时间的减少,越来越需要日程管理软件来记录各种事宜,因此手机作为移动终端就成为了日程管理的重要平台。
本系统是根据GoogleAndroid平台用户的喜好和其平台的特性而设计的,在GoogleAndroid平台自带的SDK2.2环境下,运用了Eclipse,PhotoShop等相关工具进行开发。
本文概括的介绍了GoogleAndroid开发的流程,并重点的介绍了基于GoogleAndroid平台的日程管理系统的开发过程。
本文对目前应用的Symbian、WindowsMobile、MacOSX和RIM等平台的现状进行了分析,进而研究分析了Android平台的系统架构和组件模型,接着解析了Android中的重要API和应用构成。
在此基础上,基于Android平台设计和开发日程管理软件。
根据Googleandroid平台数据存储机制,对给予Googleandroid移动平台的日程管理系统进行了需求分析。
选取了日程管理系统的存储机制。
在参阅相关资料下,选择了日程管理系统的数据存储机制;通过与其他数据存储的比较得出日程管理系统的数据存储机制——SQLite存储。
在数据准备完成后,通过对Android用户的调查,设计一套用户体验较好的界面。
在此过程中,不仅调用了系统提供的控件,也使用了自定义控件。
通过开发基于Googleandroid移动平台技术的日程管理系统,了解Googleandroid移动平台的开发过程和Googleandroid移动平台的特性,通过此接触并熟悉软件开发的过程。
本系统界面友好、操作便捷,具有良好的可扩展性和可维护性;系统经过测试,可以稳定运行,能够满足手机用户的基本需求。
就在分析讨论Android手机软件开发技术原理的基础上,开发出能为用户提供更好的基于Android平台的日程管理系统软件。
【关键词】android;日程管理;智能手机平台;SQLite存储
【Abstract】
Withtherapidproliferationofsmartphones,smartphoneoperatingsystemburgeoned.Contemporaryschedulemanagementhasbeengivenmorecontent.Withthereductioninthetimeofself-managementoftheaffairsincreasedandmanagersincreasinglyneedtoschedulemanagementsoftwaretorecordavarietyofmatters,sothephoneasamobileterminalhasbecomeanimportantplatformforscheduling.ThissystemisdesignedaccordingtothepreferencesoftheusersoftheGoogleAndroidplatformandplatformcharacteristics,GoogleAndroidplatformcomesSDK2.2environment,theuseofEclipse,PhotoShopandotherrelatedtoolsfordevelopment.ThisarticleoutlinestheintroductionoftheGoogleAndroiddevelopmentprocess,andtheintroductionoftheGoogleAndroidplatform-basedschedulingsystemdevelopmentprocess.ThestatusofcurrentapplicationsplatformSymbian,WindowsMobile,MacOSX,andRIM.Thus,thestudyanalyzedthesystemarchitectureandcomponentmodeloftheAndroidplatform,thenresolvedinAndroidAPIandcomposition.Onthisbasis,basedontheAndroidplatformdesignanddevelopmentoflogmanagementsoftware.AccordingtotheGoogleandroidplatformdatastoragemechanism,givingthescheduleoftheGoogleAndroidmobileplatformmanagementsystemneedsanalysis.Selectedschedulecontrolsystemandthestoragemechanism.Refertotherelevantinformation,selecttheschedulemanagementsystemfordatastoragemechanism;schedulecontrolsystemandcomparisonswithotherdatastoredinthedatastoragemechanism-SQLitestorage.Datapreparationiscomplete,thesurveyofAndroidusersindesigningauserexperienceabetterinterface.Inthisprocess,notonlycallsprovidedbythesystemcontrol,alsousesacustomcontrol.ThroughthedevelopmentagendamanagementsystembasedonGoogleandroidmobileplatformtechnology,tounderstandthecharacteristicsofthedevelopmentprocessoftheGoogleAndroidmobileplatformandtheGoogleAndroidmobileplatform,andthroughthiscontactandbecomefamiliarwiththeprocessofsoftwaredevelopment.
第一章绪论
1.1选题背景
随着移动通信的发展以及互联网向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,windowsMobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开放性很强的平台。
经过多年的发展,第三代数字通信(3G)技术获得了广泛的接受,它为移动终端用户带来了更快的数据传输速率。
随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。
因此,移动终端的应用软件和需要的服务将会有很大的发展空间。
Google与包括中国移动、摩托罗拉在内的三十多家技术和无线应用的领军企业组成的开发联盟为此于2007年11月推出了一个专为移动设备设计的软件平台———Android。
Android是一套真正意义上的开发性移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。
Android是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。
Android平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还可以使运营商能非常方便地制定自己的特色化的产品。
因此,它具有很大的市场发展潜力。
根据中国互联网信息中心(CNNIC)发布的《第22次中国互联网络发展状况统计报告》显示,截止2012年6月底,我国网民数量达到了4.53亿,首次大幅超过美国,网民规模跃居世界第一位,其中手机网民达到7305万,手机上网成为网络接入的一个重要发展方向。
1.2选题目的及意义
Android最大特点在于它是一个开放的体系架构,具有非常好的开发和调试环境,而且还支持各种可扩展的用户体验,Android里面具有非常丰富的图形系统、对多媒体的支持功能和非常强大的浏览器。
本课题的目的在于掌握Java手机应用开发技术和移动软件平台开发技术,在以Java语言为基础,结合Android移动开发平台,并利用Android提供的SDK,完成在Android平台上运行的安卓日程管理软件,形成一款具有一定功能的手机应用软件。
本课题的意义在于通过开发一款安卓日程管理手机应用软件,可以熟练应用Android平台提供的应用程序接口,掌握Android平台上的各种应用。
1.3android系统开发技术
Android是一个包含操作系统、中介架构层及应用程序所产生出来的软件堆栈架构。
由下而上,其核心为嵌入式Linux2.6作业系统,向上搭配Google为Android开发的类库及Android运行时,再配合应用程序架构,来开发各种不同的应用程序。
1.3.1Android的功能特征
1.应用程序架构:
在应用程序架构内已经具备多种不同的基础组件,在开发应用程序时,就可以直接调用这些组件来使用,可以节省开发应用程序的心力及时间。
2.Dalvik虚拟机器:
在Android平台上所使用Java虚拟机,不是Sim公司的标准Java虚拟机,而是使用Google自主开发的代号为Dalvik的虚拟机,它在保证API方面的兼容的同时,针对移动手机进行了大幅优化,占用资源更小,运行效率更高。
3.集成的浏览器:
集成的浏览器是Android内建的浏览器,是以WebKit的浏览引擎为基础所开发成的。
WedKit是一个开源浏览器网页排版引擎,目前使用WebKit引擎的浏览器主要有:
Safari,Midori,Epiphany等。
配合Android手机的功能,可以在浏览网页时,达到更好的效果,例如:
局部性的缩放网页上的资讯、触控式的操作等效果。
4.优化的绘图能力:
在程序里可以用到的绘图功能分为2D与3D两个方面。
在2D方面,Android提供了一套特有的类库(SGL);而在3D方面则是使用OpenGLES1.0(openGLforEmbeddedsystems)规范的类库。
它们是一种非常快的图形引擎,并且支持硬件加速。
5.GPS:
GlobalPositioningSystem,即全球定位系统,它是一个由覆盖全球的24颗卫星组成的卫星系统。
这个系统可以保证在任意时刻和任何地点都可以同时观测到4颗卫星,以保证卫星可以采集到该观测点的经纬度和高度,以便实现导航、定位、授时等功能。
这项技术可以用来引导飞机、船舶、车辆以及个人,这个同样也是属于手机硬体方面的体现,也是在开发Android应用程序是可以突出的特点之一。
1.3.2Android架构分析
在AndroidSDK中,定义了让开发者使用与核心应用程序相同API的权限应用程序框架是为了要简化组件的重新利用而设计的,应用程序可以发布功能为其它应用程序所使用。
但是,这要受限于应用程序架构的安全机制,使用者以用同样的机制来新增、置换组件。
目前所有的应用程序是由服务及系统来组成,包含有:
l.一套强大和可扩展的视图系统:
用来建构一个应用程序的基本组件,包括在开发系统画面时,常用的列表、网格、文本框、按钮等控制项,甚至是内嵌的Web浏览器。
2.内容提供者:
使应用程序可以访问另一个应用程序的数据(如联系人数库),或者共享它们自己的数据。
3.资源管理器:
提供各种非程序代码的资源让应用程序去使用。
例如:
本字符串、图形文件或排版相关的布局文件。
4.通知管理器:
提供应用程序在状态栏中显示应用程序自定义的提示信息。
5.活动管理器:
管理所有应用程序的生命周期及提供常用的导航回退功能。
例如:
启动应用程序要用到的资源准备及关闭应用程序时释放内存及相关资源等工作。
6.视窗管理器:
用来管理所有启动程序的视窗。
7.位置管理器:
用来管理地图服务的相关功能。
8.电话管理器:
用来管理用户拨打与接听电话的相关功能。
9.包管理器:
管理所有安装在Android系统内的包。
在Android中包含一些C/C++的类库,这些类库能被Android系统中不同的组件来使用。
开发者可以通过应用程序框架使用这些功能。
1.3.3Android应用的构成和工作机制
对于一个Android应用程序来说,是由Activity、IntentReceiver、Service、ContentProvider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。
在应用程序中使用时,需要在配置文件AndroidManifest.xml中进行配置。
这个配置文件是每个Android应用程序所必需的,用于定义应用程序的组件、组件的功能以及必要条件等。
1.4系统开发环境介绍
1.4.1Android开发工具的选择
设计需要结合使用几种工具。
Eclipse平台:
Eclipse是一个运行插件的平台,可以下载安装EclipseClassic的最新版本。
Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。
IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。
Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。
由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成。
AndroidDeveloperTools:
按照安装说明安装AndroidDeveloperTools(Eclipse插件)。
源代码:
本设计中的源代码片段包括:
AndroidManifest.xml(片段)—这个文件是Android应用程序的应用程序部署描述符。
IntentReceiver —演示 IntentReceiver 的实现,这个类处理AndroidManifest.xml文中IntentFilter 标记所公布的intent。
Main.xml—这个文件包含Android活动所用的视觉元素或资源。
R.java—这个文件是由AndroidDeveloperTools自动生成的,它把视觉资源“连接”到Java源代码。
AndroidManifest.xml(完整)—这是完整的AndroidManifest.xml文件,包含每个重要元素的描述。
1.4.2下载开发资源
l.首先打开网址http:
//
2.接着打开网址http:
//java.sun.eom/javase/downloads/index.jsp来下载JDK6。
安装完后,设置JDK环境变量Java_home,classPath,path)。
3.最后是打开网址http:
//www.eclipse.org/downloads/来下载Eclipse3.2或3.3版本(开发Android的IDE)。
第二章可行性研究
2.1引言
系统开发的总体任务是实现程序的可操作性、美观性、及时性。
本程序开发过程遵循软件工程规范,采用结构化和面向对象分析设计方法,主要实现大学生课程表管理和日程管理,运用程序布局和视图实现了日程管理功能。
下面从技术、经济、操作、法律三个方面分析本系统的可行性。
2.2技术可行性
Android是一个包含操作系统、中介架构层及应用程序所产生出来的软件堆栈架构。
由下而上,其核心为嵌入式Linux2.6作业系统,向上搭配Google为Android开发的类库及Android运行时,再配合应用程序架构,来开发各种不同的应用程序。
Android是利用java+xlm编程,通俗易懂,易于上手,作为一种程序设计语言,Java是一种简单的、面向对象的、分布式的、健壮的、安全的、结构中立的、易移植的、多线程的动态语言。
它不依赖于机器的结构,并且提供了并发的机制、具有很高的性能。
同时还利用了SQLite数据库系统来作为数据存储,SQLite也是一套开放性的关联式资料库,来实现手机的课程表以及日程文件的存储。
因此在技术上是可行的。
2.3经济可行性
本程序界面通俗,实用性强。
从开发人力、物力、时间上考虑,开发成本极少。
而且利用了开源开发环境Eclipse,加快了开发进度,大大的缩短了开发周期,节省了人力、物力、时间,提高了项目开发的效率,降低了开发成本。
由于需求分析完整,减少了很多后期维护的复杂性。
另外,本系统具有很实用的现实意义。
因此,从经济角度考虑日程管理系统的开发是完全可行的。
2.4操作可行性
本程序采用直观的运行界面,运行效果简单明了,所有功能均根据基本需求进行开发。
强调在触屏手机上更简单的操作,使操作更人性化,减轻了用户的认知负担,使其更适合用户的操作需求。
对所有数据的输入进行完整性和合法性检查,尽量减少错误操作。
并采用下拉列表式快捷输入。
因此在操作上是可行的。
2.5法律可行性
本程序的开发作为毕业课程设计以提高分析和解决实际问题的能力,以个人为单位,仅供个人平常娱乐所用,所用他人的成果部分都已注明。
所以不存在侵权的问题。
该软件是合法的,不会引起任何社会问题。
因此,从法律上考虑本系统是可行的。
2.6结论
综上所述,本系统在技术方面、经济方面、操作方面、法律方面均是可行的,由此得出结论:
本日程管理软件的技术成熟、完备,各方面均无重大问题,因此本日程管理软件可开始着手编写。
第三章需求分析
3.1引言
需求分析是软件定义时期的最后一个阶段,也是关系到软件开发成败的关键步骤。
它的基本任务是准确回答“系统必须做什么?
”这个问题,即确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
在这个阶段中,开发者要做大量的调查和研究,收集信息,明确系统功能。
需求分析的结果是系统开发的基础,它的成功与否直接关系到项目的成败和软件的质量。
对软件需求的理解程度是决定软件开发工作成功与否的至关重要的环节,需求分析的任务是发现规范的过程,有益于提高软件开发过程中的能见度;便于对软件开发过程进行控制与管理;便于采用工程方法开发软件,提高软件的质量;便于开发人员、维护人员、管理人员之间的交流、协作。
3.2开发意图
随着3G应用的不断开发推广,用户会越来越需要更加个性化、优质化的多媒体数据服务,用户希望能够随时、随地无缝利用3G网络进行办公、网上交易、游戏娱乐、欣赏影视节目、收听和下载音乐等。
根据观察,在不久的将来,移动手机终端将会在各个方面具有新的发展。
因此,本程序开发的初衷是为广大安卓手机学生用户提供一个简单,明了,占用内存小的android日程管理程序。
3.3本程序UI设计
本程序利用AndroidSDK的强大的可扩展的视图系统,建构了一个应用程序的基本组件,直观的主页,简单的操作更方便广大用户的使用,且可以访问另一个程序的数据库(emailpush),利用资源管理器提供各种非程序代码的资源让应用程序去使用,利用活动管理器来管理所有应用程序的生命周期及提供常用的导航回退功能。
并根据程序的易操作性,互动性,前期设计主页,课程表管理,日程管理,课程表输入,日程输入,课程表设置评分等八个UI界面,加入渐入淡出通知窗口,使使用者更直观的了解程序的操作,更熟练的使用程序,并实现与作者联系,给作者评分的功能。
3.4程序操作说明
Android日程管理系统用户在设备端进行操作,android平台一般用在全触屏手机上,故软件操作基本上使用手指在触屏上滑动以及点击进行操作,操作界面直观,单击屏幕确定选择,点击目录按钮弹出子目录进行设置,向上滑动上移屏幕,向下滑动下移屏幕。
3.5程序的用例图
用例图是由软件需求分析到最终实现的第一步,它描述人们希望如何使用一个系统。
用例图在需求分析阶段有很重要的作用,它是作为参与者的外部用户所能观察到的系统功能的模型图,它显示多个外部参与者以及他们与系统提供的用例之间的连接。
整个开发过程都是围绕需求阶段的用例进行的。
通过分析确定本系统的抽象参与者有:
终端用户一类。
终端用户:
终端用户可以实现新建课程表,填写课程表,设置课程表,删除课程表,新建日程,填写日程,删除日程,给作者评分,查看软件相关,给作者发送邮件等。
终端用户控制程序的用例图如图3.1所示。
图3.1终端用户控制程序的用例图
第四章总体设计
4.1总体设计概述
经过了需求分析阶段的工作,系统必须“做什么”已经清楚了,现在是决定“怎么做”的时候了。
总体设计的基本目的就是概括地回答“系统应该如何实现?
”这个问题。
通过这个阶段的工作将划分出组成系统的物理元素。
总体设计部分的重要任务就是确定软件的总体结构,也就是要确定系统中每个程序是有哪些模块组成的,以及这些模块之间的关系,同时也包括数据库的设计。
4.2总体设计思想
本日程管理软件设计的主要从以下8个方面进行构思:
1.用户主界面的设计。
2.课程表管理的实现。
3.日程管理的实现。
4.作者信息的显示。
5.android系统中gmail的调用。
6.目录菜单选项的设计和功能实现。
7.数据库的更新和删除功能的实现。
8.评分系统的实现。
首先,根据需求分析可以知道,应用程序应包含三个主要的用户界面,这里需要进一步分析每个用户界面中应该包括哪些显示内容。
在“欢迎界面”中,需要对程序功能有一个直观的表示,要显示程序所能实现的功能,在“课程表界面”要显示所存课程的具体信息。
在“日程界面”中,显示当前的所有日程信息,显示日程的题目,以及创建时间。
根据对用户界面显示内容的分析,绘制出用户界面的草图,如图4.1所示。
图4.1用户界面草图
4.3数据库设计
本软件中有两部分数据需要存储,一个是课程管理界面的数据,另一个日程管理的数据。
因此选择SQLite数据库作为存储数据的方法,建立数据库forcasts.db,并且建立两张表diary和course,分别存储显示页面的数据和详细页面的数据。
表4.2详细页面的数据库表diary的结构
属性
数据类型
说明
_id
integer
自动增加的主键
Title
integer
日程题目
Body
integer
日程详细信息
Created
integer
自动获取日程更新时间
表4.3显示页面的数据库表course的结构
属性
数据类型
说明
_id
integer
存储course组件id
Name
integer
课程