




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于安卓平台的手机计步器_毕业设计论文北京邮电大学世纪学院毕业设计论文题目基于安卓平台的手机计步器的设计72013年6月1日北京邮电大学世纪学院毕业设计论文任务书姓名学号专业通信工程系院通信与信息工程设计论文题目基于安卓平台的手机计步器的设计题目分类工程设计工程技术研究软件工程如CAI课题等专题研究艺术设计其他题目来源自然科学基金与部省市级以上科研课题企事业单位委托课题院级课题自拟课题其他指导教师指导教师组组长及成员姓名职称工作单位备注毕业设计论文的内容和要求步行有益于健康步行热在欧美等发达国家十分盛行各种电子计步器也日趋流行在安卓平台上开发一款手机计步器软件采集在步行过程中手机传感器的输出信号研究合适的记步算法在安卓平台下编程实现该算法实现每日步行里程消耗热量等统计功能开题报告2000字左右毕业论文不少于15000字要求概念正确调理清晰文笔流畅论文中的数学公式必须用OFFICE自带的公式编辑器输入原理框图等用VISIO绘制计步器软件可在安卓平台手机上正常运行并实现准确记步1李刚疯狂的ANDROID讲义M电子工业出版社201172吴亚峰苏亚光ANDROID20游戏开发实战宝典M人民邮电出版社201073李宁ANDROID开发完全讲义M中国水利水电出版社201244严蔚敏吴伟民数据结构M清华大学出版社200735李刚疯狂JAVA讲义M电子工业出版社2008106BRUCEECKEL著JAVA编程思想陈昊鹏M机械工业出版社2007623357苏亚光吴亚峰索依娜ANDROID平台下传感器技术开发计步器应用J电脑编程技巧与维护2010238熊刚基于ANDROID的智能手机的设计与实现D武汉理工大学2010毕业设计论文进度计划从正式启动时间开始以周为单位填写第12周进行课题调研文献查阅开题报告第3周第4周ANDROID开发JAVA语言第周第8周中期检查第9周第11周第13周第1415周第16周教学单位意见审核人签字年月日备注1由指导教师撰写可根据长度加页一式二份教务处系院各留存一份发给学生一份任务完成后附在论文内2凡审核不通过的任务书请重新申报北京邮电大学世纪学院毕业设计论文诚信声明本人声明所呈交的毕业设计论文题目基于安卓平台的手机计步器的设计是本人在指导教师的指导下独立进行研究工作所取得的成果除了文中特别加以标注和致谢中所罗列的内容以外毕业设计论文中不包含其他人已经发表或撰写过的研究成果也不包含为获得北京邮电大学或其他教育机构的学位或证书而使用过的材料申请学位论文与资料若有不实之处本人承担一切相关责任本人签名日期毕业设计论文使用权的说明本人完全了解北京邮电大学世纪学院有关保管使用论文的规定其中包括学校有权保管并向有关部门送交学位论文的原件与复印件学校可以采用影印缩印或其它复制手段复制并保存论文学校可允许论文被查阅或借阅学校可以学术交流为目的复制赠送和交换学位论文学校可以公布学位论文的全部或部分内容本人签名日期指导教师签名日期题目基于安卓平台的手机计步器的设计摘要ANDROID是一个针对移动设备的操作系统和软件平台随着智能手机的兴起渐渐成为了占有市场最大比重的移动平台操作系统同时也越发地受到广大用户的青睐ANDROID采用LINUX内核由GOOGLE和开放手机联盟于2007年11月5日发布容许使用JAVA语言来开发和管理代码作为一个年轻并且流行的移动应用平台目前ANDROID软件的应用面还是比较广泛的比如聊天通讯上网等等但涉及传感器方面的应用软件还比较少本文在分析讨论ANDROID手机软件开发原理的同时针对智能手机用户日常使用的实际情况对用户手机的日常功能需求进行调查发现对于经常走路上班或者锻炼的朋友来说拥有一款精美功能齐全的计步器是非常必要的将精确计量和智能运行技术完美结合只需开启软件通过感应器传来的信息APP能够变化算法测得你的走路步数速度以及消耗的卡路里量与行走历程一款合适的计步器在无形中会量化用户的健身效果帮助用户坚持锻炼以达到更好的健身效果关键词ANDROID智能手机平台计步器JAVATITLETHEDESIGNOFMOBILEPHONEPEDOMETERBASEDONTHEANDROIDPLATFORMABSTRACTANDROIDISANOPERATINGSYSTEMANDSOFTWAREPLATFORMFORMOBILEDEVICESWITHTHEDEVELOPMENTOFSMARTPHONEITGRADUALLYBECAMETHEBIGGESTPROPORTIONINTHEMARKETOFMOBILEOPERATINGSYSTEMATTHESAMETIMEITBECAMEMOREANDMOREPOPULARAMONGUSERSANDROIDUSESTHELINUXKERNELANNOUNCEDONNOVEMBER52007BYGOOGLEANDTHEOPENHANDSETALLIANCEANDITALLOWTOUSEJAVALANGUAGETODEVELOPANDMANAGETHECODEASAYOUNGANDPOPULARMOBILEAPPLICATIONPLATFORMTHEAPPLICATIONOFANDROIDISRELATIVELYWIDESUCHASCHATCOMMUNICATIONANDINTERNETHOWEVERTHEAPPLICATIONOFSENSORSISLESSTHETHESISOFTHISESSAYISTOANALYZEANDDISCUSSTHEPRINCIPLEOFSOFTWAREDEVELOPMENTOFANDROIDMOBILEPHONEALSOTHEANOTHERPURPOSEINTHISESSAYISTOCONDUCTANINVESTIGATIONINTHEDAILYFUNCTIONALDEMANDFORMOBILEPHONEUSERSBASEDONTHESITUATIONOFDAILYUSESOFSMARTPHONEUSERSTHERESEARCHSHOWSTHATITISVERYIMPORTANTTOHAVEAFULLYFUNCTIONALPEDOMETERFORPEOPLEWHOOFTENWALKTOWORKOREXERCISETHEPEDOMETERMAKESAPERFECTCOMBINATIONOFACCURATEMEASUREMENTANDINTELLIGENTOPERATIONALTECHNOLOGYWHENTHESOFTWAREAREREADYTORUNITCANUSETHEMASSAGEWHICHACQUIREFROMSENSORTOCALCULATETHESTEPFREQUENCYSPEEDTHECONSUMPTIONOFCALORIESANDWALKINGJOURNEYOFYOURWALKANAPPROPRIATEPEDOMETERCANQUANTIFYUSERSFITNESSEFFECTINPOTENTIALLYINTHISWAYITCANMAKEUSERSTOKEEPEXERCISINGINORDERTOACHIEVEBETTERFITNESSEFFECTKEYWORDSANDROIDSMARTPHONEPLATFORMJAVAPEDOMETER目录1前言111智能手机系统开发背景112课题的目的与意义213本文主要研究内容22相关技术介绍421开发工具及环境简介4211开发工具4212开发环境522ANDROIDSDK常见公共类库介绍6221ANDROID的传感器6222ANDROID界面ACTIVITY介绍63系统需求分析831可行性研究8311经济可行性8312技术可行性8313操作可行性932性能需求分析10321实用性原则10322可扩展性与可维护性原则10323安全可靠性原则11324用户界面美观原则1133数据需求分析134系统设计1441系统总体结构设计1442系统静态模型设计155系统实现1651布局界面的设计16511主界面的设计16512设置界面的设计1752各功能的实现18521计步开始及暂停18522记录数据清零18523设置步长18524设置体重19525设置运动状态196系统测试2061测试开始停止模块20611测试准备20612测试过程2062测试总结235结论24致谢25参考文献26附录271前言11智能手机系统开发背景当今社会手机已经成为人们工作生活中必不可少的一项通讯和娱乐工具随着手机的不断更新手机的各种高层服务和应用层出不穷现在智能手机可谓是爆发式增长与此同时传统手机在不断地消失诺基亚就是在这样的环境中受到了重创现在主要有三个使用率和关注度最高的手机平台分别是ANDROIDIOS和WINDOWSPHONE平台在这三个平台中ANDROID的占有率最高自2007年11月GOOGLE公司发布ANDROID系统以来短短几年时间ANDROID已经占据了智能手机市场的半壁江山成为目前最为炙手可热的智能手机操作系统ANDROID走进了越来越多人的生活成为他们获取信息的主要平台ANDROID平台是一个面向大众的系统分布在低端中端和高端市场中受到了各个层次的欢迎并且ANDROID是开源的开发者随时都可以查看系统源代码并且使用时下最流行的JAVA作为其主要的开发语言由于这些特点才使得ANDROID成为现在市场占有量最大的软件平台在这样的平台上面开发一款独特的日常生活软件尤为必要的ANDROID不只是一个操作系统而已它包括了经过GOOGLE剪裁和调优的LINUXKERNEL对于掌上设备的硬件提供了优秀的支持GOOGLE在LINUX方面的应用能力不容置疑GOOGLE公司所有的几十万服务器全部是自己修改过的LINUX操作系统经过GOOGLE修改的JAVA虚拟机DALVIK是基于APACHEHARMONY虚拟机版本进行改良而来能够提供极高的执行性能有了JAVA虚拟机大部分JAVA核心类库都已经可以直接运行大量立即可用的类库和应用软件例如浏览器WEBKIT数据库SQLITE让你可轻易开出来桌面应用复杂度的手机软件GOOGLE已经开发好了大量现成的应用软件同时可以直接使用GOOGLE很多在线服务GOOGLE提供了基于ECLIPSE的完整开发环境模拟器文档帮助示例将极大推动ANDROID快速的推广和发展基于ANDROID众多的优点围绕ANDROID形成了一个移动手机联盟主要的手厂商几乎全部在列而此联盟在极大的推动ANDROID平台的推广和发展在未来的几年将极大的推动整个手机操作系统甚至是互联网乃至软件行业的发展ANDROID平台对于GOOGLE的意义不在于手机本身推动移动互联网产业链的迅速成型具有开源特性的ANDROID平台了之前SYMBIANWINDOWSMOBILE等操作系统收取高额的授权费用的模式使得成本大大降低正是由于它开源代码使得手机产生更多个性化的应用同时合作方能够在这里得到利润或者创造价值手机软件行业得到维护协调发展这正式GOOGLE发布ANDROID平台的意义也是ANDORID平台存在的使命所在而作为ANDROID平台成员之一的中国移动也投资成立了一家通讯公司专门从事GOOGLE手机软件的应用以及本地化软件的开发比如在GOOGLE手机平台上添加飞信输入法等一系列符合国内用户使用的功能更多的手机软件开发已经或者筹备将公司进行转型从其方向的开发转向到ANDROID的开发ANDROID平台对手机软件行业和移动手机平台将发挥极大地推动作用而在未来的几年或者一段时间内ANDROID将越发的凸显自己的重要性基于此我们有必要通过进行相关的研究来了解ANDROID平台来了解开发ANDROID的那一大批人的先进理念和思想了解手机软件行业未来无移动互联网的发展趋势从而更好的适应时代的需要本论文是对基于安卓平台的手机计步器的设计和研究目的是为了方便用户绿色生活保持健康的生活态度并且为用户节约了不必要的开支同时也避免了资源的浪费ANDROID系统的一大亮点之一就是传感器的使用利用传感器可以开发出很多新奇有趣的应用程序例如计步器水平仪甚至在很多游戏中都可以使用传感器来操作游戏传感器的种类很多其中包括加速度传感器姿态传感器磁场传感器温度传感器光传感器等本论文介绍的计步器应用就是使用加速度传感器本论文主要对计步器以下功能做主要研究程序运行后进入主界面用户可以看到行程消耗热量速度以及步速点击开始进入运行状态点击清零可以使所有数据回归零初始状态点击设置选项可以进入设置界面调节灵敏度来设置需要的灵敏度灵敏度越高对身体的动作的感应越灵敏调节灵敏度来适应不同的体型了路面等因素通过设置步长来设置用户自身实际步长为了估算行走的距离和速度输入步长得出粗略的距离和速度仅供参考设置体重来调节用户的实际体重这是为了计算消耗的卡路里按软件工程步骤了解相关资料了解本软件的研究意义确定实现技术与方式设计总目标及其整体框架了解用户的使用习惯和使用心理进行用户需求分析和规范草拟功能模块画出模块图搜集软件制作素材编写代码实现各个功能模块根据ANDROID特有的使用风格进行布局与优化完成系统测试并改进2相关技术介绍21开发工具及环境简介ANDROID的上层应用程序是用JAVA语言开发同时还需要基于DALVIK虚拟机所以GOOGLE公司推荐使用主流的JAVA继承开发环境ECLIPSE只有ECLIPSE还不够因为是使用JAVA语言进行开发还应该有由SUN公司提供的JAVASDK其中包括JREJAVARUNTIMEENVIRONMENT此外ANDROID的应用程序开发和JAVA开发有较大区别的所以还需要有GOOGLE提供的ANDROIDSDK同时还需要在ECLIPSE安装ADT为ANDROID开发提供开发工具的升级或者变更是ECLIPSE下开发工具的升级下载的工具简言之需要以下软件才能搭建ANDROID开发环境从而进行ANDROID应用程序的开发1JAVASDK2ECLIPSE3ANDROIDSDK4ADT211开发工具2111ANDROIDSDK介绍SDK指是软件开发包被软件开发工程师用于为特定的软件包软件框架硬件平台操作系统等建立应用软件的开发工具的集合因此ANDROIDSDK指的既是ANDROID专属的软件开发工具包2112ECLIPSE简介ECLIPSE是一个著名的跨平台的自由集成开发环境软件最初主要用来JAVA语言开发现在人们可以通过安装插件使其作为CPYTHONPHP等其他语言的开发工具ECLIPSE的本身只是一个框架平台但是随着众多插件的产生使得ECLIPSE拥有很好的灵活性许多软件开发商以ECLIPSE为框架开发自己的IDEECLIPSE含有插件开发环境这个组件主允许希望扩展ECLIPSE的软件开发人员构建与ECLIPSE环境无缝集成的工具由于ECLIPSE中的每样东西都是插件对于给ECLIPSE提供插件以及给用户提供一致和统一的集成开发环境而言所有工具开发人员都具有同等的发挥场所尽管ECLIPSE是使用JAVA语言开发的但它的用途并不限于JAVA语言例如支持诸如CC和COBOL等编程语言的插件已经可用ECLIPSE框架还可用来作为与软件开发无关的其他应用程序类型的基础比如内容管理系统本系统即通过ECLIPSE添加ANDROID做插件匹配上ANDROIDSDK进行软件的开发2113JDK简介JDKJAVADEVELOPMENTKIT是一个写JAVA应用程序的程序开发环境它由一个处于操作系统层之上的运行环境还有开发者编译调试和运行用JAVA语言写的APPLET和应用程序所需的工具组成JDK是SUNMICROSYSTEMS针对JAVA开发员的产品SOFTWAREDEVELOPMENTKITJDK中还包括完整的JREJAVARUNTIMEENVIRONMENTJAVA运行环境也被称为PRIVATERUNTIME包括了用于产品环境的各种库类以及给开发员使用的补充库如国际化的库IDL库GOOGLE专门为ECLIPSE开发了一个插件来辅助开发即ANDROIDDEVELOPMENTTOOLSADT目前ANDROID开发所用的开发工具是ECLIPSE在ECLIPSE编译IDE环境中安装ADT为ANDROID开发提供开发工具的升级或者变更简单理解为在ECLIPSE下开发工具的升级下载工具212开发环境本软件是在WINDOWS7操作系统中利用ECLIPSE开发工具搭载ANDROIDSDK工具包结合ANDROID手机自带的SQLITE3数据库进行开发22ANDROIDSDK常见公共类库介绍221ANDROID的传感器加速度传感器磁场传感器光线传感器重力传感器线性加速传感器等等加速度传感器SENSORTYPE_ACCELEROMETER返回手机设备在XYZ三个方向上的加速度我们用到的磁场传感器SENSORTYPE_MAGNETIC_FIELD返回周围磁场在手机的XYZ方向上的影响磁场分量距离感应器SENSORTYPE_PROXIMITY重力传感器SENSORTYPE_GRAVITY线性加速传感器SENSORTYPE_LINEAR_ACCELERATIONANDROID界面ACTIVITY介绍ANDROID的界面是由每一个成为ACTIVITY的JAVA类组成的这个类库是制作ANDROID软件必须使用的WALKINGACTIVITY是应用程序的用户界面主要功能是按照XML布局文件的内容显示界面并与用户进行交互只有使用了这个才可以让用户看得见本类中有几个常用的覆写方法来表示界面的生存周期分别是ONCREATEONSTARTONRESUMEONPAUSEONSTOPONDESTROYONRESTART七个方法ACTIVITY的生命周期图如图21所示图3系统需求分析31可行性研究可行性分析FEASIBILITYANALYSIS也称为可行性研究是在系统调查的基础上针对刚刚开发打算进一步应用的系统的必要性和可能性的分析和研究可行性研究的目的主要在于用最小的代价在尽可能短的时间内确定问题是否能够解决该阶段通过对系统总目标的初步调研与分析提出可行性方案并进行论证在此主要从经济可行性技术可行性和操作可行性三方面进行分析311经济可行性随着人民生活水平的提高尤其我国成功承办2008年奥运会以来人们的健康运动意识逐渐增强而上班族们由于时间紧张可利用的休闲时间较少他们则会利用一些零散的时间进行锻炼比如上班来回的路上多走路少乘车在办公区尽量选择走楼梯而不是乘坐电梯等等由于运动时间零散不便于量化自己的运动量也就无法估计健身效果在这样的背景前提下拥有一款计步器就显得尤为必要了目前市场上的计步器少则几十多则上百而智能手机计步器软件的成本几乎为零只需用户拥有一台有安卓系统的智能手机即可安装使用了并且手机计步器软件携带方便可以随时随地获取用户的运动信息拥有不受地理和时间限制的特点可以充分利用人们的闲暇时间从这个角度看该软件可行312技术可行性开发工具ECLIPSECLASSIC372数据库环境SQLITE3系统环境MICROSOFTWINDOWSXP或以上版本软件实现是依靠基于ANDROID系统的开发技术使用的是JAVA为主的开发语言进行开发再加上SOAP技术进行数据交互3121功能说明具体有如下一些功能计步开始计步暂停计步清零主屏幕显示计步总数走过的公里数每分钟走多少步每小时走多少公里和消耗的卡路里量进入设置菜单设置灵敏度设置步长根据步长计算走过公里数步速和消耗的卡路里量设置体重和运动类型主要用于计算消耗的卡路里量退出应用3122技术分析表31技术需求分析关键技术项要求现有水平对照分析数据结构了解了解可以满足要求数据库熟悉了解虽有欠缺但通过指导培训应该在短期内可以达到要求JAVA熟练熟悉基本可以满足要求ANDROID精通熟悉短期需进一步达到要求存在一定问题313操作可行性软件采用最主流的ANDROID软件应用开发风格并使用ANDROID的原生组件进行开发界面友好简洁易懂组建布局具有诱导性用户使用极其方便快捷主界面操作流程见图31设置界面操作流程见图32图31图为主界面操作流程图图32图为设置界面操作流程图32性能需求分析为了保证软件能够长期安全稳定可靠高效地在ANDROID设备上运行本系统应该满足以下性能需求充分利用手机的为本软件提供信息支持充分考虑用户获取信息的心理需求在简洁实用的基础上对软件界面层级进行布局322可扩展性与可维护性原则为适应将来的发展软件应该具有良好的可扩展性和可维护性系统设计尽可能模块化组件化由于ANDROID设备分辨率的各不相同使软件可灵活配置适应不同的的ANDROID终端设备系统的可扩展性应包括能接纳已有的系统和在今后系统软硬件扩展时能有效地保护已有的资源建设当用户的需求有所改变时可以对其快速的配置改变以应对用户的需求有一个较好的应用平台ANDROID设备能容易地安装和卸载系统易于扩充升级既能满足当前业务的需求将来的需求改变升级也被考虑在内随着三网融合的发展智能终端产业链的构成相对于传统功能手机发生了巨大变化处于上游的操作系统提供商制定安全机制的基本规则以及相应的应用商店政策终端厂商在这些规则的基础上定制个性化的终端软件建立自有的应用商店应用软件开发商开发者则利用操作系统提供商提供的工具进行各类应用软件的开发第三方应用商店或论坛等提供应用软件的下载渠道基于智能终端产业链在管理和技术方面暴露出来的脆弱性来源于传统互联网和信息系统的各类攻击逐渐将目标定位于智能终端并借助智能终端操作系统的开放性制造出大量的恶意软件此外应用商店的审核机制欠缺也导致了恶意软件的泛滥目前智能终端信息窃取类软件横行一款应用软件的安全可靠性便显得尤为重要了现在智能终端个人信息的泄露通常不会引起用户的觉察或者即便觉察也无法判断其带来的损失与早期的安全问题不同个人信息泄露所带来的通常不是直接的高额话费而是潜在的巨大经济损失如银行账户泄密绝密商业信息泄露等如何保护用户个人信息防止在用户不知情的情况下泄露隐私信息是当前亟待解决的问题本软件不会残留用户任何的隐私信息界面经过对用户心理的调研和统计后并参考时下流行的软件风格进行设计在此基础上加入了对用户具有诱导性的按键设计使得用户在初次使用的时候就会使用而不需要在使用的时候进行特别的学习和指导图33图为应用图标B主界面见图34C设置和退出按钮见图35图34图为应用主界面图35画红圈处为设置退出按钮D设置界面见图36图36图为设置界面33数据需求分析表32信息输入输出信息输入信息处理信息输出用户点击开始计步软件通过后台感应手机状态开始计步通过软件主界面输出计步总数消耗卡路里等信息用户点击暂停软件将通过后台停止感应手机状态从而停止计步显示计步的相应信息用户用户点击清零软件通过后台运行清除所记录的数据所有这界面显示的信息将归零等待下次命令用户点击设置键软件通过数据库中的设置管理显示设置主界面输入步长设置对数据库中步长信息进行改变刷新设置中步长列表输入灵敏度设置对数据库中灵敏度信息进行改变刷新设置中灵敏度列表输入体重设置对数据库中的体重进行管理刷新收藏夹电视频道的列表输入运动类型设置对数据库中的运动类型进行管理刷新收藏夹单词的列表4系统设计41系统总体结构设计在设计一款软件时一般都会把它分成几个模块在模块的基础上还会再分小模块这样就达到了软件模块化设计的要求然后再对各个小模块进行详细设计和编写采用模块化的管理方式可以使软件结构更清晰也使得软件的管理更有秩序使别人容易理解和阅读但是这些模块也要根据别的模块来设计和约束不能随便设计脱离框架设计完成后需要把每个设计完成的模块根据总体框架结合起来根据本软件的功能需求将本软件分为以下几个功能模块如图41所示图41整体框架图42系统静态模型设计根据系统需求可以识别系统中存在的对象从需求中可知我们至少创建2个类主界面类和设置类系统和用户交互时需要直观的图形化界面所以我们需要5个设置界面类确定了系统的类后需要确定类之间的关系如图42所示图42系统静态模型5系统实现本章介绍本系统的各个模块的设计和实现首先在ECLIPSE中配置好ADT和ANDROIDSDK等开发环境然后新建一个ANDROID项目项目名为PEDOMETER然后在ANDROID项目中的ANDROIDMANIFESTXML文件中配置本软件需要使用的权限本论文用到的是MANIFESTXMLNSANDROID“PACKAGE“EDUBUPTCOMMLIANGWENSHUPEDOMETER“ANDROIDVERSIONCODE“5“ANDROIDVERSIONNAME“140“ANDROIDINSTALLLOCATION“AUTO“计步器的主要功能有计步开始暂停设置显示运动所消耗的卡路里走过长度步速时速里程本软件是一个结合手机用户特别是智能手机用户常用功能的一个软件平台本软件可以通过界面快速获取运动的情况获取信息后可以对这些信息进行个性化处理以方便用户直观的感受运动量51布局界面的设计511主界面的设计由于ANDROID平台手机屏幕大小有限为了不使用户有凌乱的感觉在主界面本软件实现了步速步数卡路里的显示等功能为了让界面显得更为美观使用更为方便笔者使用在TEXTVIEW的基础上实现了TAB底部菜单在底部菜单上添加了PAUSERESUMERESET如图51所示A主界面运动信息的显示BPAUSERESUME及RESET键图51主界面信息显示及暂停开始清零键PAUSERESUME主要终于用于停止和开启监听手机运动状态也就是用户可以点击该按钮添来控制手机计步器的工作开始或者暂停RESET用于清除ANDROID数据池所获得的数据即用户可以利用此键将之前所记录的运动信息清零以便开始记录新一次的运动情况在主界面下点击ANDROID固有的功能键即可呼唤出设置和退出应用键即SETTINGSQUITE如图52所示图52SETTINGS和QUITE键SETTINGS用于进入设置主界面对用户的参数进行设这QUITE即退出本程序512设置界面的设计用户选择设置后会进入一个设置列表界面该界面是利用ANDROID固有的资源模板没有做多余的修饰简单明了的表达出设置项目及目的每一行显示一条设置信息该界面仅仅使用一个LISTVIEW控件实现设置的列表不占用较多的尺寸却能够让用户直观的看到所有关于计步器统计运动量所需的信息列表中的每一项均可再打开一个小窗口用于更改用户信息例如设置步长功能见图53在点击STEPLENGTH键后会出现填入用户步长的对话框如图54图53设置步长图54输入用户步长设置列表中的每一项指向了一条设置内容点击一条设置项目后能够进入设置项目的输入界面用户可以根据自身的实际情况来更改设置信息这也很符合人们的使用习惯52各功能的实现521计步开始及暂停首先对PAUSERESUME键做一个监听START_PAUSE_BUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENER同时还要对此时状态做一个判断START_PAUSE_BUTTONSETTEXTMISRUNNINGRSTRINGPAUSERSTRINGRESUME若初始状态为记录则显示PAUSE若初始状态为非记录状态则显示RESUME具体代码的实现见附录开始暂停按钮522记录数据清零对清零按钮做一个VIEW即RESETBUTTONBUTTONFINDVIEWBYIDRIDRESET_BUTTON实现清零的语句很简单对RESET键做一个监听当用户点击RESET键时即RESETBUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENER执行一下命令PUBLICVOIDONCLICKVIEWVRESETVALUESTRUE这样记录数据清零的按钮就完成了523设置步长对于设置步长首先要获取用户所输入的步长信息RETURNFLOATVALUEOFMSETTINGSGETSTRING“STEP_LENGTH“20“若用户未对步长信息进行编辑则默认为20在DISTANCENOTIFIER中使用MSTEPLENGTH来计算走过的距离MDISTANCEMDISTANCEFLOATMSTEPLENGTH1000000NOTIFYLISTENER在PACECHANGED中使用MSTEPLENGTH来计算步速MSPEEDKILOMETERSHOURVALUEMSTEPLENGTHCENTIMETERSMINUTE100000F60FCENTIMETERSKILOMETERTELLFASTERSLOWERNOTIFYLISTENER524设置体重对于设置体重首先要获取用户所输入的体重信息RETURNFLOATVALUEOFMSETTINGSGETSTRING“BODY_WEIGHT“50“若用户未对步长信息进行编辑则默认为50在CALORIESNOTIFIER中使用MBODYWEIGHT来计算用户因运动所消耗的卡路里MCALORIESMBODYWEIGHTMISRUNNINGMETRIC_RUNNING_FACTORMETRIC_WALKING_FACTORMSTEPLENGTH1000000NOTIFYLISTENER525设置运动状态当用户选择跑步运动的时候程序会判断返回值等于RUNNINGRETURNMSETTINGSGETSTRING“EXERCISE_TYPE“RUNNING“EQUALS“RUNNING“判断跑步还是走路是为了方便计算用户所消耗的卡路里在因运动所消耗卡路里的计算公式中跑步状态和走路状态分别对应不同的参数根据用户的选择而确定卡路里的计算方法设置运动装态的详细代码见附录判断是走路还是跑步6系统测试61测试开始停止模块测试能否根据用户控制得到开始计步和停止计步的结果测试准备模块名计步器负责人梁文淑意图测试计步器各模块功能612测试过程点击应用图标如图61所示运动使主界面开始记录数据如图62所示我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文图61图为计步器主界面图62图为计步器主界面在主界面点击PAUSE如图63所示继续运动观察主界面数据是否有变化如图64所示我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要论文我要过论文我要过论文我要过论文我要过论文我要过论文我要文图63图为停止计步界面图64图为停止计步后仍在运动界面进入SETTINGS设置点击设置SENSITIVITY灵敏度如图66所示过论文我要过论文我要过论图65图为设置界面图66图为设置灵敏度界面点击设置STEPLENGTH步长如图67所示点击设置BODYWEIGHT体重如图68所示图67图为步长设置界面图68图为体重设置界面点击设置EXERCISETYPE运动类型如图69所示过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文我要过论文图69图为运动类型设置界面62测试总结本软件中几个模块的功能经过测试均测试通过测试结果和最初的设计基本一致所有的功能均能正常运行软件需要比较特殊的运行环境首先手机的重力感应功能必须有而且ANDROID系统的版本过低将不能使用至此基于安卓平台的手机计步器的设计基本完成5结论经过了数月的努力ANDROID平台手计步器软件终于完成了本软件能实现用户对计步器的基本要求方便用户开启关闭计步器对运动情况和运动量可以直观的从主界面获取信息设置选项中的智能人机交互平台也可以明了的对用户信息进行编辑不需要复杂的操作不需要学习一目了然对于智能手机用户来说基于安卓平台的手机计步器提供了一个快捷方便的平台为用户提供随时随地的服务节省用户不必要的资金消耗与时间消耗是本软件设计的一个宗旨整个框架和细节的设计都是围绕这个宗旨进行的虽然整个软件还不是很成熟还有很多不足和需要改进的地方或者还有很多信息提供不到位例如我们可以加入音乐播放模块是用户在运动的同时享受轻松快乐的环境这些还需要日后慢慢优化和改善但是最初的设计都实现了在现在的功能基础上本软件可以进行扩展升级本软件最初设计的时候就是一个可以扩展的框架所以为将来加入新的功能提供了很大的方便本软件虽然不是很强大但是是我自己亲手编写的开发一个能在时下最流行的软件使之顺利的在平台上运行是一件令人兴奋的事情把自己的想法一步一步地付诸实践最后成为一个真实的实物被别人使用和称赞此时得到的成就感是尤为强烈的致谢四年的读书生活在这个季节即将划上一个句号而于我的人生却只是一个逗号我将面对又一次征程的开始四年的求学生涯在师长亲友的大力支持下走得辛苦却也收获满囊在论文即将付梓之际思绪万千心情久久不能平静伟人名人为我所崇拜可是我更急切地要把我的敬意和赞美献给一位平凡的人我的导师我不是您最出色的学生而您却是我最尊敬的老师您治学严谨学识渊博思想深邃视野雄阔为我营造了一种良好的精神氛围授人以鱼不如授人以渔置身其间耳濡目染使我不仅接受了全新的思想观念树立了宏伟的学术目标领会了基本的思考方式从论文题目的选定到论文写作的指导经由您悉心的点拨再经思考后的领悟常常让我有山重水复疑无路柳暗花明又一村再一次感谢我的母校北京邮电大学世纪学院感谢通信与信息工程专业对我的培养感谢所有帮助过我的老师和同学朋友们谢谢大家在以后的工作学习和生活中我将更加努力用自己的行动回报社会学校老师及同学参考文献1李刚疯狂的ANDROID讲义M北京电子工业出版社201172吴亚峰苏亚光ANDROID20游戏开发实战宝典M北京人民邮电出版社201073李宁ANDROID开发完全讲义M北京中国水利水电出版社201244严蔚敏吴伟民数据结构M北京清华大学出版社200735李刚疯狂JAVA讲义M北京电子工业出版社2008106BRUCEECKEL著JAVA编程思想陈昊鹏M北京机械工业出版社2007623357苏亚光吴亚峰索依娜ANDROID平台下传感器技术开发计步器应用J电脑编程技巧与维护2010238熊刚基于ANDROID的智能手机的设计与实现D武汉理工大学20109SANDEEPKUMARLOCATIONBASEDSERVICESUSINGANDROIDCANDROIDAPPLICATIONFUNDAMENTALS2009IEEEINTERNATIONALCONFERENCEP1510姚昱旻刘卫国ANDROID与J2ME平台间即时通信的研究与实现J计算机系统应用20081211812011公磊周聪基于ANDROID的移动终端应用程序开发与研究J计算机与现代化20088868912差沙地狱男爵用ANDROID开发手机应用J程序员20081252713NARAYANBABUANDROIDAPPLICATIONDEVELOPMENTSKILLSJITTIMEWEEKLY201268555814KONRADADENAUERANDROIDSTRUCTURALDESIGNGUIDELINESJJOURNALOFCOMPUTERANDSOFTWAREENGINEERING2012366972附录ACTIVITYPACKAGEEDUBUPTCOMMLIANGWENSHUPEDOMETERIMPORTANDROIDAPPACTIVITYIMPORTANDROIDAPPBACKUPRESTOREOBSERVERIMPORTANDROIDCONTENTCOMPONENTNAMEIMPORTANDROIDCONTENTCONTEXTIMPORTANDROIDCONTENTINTENTIMPORTANDROIDCONTENTSERVICECONNECTIONIMPORTANDROIDCONTENTSHAREDPREFERENCESIMPORTANDROIDOSBUNDLEIMPORTANDROIDOSHANDLERIMPORTANDROIDOSIBINDERIMPORTANDROIDOSMESSAGEIMPORTANDROIDPREFERENCEPREFERENCEMANAGERIMPORTANDROIDUTILLOGIMPORTANDROIDVIEWMENUIMPORTANDROIDVIEWMENUITEMIMPORTANDROIDVIEWVIEWIMPORTANDROIDWIDGETBUTTONIMPORTANDROIDWIDGETLINEARLAYOUTIMPORTANDROIDWIDGETTEXTVIEWAUTHORLIANGWENSHUPUBLICCLASSWALKINGACTIVITYEXTENDSACTIVITYPRIVATESTATICFINALSTRINGTAG“PEDOMETER“PRIVATESHAREDPREFERENCESMSETTINGSPRIVATEPEDOMETERSETTINGSMPEDOMETERSETTINGSPRIVATEUTILSMUTILSPRIVATETEXTVIEWMSTEPVALUEVIEW步数PRIVATETEXTVIEWMPACEVALUEVIEWPRIVATETEXTVIEWMDISTANCEVALUEVIEW距离PRIVATETEXTVIEWMSPEEDVALUEVIEW速度PRIVATETEXTVIEWMCALORIESVALUEVIEW卡路里消耗显示框TEXTVIEWMDESIREDPACEVIEWPRIVATEINTMSTEPVALUEMSTEPVALUEVIEW的值PRIVATEINTMPACEVALUEMPACEVALUEVIEW的值PRIVATEFLOATMDISTANCEVALUEMDISTANCEVALUEVIEW的值PRIVATEFLOATMSPEEDVALUEMSPEEDVALUEVIEW的值PRIVATEINTMCALORIESVALUEMCALORIESVALUEVIEW的值PRIVATEFLOATMDESIREDPACEORSPEEDPRIVATEINTMMAINTAINIS爬山PRIVATEBOOLEANMISMETRICTRUE公制和米制切换标志PRIVATEFLOATMMAINTAININCPRIVATEBOOLEANMQUITTINGFALSEPRIVATEBUTTONRESETBUTTONPRIVATEBUTTONSTART_PAUSE_BUTTONSETWHENUSERSELECTEDQUITFROMMENUCANBEUSEDBYONPAUSEONSTOPONDESTROYTRUEWHENSERVICEISRUNNINGPRIVATEBOOLEANMISRUNNING程序是否运行的标志位CALLEDWHENTHEACTIVITYISFIRSTCREATEDOVERRIDE开始函数重写该函数加入日志OVERRIDEPROTECTEDVOIDONSTARTLOGITAG“ACTIVITYONSTART“SUPERONSTART重写回复函数OVERRIDEPROTECTEDVOIDONRESUMELOGITAG“ACTIVITYONRESUME“SUPERONRESUMEMSETTINGSPREFERENCEMANAGERGETDEFAULTSHAREDPREFERENCESTHISMPEDOMETERSETTINGSNEWPEDOMETERSETTINGSMSETTINGSMUTILSSETSPEAKMSETTINGSGETBOOLEAN“SPEAK“FALSEREADFROMPREFERENCESIFTHESERVICEWASRUNNINGONTHELASTONPAUSEMISRUNNINGMPEDOMETERSETTINGSISSERVICERUNNINGSTARTTHESERVICEIFTHISISCONSIDEREDTOBEANAPPLICATIONSTARTLASTONPAUSEWASLONGAGOMPEDOMETERSETTINGSCLEARSERVICERUNNINGMSTEPVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDSTEP_VALUEMPACEVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDPACE_VALUEMDISTANCEVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDDISTANCE_VALUEMSPEEDVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDSPEED_VALUEMCALORIESVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDCALORIES_VALUEMDESIREDPACEVIEWTEXTVIEWFINDVIEWBYIDRIDDESIRED_PACE_VALUE重设按钮RESETBUTTONBUTTONFINDVIEWBYIDRIDRESET_BUTTONRESETBUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENERPUBLICVOIDONCLICKVIEWVRESETVALUESTRUE开始暂停按钮START_PAUSE_BUTTONBUTTONFINDVIEWBYIDRIDSTART_PAUSE_BUTTONSTART_PAUSE_BUTTONSETTEXTMISRUNNINGRSTRINGPAUSERSTRINGRESUMESTART_PAUSE_BUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENERPUBLICVOIDONCLICKVIEWVIFSTART_PAUSE_BUTTONGETTEXTEQUALSGETRESOURCESGETSTRINGRSTRINGPAUSESTART_PAUSE_BUTTONSETTEXTRSTRINGRESUMEUNBINDSTEPSERVICESTOPSTEPSERVICEELSEIFSTART_PAUSE_BUTTONGETTEXTEQUALSGETRESOURCESGETSTRINGRSTRINGRESUMESTART_PAUSE_BUTTONSETTEXTRSTRINGPAUSESTARTSTEPSERVICEBINDSTEPSERVICEMISMETRICMPEDOMETERSETTINGSISMETRICTEXTVIEWFINDVIEWBYIDRIDDISTANCE_UNITSSETTEXTGETSTRINGMISMETRICRSTRINGKILOMETERSRSTRINGMILESTEXTVIEWFINDVIEWBYIDRIDSPEED_UNITSSETTEXTGETSTRINGMISMETRICRSTRINGKILOMETERS_PER_HOURRSTRINGMILES_PER_HOURMMAINTAINMPEDOMETERSETTINGSGETMAINTAINOPTIONIFMMAINTAINPEDOMETERSETTINGSM_PACEMMAINTAININC5FMDESIREDPACEORSPEEDFLOATMPEDOMETERSETTINGSGETDESIREDPACEEL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 粮食品牌建设与营销策略-洞察阐释
- 一年级下册道德与法治教案
- 校园足球知识竞赛活动方案
- 企业车辆无偿调拨使用合同
- 车辆交易税费垫付借条模板
- 体育馆场所租赁及赛事举办合作协议
- 智能车棚租赁与车辆停放安全保障合同
- 餐饮企业股东合作协议:股权调整与经营管理
- 2025建筑工程施工合同(标准中英)
- 2025护理人员劳动合同书
- 施工进度计划表(参考模板)
- 《项目五:新能源汽车制动系统》工作页
- 误吸评价表完整优秀版
- 汽车修理行业危险废物管理
- DL∕T 2101-2020 架空输电线路固定翼无人机巡检系统
- 园林绿化工程安全和功能检验资料核查及主要功能抽查记录
- 2022更新国家开放大学电大《计算机应用基础(专)》终结性考试大作业答案任务一
- 罗伊护理个案模板
- 速达ERP-5000数据库表结构
- 《高尿酸血症》PPT课件(PPT 48页)
- 盐田区义务教育阶段学位住房锁定
评论
0/150
提交评论