移动应用开发课程设计报告.docx

上传人:lao****ou 文档编号:444705 上传时间:2023-11-18 格式:DOCX 页数:26 大小:189.37KB
下载 相关 举报
移动应用开发课程设计报告.docx_第1页
第1页 / 共26页
移动应用开发课程设计报告.docx_第2页
第2页 / 共26页
移动应用开发课程设计报告.docx_第3页
第3页 / 共26页
移动应用开发课程设计报告.docx_第4页
第4页 / 共26页
移动应用开发课程设计报告.docx_第5页
第5页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《移动应用开发课程设计报告.docx》由会员分享,可在线阅读,更多相关《移动应用开发课程设计报告.docx(26页珍藏版)》请在第一文库网上搜索。

1、移动应用开发课程设计体重档案APP目录1概述31.1 项目背景31.2 系统目标32需求分析42.1 系统功能分析42.1.1 数据保存42.1.2 图标功能42.1.3 诊断功能52.1.4 更多功能52.2 系统平台62.2.1 Android开发环境介绍62.2.2 Android开发平台搭建63概要设计83.1 总体设计83.1.1 系统总体结构83.1.2 子系统系统接口93.2 数据库设计93.2.1 数据库E-R图设计93.2.2 数据表设计103.3 相关技术介绍103.3.1 Activity103.3.21 ntent113.3.22 Service113.3.23 1ay

2、out布局123.3.24 件介绍134函数设计154.1 函数列表154.2 函数调用图165系统实现175.1 设计过程175.1.1 “图表”界面内功能的实现175.1.2 “数据”界面内各功能的实施185.1.3 “诊断”界面内各功能的实现205.1.4 “更多”界面内各功能的实现216使用说明226.1.1 体重档案软件在电脑模拟环境下测试226.1.2 体重档案软件在ANDRoID手机下测试247项目总结26摘要:Window操作系统的诞生成就了微软帝国,同时也造就了PC时代的繁荣,然而如今,以Android和iPhone手机为代表的智能移动设备的发明与互联网云技术的兴起预示着移动

3、互联网时代已经来临。在这个互联网繁荣的时代,有一颗超新星,以它独特性能优势与人性化的UI设计使它在短短的几年迅速的占领了智能移动设备的市场份额,它就是Goog1e的Android!这也意味着Goog1e在移动互联网时代开始抢跑并领跑。Android是基于1inux平台完全开源的手机操作系统,同时开发语言为Java。在本次课程设计中我们组选择了以Android为平台的手机体重记录app来作为我的课程设计,选择体重记录app不仅可以提升技术,同时也很实用,为人们时刻了解自身的体重和健康带来了方便。也有利于提升自己的气质,健康生活关键词:移动互联网时代Android体重记录app健康生活1概述1.1

4、 项n背景胖是历来已久的一种多因素引起的代谢障碍疾病。早在1948年,世界卫生组织已将“肥胖”列入疾病名单。随着全球经济的快速发展,移动互联网的兴起、人民生活水平的提高,加上不合理的膳食结构、不良生活方式等出现,肥胖已成为公共卫生焦点问题。随着人们对肥胖危害的认知度提高,减重的治疗方法也在历久弥新,健康生活,控制体重已日益成为人们所重视的问题。与此同时,大众审美观念的趋势也促使了人们对自身体重的高度重视。随着移动互联网和智能手机的发展和不断进步,当今市场上已出现各种五花八门的健康记录APP,几乎所有人的智能手机上都会有一款检测身体状况的APP,这些APP可以很好的帮助人们了解自身身体状况,及时

5、做出调整。1.2 条统目标根据用户对该类软件的使用要求,我们组制定了如下系统目标: 操作简单、易于掌握、界面简洁清爽。 方便对屏幕进行触摸操作。 要包含对身体状况的评估,并记录长时间内的数据。 APP占用内存不应过大。 系统运行稳定,不能和手机固有的软件冲突。 保密性好,安全可靠。2需求分析2.1系统功能分析该系统具有的功能有: 可以长时间保存体重状况 根据数据显示出散点图,直观反映体重变化情况 可以查找出某一天的数据 可以根据输入的身高、体重、性别判断出身体状况 给出合理饮食建议 介绍一些与身高体重相关的指标2.1.1 数据保存建立了一个数据库用来记录长期的数据。如图:2.1.22.1.3

6、图表功能通过图表直观的反映出体重变化情况。如图:joIaMsf1*tBM2.1.42.1.5 诊断功能可以根据输入的身高、体重、性别判断出身体状况,如图:2.1.62.1.7 更多功能个人信息的设置和系统功能的设置等,如图:2.2条统平台2.2.1 AndrOid开发环境介绍AndroiC1平台使用JaVa编程语言来开发应用程序,而AndrOid提供了对Java的核心支持。考虑到JaVa虚拟机的执行效率和占用资源情况,GOOg1e重新设计了JaVa的编译器,命名为Da1Vik。DaIVik是经过优化的JaVa编译器,允许在有限的内存中同时运行多个虚拟机的实例,并且每一个Da1vik应用作为一个

7、独立的1inux进程执行,独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭。项目的开发在ECIiPSe环境中进行,由于进行的是AndrOicI应用程序的开发,由以上分析可知,AndrOid平台的搭建需要AndroidSDK、JavaSDK和AvD三个软件。222AndrOid开发平台搭建JaVaJDK的安装;(选择适合自己电脑配置的版本)下载完成后,开始安装配置java的环境变量(1)新建变量名为Javajome”,变量值为jdk的安装路径(2)编辑(若变量中没有则新建)变量名为“PATH”,在原变量名字后加上”;%JAVA_HOME%bin;%JAVA_HOME%jrebin”(3)编辑

8、(若变量中没有则新建)变量名为“C1ASSPATH,变量值M.;%JAVA_HOME%Hb;%JAVA_HOME%1ibdt.jar:%JAVA_HOME%1ibtw1s.jar,F确认环境配置是否正确AndroidStUdio的下载,链接:http:/too1s,android-studio,orgo下载完成后开始安装3概要设计3.1总体设计3.1.1系统总体结构在这里说明系统的总体结构流程图如下图所示。3.1.2子系统系统接口图表界面数据界面诊断界面多功能界面3.2数据库设计3.2.1数据库E-R图设计数据库的概念设计,即利用数据模型进行概念数据库的模式设计。根据体重档案系统的需求,身体状

9、况3.2.2数据表设计数据库的逻辑设计,即把概念设计得到的概念数据库模式变为逻辑数据模式,它依赖于DBMSo根据体重档案系统的需求分析及数据库的概念设计,建立数据库了info_dbo建库语句:createdatabaseinfo_db;用户信息表(USertb1)列名数据类型是否允许为空说明birthdate是出身日期weightf1oat是体重heightf1oat是身高sexboo1否性别表3.5身体状况信息表(hea1tb1)列名数据类型是否允许为空说明BMIf1oat否BMI值BMRf1oat是BMR值3.3相关技术介绍3.3.1 ActiVity在Android应用程序中,一个活动A

10、CtiVity通常就是一个单独的界面。每一个界面都被实现为一个独立的类,并且从ACtiVity基类中继承而来,ACtiVity将会显示由空间组成的用户接口,并对事件做出响应。大多数的应用都是由多个ACtiVity显示组成。简单的说,ACtiVity代表一个用户所能看到的界面,主要用于处理应用程序的整体性工作,例如,监听系统事件如按键事件、触摸屏事件等,为用户显示指定的View,启动其他Activity等。所有应用的Activity都继承于android.app.Activity类,该类是Android提供的基层类,其他的ACIiVity继承该父类后,通过父类的方法实现各种功能,这种设计在其他领

11、域也较为常见。3.3.2 IntentAndroid基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent,Intent提供了一种通用的消息系统,它允许在你的应用程序与其他的应用程序间传递Intent来执行动作和产生时间。使用InIem可以激活Android应用的三个核心组件:活动、服务和广播接收器。Inten1可以划分为显示意图和隐式意图。显示意图调用Intent,Se1QaSS方法明确制定了组件名的Intent为显示意图,显示意图明确制定了Imem应该传递给那个组件,在同一个应用内部使用的。隐式意图没有明确指定组件名的Intern为隐式意图,AndrOid系统会根据隘式

12、意图中设置的动作(action)类别(CaIegOry)、数据(UR1和数据类型)找到最合适的组件来处理这个意图。Intent负责对应用中一次操作的动作、动作涉及数据和附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。因此,Inieni在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的结构。3.3.3Service如果把Activity比喻为前台程序,那么Service就是后台程序,Service的整个生命周期都只会在后台执行。SerViCe跟ACtiVity一样也由Inten

13、t调用,由于SerViCe在后台运行,所以没有界面,用来处理耗时比较长,而且SerViCe不是一个单独的进程,也不是一个单独的线程。SerViCe有两种类型:本地服务(1oca1Service):用于应用程序内部;远程服务(RemoteSercie):用于android系统内部的应用程序之间。前者用于实现应用程序自己的一些耗时任务,比如查询升级信息,并不占用应用程序比如AetiVity所属线程,而是单开线程后台执行,这样用户体验比较好。后者可被其他应用程序复用,例如天气预报服务,其他应用程序不需要再写这样的服务,调用已有的即可。Service的生命周期,Service有StartService

14、和bindService两种启动Service方法,每种方法Service的生命周期是不一样的。通过StartServiceC)Service会经历OnCreate一OnStartCommandOStopService的时候直接OnDestroy,如果是调用者直接退出而没有调用StopService的话,Service会一直在后台运行,下次调用者再起来仍然可以StopService;通过bindService()SerViCe只会运行Onereate()onBind()这个时候调用者和Service绑定在一起UnbindService的时候OnUnbindO一OnDestroyedO调用者退出

15、了,Srevice就会调用OnUnbind()OnDestroyedO。在这里需要注意的是Service的OnCreate的方法只会被调用一次,就是你无论多少次的StartService又bindService,Service只被创建一次。如果先是bind了,那么start的时候就直接运行Service的OnStart方法,如果先是start,那么bind的时候就直接运行OnBind方法。如果你先bind上了9就stop不掉了,只能先UnbindSCrViCC,再StopService,所以是先start还是先bind行为是有区别的。3.3.41ayout布局布局方式有很多种,比如线性布局(1inear1ayout)相对布局(Re1ative1ayout表格布局(Tab1e1ayout)、网

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 汇报材料

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

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



客服