基于Android的个人健康APP软件设计与开发毕业设计论文.docx
《基于Android的个人健康APP软件设计与开发毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于Android的个人健康APP软件设计与开发毕业设计论文.docx(31页珍藏版)》请在冰豆网上搜索。
基于Android的个人健康APP软件设计与开发毕业设计论文
毕业设计
题目:
基于Android的个人健康APP软件设计与开发
姓 名:
(宋体小三居中)
学 号:
(班级+学号)(字号同上)
学院:
(字号同上)
专业:
(字号同上)
同组人:
(字号同上)
指导教师:
(字号同上)
协助指导教师:
(字号同上)
(阿拉伯数字)年月日(宋体小三居中)
摘要
随着移动平台的崛起,越来越多的传统PC软件被移植到移动平台,比如ipad,iphone,Android等智能终端设备,在这些平台中,Android占领着最大的市场份额,所以为Android用户开发满足日常使用的软件成为了现在的一大热门。
本次设计选用了时下比较热门的Android平台来作为开发技术,实现了一个个人健康APP软件。
本论文将逐步介绍基于Android平台的移动个人健康APP的开发背景和意义,接着详细介绍了本系统的分析、设计与实现过程,最后对本论文做了总结。
关键字:
Android、个人健康APP、SQLite、手机
ABSTRACT
Withtheriseofmobileplatforms,moreandmoretraditionalPCsoftwarehasbeenportedtomobileplatforms,suchasipad,iphone,Androidandothersmartterminalequipment,intheseplatforms,Androidoccupythelargestmarketshare,soastodevelopAndroidusersmeetthedailyuseofsoftwarehasbecomeapopularnow.
ThisdesignchoicenowadaysmorepopularAndroidplatformasadevelopmenttechnology,theexpenseofasmalllivinghousekeepersoftware,userscanmanageeverydayexpensesandincomesituationthemselvesthroughthesmallsoftware,statisticseachmonthincome.
ThispaperwillgraduallyintroducethebackgroundandsignificanceofthedevelopmentofAndroid-basedmobilelifelittlehousekeeper,andthendetailstheanalysisofthesystemdesignandimplementationprocess,thelastofthepapersummarized.
Keywords:
Android,livinglittlehousekeeper,SQLite,phone
前言
随着移动平台的崛起,越来越多的传统PC软件被移植到移动平台,比如ipad,iphone,Android等智能终端设备,在这些平台中,Android占领着最大的市场份额,所以为Android用户开发满足日常使用的软件成为了现在的一大热门。
在现在移动平台爆发的时代,传统的PC软件没有办法满足用户了,如果说PC的软件只能在固定的地点使用,那么现在的移动平台软件就是能够无时无刻地使用,想使用它,只需要掏出自己的手机就可以立即使用,随时随地得到最新的资讯,不再被传统PC禁锢在办公室或家中,那些必须有电源的地方了。
本设计与传统的PC软件有很大的优势,与现在的Android中其他软件相比,也具有一定的优势。
现在Android软件使用风格可谓是千变万化,有很多工具软件无法满足用户的日常需要,还有很多软件由于使用风格不一,使得很多用户无法适应,把一些使用率很高的日常软件的风格统一,并且把它们的功能集中在一个软件平台中,就能使上述问题得以解决,不仅使使用风格得到了统一,也使得用户得到一站式的日常工具使用体验,并且可以使这些软件中的功能得到互补,相互共享资源,为本来硬件条件就不是很好的手机提供一个能够轻松运行的软件。
本软件的优势体现:
1.随时随地使用,不受地点限制;
2.统一移动平台软件使用风格;
3.操作方便快捷、多用户独立使用;
4.数据永久性保存,随时可以翻阅查看。
1绪论
课题的研究背景
现在智能手机可谓是爆发式增长,传统手机在不断地消失,诺基亚就是在这样的环境中受到了极大的困扰,现在主要有三个使用率最高,关注度最高的手机平台,分别是:
Android,ios和windowsphone平台,这三个平台中Android的占有率最高,但是设备种类非常复杂,碎片化严重,而ios设备由于apple公司的独特管理理念,得到了一个完整的生态系统,管理得井井有条,几乎没有碎片化的现象和趋势,但是这也导致了其设备种类不多,无法满足所有用户的缺点,还有windowsphone虽然现在炒作得很火热,但是其用户量相对其他的两个平台来说几乎是可以或忽略不计,所以在这里不做讨论。
Android平台是一个面向大众的系统,分布在低端,中端和高端市场中,在各个阶段的是市场中都有很受欢迎的机型,并且Android是开源的,开发者随时都可以查看系统源代码,并且使用时下最流行的java作为其主要的开发语言。
由于这些特点,使得Android成为现在市场占有量最大的软件平台,在这样的平台上面开发一款独特的日常生活软件尤为必要的。
本课题研究现状
Android一词的本义指“机器人”。
同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称该平台由操作系统、中间件、用户界面和应用软件组成号称是首个为移动终端打造的真正开放和完整的移动软件。
Android是基于Linux内核的软件平台和操作系统早期由Google开发在华注册商标名为“安致”,后由开放手机联盟、OpenHandsetAlliance开发。
它采用了软件堆层,softwarestack,又名以软件叠层的架构主要分为三部分。
低层以Linux内核工作为基础,只提供基本功能,其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。
另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。
Android在未公开之前常被传闻为Google电话或gPhone。
大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。
到了2010年1月,Google开始发表自家品牌手机电话的NexusOne。
目前最新SDK版本为Android。
本文研究内容
本文主要介绍和阐述一个手机平台的软件如何利用SQLite数据库技术实现Android平台的数据保存和展示、管理等等工作。
本应用软件使用简单,易学易会,非常容易上手,主要是在UI设计上采用了移动平台上最主流的设计理念:
简单和引导,虽然界面相对传统PC界面显得简单,但是其功能是毫不逊色的,在保留其功能全面性的基础上,设计了最简单的界面来进行展示和管理,使得用户能够不需要事先的任何学习,就可以熟练地进行操作。
本软件包括的功能有用户注册、用户登录、支出管理、收入管理和便笺管理等等模块。
软件的设计步骤:
2)了解相关资料,了解本软件的研究意义,确定实现技术与方式设计总目标及其整体框架。
3)了解用户的使用习惯和使用心理,进行用户需求分析和规范。
4)草拟功能模块,画出模块图。
5)搜集软件制作素材。
6)数据库设计及完善,创建数据表。
7)编写代码实现各个功能模块。
8)根据Android特有的使用风格进行布局与优化。
9)完成系统测试并改进。
本论文框架介绍
本文详细介绍了基于Android手机平台的个人健康APP的设计实现的全过程。
从开始到程序设计的实现,将在一下的几章中予以介绍:
第1章绪论,这一章主要是对本次毕业设计所开发的系统进行问题的定义,通过问题的定义明白需要做些什么,并且对开发内容简单的介绍了一下;同时本章还对课题的研究背景与研究意义进行分析,对开发本系统的可行性分析还有对论文各章内容的简要介绍。
第2章相关技术及平台介绍,对涉及到的理论知识和用到的开发工具做相关阐述。
第3章系统分析,主要介绍了本系统需要实现的功能模块和本系统的数据库设计、页面的详细设计等。
第4章系统设计,主要介绍了本系统的整个设计过程、设计思路以及设计中应该注意的问题。
第5章系统编码实现与测试,主要介绍了本设计的实现环境和实现,同时也介绍了测试在软件开发环节中的重要性和给出本系统的测试过程与结论。
最后:
总结、致谢、参考文献。
2相关技术及开发平台
开发工具及环境简介
EclipseClassic是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。
Eclipse是著名的跨平台的自由(IDE)。
最初主要用来开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。
Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。
许多软件开发商以Eclipse为框架开发自己的IDE。
Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。
IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。
目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、RationalSoftware、RedHat及Sybase等。
Eclipse是一个开发源码项目,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。
近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。
a.SQLite3
SQLite3是一款轻型的数据库,是遵守ACID的关联式。
它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
它能够支持Windows/Linux/Unix等等主流的,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
SQLite第一个诞生于2000年5月.至今已经有10个年头,SQLite也迎来了一个版本SQLite3已经发布。
b.ADT
目前开发所用的开发工具是Eclipse,在编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。
c.AndroidSDK
SDK:
(softwaredevelopmentkit)开发工具包。
被用于为特定的、软件框架、硬件平台、操作系统等建立的开发工具的集合。
因此,AndroidSDK指的既是专属的软件开发工具包。
Android系统
Android一词的本义指“机器人”同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
Android是基于Linux内核的软件平台和操作系统早期由Google开发在华注册商标名为“安致”,后由开放手机联盟OpenHandsetAlliance开发。
它采用了软件堆层softwarestack,又名以软件叠层的架构,主要分为三部分。
低层以Linux内核工作为基础,只提供基本功能,其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。
另外为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。
Android在未公开之前常被传闻为Google电话或gPhone。
大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。
到了2010年1月,Google开始发表自家品牌手机电话的NexusOne,目前最新SDK版本为Android。
AndroidFeatures特性
Android系统有如下的几大特性[1]
·应用程序框架支持组件的重用与替换
·Dalvik虚拟机专门为移动设备做了优化
·内部集成浏览器该浏览器基于开源的WebKit引擎
·优化的图形库包括2D和3D图形库3D图形库基于OpenGLES
·SQLite用作结构化的数据存储
·多媒体支持包括常见的音频、视频和静态印象文件格式如MPEG4,MP3,AAC,
AMR,JPG,PNG
·GSM电话依赖于硬件
·蓝牙Bluetooth,EDGE,3G,andWiFi依赖于硬件
·照相机GPS指南针和加速度计依赖于硬件
·丰富的开发环境包括设备模拟器、调试工具、内存及性能分析图表;
Android系统的四大组件
在Android系统中为我们提供了四大基本组件每个组件是一个视图但是有些是可见的有些是不可见的视图像ActivityContentProvider是可见的视图Service和BroadcastReceiver是不可见的它们只在系统的后台运行。
下面分别介绍四大组件[3]
1Activity简介
在Android系统中Activity提供可视化的用户界面,一个Android应用通常由多个
Activity组成。
多个Activity组成了Activity栈Stack,当前活动的Activity处于栈顶。
Activity有自己的生命周期,由Android系统来控制。
2Service简介
顾名思义Service就是运行在后台的一种服务程序一般很少和用户交互因此没有可视化界面定义一个Service类比较简单,只要继承Service类,实现其生命周期中的方法就可以了。
一个定义好的Service必须在配置文件注册通过元素声明才能使用.Service有自己的生命周期我们可以调用startService()启动
一个Service或者bindService()方法来绑定一个存在的Service
3BroadcastReceiver简介
BroadcastReceiver顾名思义广播接收器,它和事件处理机制类似,只不过事件处理机制是程序组件级别的。
例如某个按钮的单击事件而广播事件处理机制是系统级别的。
到目前为止我们可以使用Intent来启动一个程序组件,我们还可以通过使用sendBroadcast()方法来发起一个系统级别的事件广播来传递消息。
我们可以在你的应用程序中实现BroadcastReceiver来监听和响应这些广播的Intent;
4ContentProvider简介
ContentProvider用来保存和检索数据并且使应用程序之间相互访问数据成为可能。
它是跨应用程序共享数据的唯一方法。
Android为常用的数据类型如音视频、图片和联系方式等提供了大量的Content
Provider。
它们被定义在包下面。
通过这样定义好ContentProvider我们可以方便的进行数据操作。
当然我们必须拥有适当的权限。
我们也可以自己来定ContentProvider共享我们的数据方便用户的访问。
3系统分析
概述
系统分析是在总体规划的指导下,对某个或若干个子系统进行深入仔细地调查研究,确定新系统逻辑功能的过程。
这一阶段的主要任务是由系统分析员了解每个业务流程,工作流程,广大用户的需求,运用系统开发理论、开发方法和开发技术设计出一个计算机化的信息系统。
3.1.1系统分析的原则
在系统分析中存在很多困难,为了克服困难,做好分析工作,在进行系统分析时应遵循系统分析的原则,这样才能保证分析工作能够顺利进行,系统分析的原则有:
1.逻辑设计与物理设计分开的原则
2.面向用户的原则
3.结构化分析的原则
通过实际调查并与相关用户交流后,分析商品订购网模拟网站的具体的要求,确定本网站系统的逻辑功能,以满足用户的各项要求,完成相应的各项功能,提高网站的实用水平。
在近期目标完成后,该系统应该有很强的扩充性,便于在此基础上进行扩充式开发,为以后的发展及扩充打好基础。
3.1.2系统分析的方法
该系统采用以抽象和分解为手段,并且采用结构化分析方法进行系统分析,根据实际调查研究,对系统进行自顶向下的逐层分解,逐步细分,逐步求精,建立新系统的逻辑模型,这个逻辑模型将尽可能避免使用计算机术语,让其尽可能的简单化、通俗化,便于设计者和浏览者的沟通与交流经验。
结构化分析方法的基本思想是该系统采用结构化分析方法,以抽象和分解为手段,对系统进行自顶向下的逐层分解,逐步细分,逐步求精,从而达到易于理解的目的。
性能需求分析
为了保证软件能够长期、安全、稳定、可靠、高效地在Android设备上运行,本系统应该满足以下性能需求。
实用性原则
充分利用手机的2G/3G网络,为本软件提供信息支持,充分考虑用户获取信息的心理需求,在简洁实用的基础上对软件界面层级进行布局。
可扩展性与可维护性原则
为适应将来的发展,软件应该具有良好的可扩展性和可维护性。
系统设计尽可能模块化、组件化,由于Android设备分辨率的各不相同,使软件可灵活配置,适应不同的的Android终端设备。
系统的可扩展性应包括能接纳已有的系统和在今后系统软硬件扩展时,能有效地保护已有的资源建设。
当用户的需求有所改变时,可以对其快速的配置改变,以应对用户的需求,有一个较好的应用平台——Android设备,能容易地安装和卸载。
系统易于扩充升级,既能满足当前业务的需求,将来的需求改变升级也被考虑在内。
安全可靠性原则
本软件是基于手机设备使用的,其安全性与其他的应用软件是一样的,本软件不会残留用户任何的隐私信息。
用户界面美观原则
界面经过对用户心理的调研和统计后。
并参考时下流行的软件风格进行设计,在此基础上,加入了对用户具有诱导性的按键设计,使得用户在初次使用的时候就会使用,而不需要在使用的时候进行特别的学习和指导。
准确性与原则性原则
软件的准确性是成败的关键,本软件最核心的技术便是通过SOAP技术与互联网上提供的接口进行交互,本软件采用特殊处理来保证数据获取的准确性和及时性,从软件的布局还是数据呈现方面,都是经过对用户心理的研究和与其他数据对比的来的。
易用性原则
软件是Android平台上的软件,自然保留了Android软件的应用性原则,平易近人,不需要额外学习,看到任何一个界面都不会不知所措,会有不同含义的图标进行提示下一步操作,保证用户使用时不会迷路。
系统可行性分析
该阶段通过对系统总目标的初步调研与分析,提出可行性方案并进行论证。
在此,主要从技术可行性、经济可行性和操作可行性三方面进行分析。
经济可行性
本软件采用手机软件的形式呈现,与传统的pc软件相比具有,携带方便,随之随地获取信息的特点,不受地理和时间的限制的特点,可以充分充分利用人们的闲暇时间,从这个角度看,该软件可行。
技术可行性
开发工具:
EclipseClassic数据库环境:
sqlite3
系统环境:
MicrosoftWindows7或以上版本
软件实现是依靠基于Android系统的开发技术,使用的是java为主的开发语言进行开发,再加上SQlite数据存取技术。
操作可行性
软件采用最主流的Android软件应用开发风格,并使用Android的原生组件进行开发,界面友好,简洁易懂,组建布局具有诱导性,用户使用极其方便快捷。
系统功能需求
可以登录注册,登陆成功有欢迎语。
“***先生/女士,早上/下午/晚上好。
”所以注册必须有姓名、性别、生日。
欢迎语下面两个按钮“健康信息录入”、“健康信息查询”。
点击“健康信息录入”,可以录入运动数据和健康指数。
运动数据包括:
晨跑(有里程)、早操晨练、日间行走、骑行(有)、游泳、球类运动、晚间跑步(有)。
都是一样的录入起止时间,有里程的还要录入里程。
健康指数包括:
身高、体重、视力、听力、骨质、肾脏、四肢、血液。
提供一个字符串的录入就行。
点击“健康信息查询”,可以进行运动数据查询、健康指数查询。
运动数据查询:
一个按钮查一个运动。
提供一个日期选择框“**年*月*日”。
再把以上数据全部调出打印在屏幕上。
有里程的提供一个时速,计算出来。
健康指数查询:
比如查身高,直接打印最近一个月已有数据。
下面加个“显示更多”,点击了再打印一个月。
“日期+数据”。
系统使用流程分析
本系统完成一个个人健康APP功能,首先用户需要注册一个账号才能管理本系统,如果已经有帐号的可以直接登录本系统,登录通过后进入系统住界面,信息录入和信息查询两个模块,用户可以选择其中一个模块进行操作,操作完毕后可以退出本系统。
图是系统的流程图:
图软件管理流程图
4系统设计
系统设计目标
在系统分析的基础上,设计出能满足预定目标的系统的过程。
系统设计内容主要包括:
确定设计方针和方法,将系统分解为若干子系统,确定各子系统的目标、功能及其相互关系,决定对子系统的管理体制和控制方式,对各子系统进行技术设计和评价,对全系统进行技术设计和评价等。
本系统是设计目标是建立一个基于Android的个人健康APP软件,基本可以的满足人们对常用图片、日志和音乐文件的记录或收藏功能,系统具有上手简单、操作方便快捷的特点。
用户界面友好、操作简单,每一步骤的操作都经过精心的设计,将复杂的统计运算过程隐藏于简单的操作之下,系统的设计能降低使用前的培训、实施和使用中的维护时间。
通过合理而先进的网络设计及软、硬件的优化选型,足可保证系统的可靠性与容错性。
系统以用户需求为目标,以方便用户为原则,处处为使用者着想。
系统功能模块设计
本系统采用SQLite数据库来实现数据的持久性管理,功能模块方面本系统包括用户注册模块、用户登录模块、信息录入和查询模块等等,系统的模块架构设计如图所示:
图系统功能模块图
工程文件结构设计
在程序开发阶段,首先确定“即基于Android的个人健康APP软件”的工程名称为HealthyApp,根据程序模块设计的内容,建立HealthyApp项目,HealthyApp项目,的文件结构如图所示:
图工程结构图
为了使代码文件结构更加清晰,HealthyApp工程设置了多个命名空间,分别保存了用户界面、数据适配器、常用类库和实体多个包,源代码的名称以及说明如