基于android的手机计步器设计与实现毕业设计.doc

上传人:文库蛋蛋多 文档编号:4131566 上传时间:2023-04-06 格式:DOC 页数:35 大小:879.50KB
返回 下载 相关 举报
基于android的手机计步器设计与实现毕业设计.doc_第1页
第1页 / 共35页
基于android的手机计步器设计与实现毕业设计.doc_第2页
第2页 / 共35页
基于android的手机计步器设计与实现毕业设计.doc_第3页
第3页 / 共35页
基于android的手机计步器设计与实现毕业设计.doc_第4页
第4页 / 共35页
基于android的手机计步器设计与实现毕业设计.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《基于android的手机计步器设计与实现毕业设计.doc》由会员分享,可在线阅读,更多相关《基于android的手机计步器设计与实现毕业设计.doc(35页珍藏版)》请在三一办公上搜索。

1、南 阳 理 工 学 院 本 科 毕 业 设 计(论文)基于android的手机计步器设计与实现Design and Implementation of Mobile Phone Pedometer based on Android学 院(系): 计算机与信息工程学院 专 业: 计算机科学与技术 学 生 姓 名: XXX 学 号: XXX 指 导 教 师(职称): 评 阅 教 师: 完 成 日 期: 2014年5月 南阳理工学院Nanyang Institute of Technology基于android的手机计步器设计与实现计算机科学与技术专业XX摘要随着智能手机逐步的走入人们的生活,目前其

2、已经成为了当今最主要的通信和娱乐工具,其中Android就是众多智能机操作系统中最主要的一个。Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。本软件就是搭载Android平台的一款小型应用,帮助用户随时随地的记录和了解自身的运动情况、锻炼成效。该应用使用Java语言,利用Eclipse开发工具开发完成。根据加速度传感器传出的信息,该软件能够通过下面的方法,算出用户所走的步数,速度,距离以及消耗的热量:该软件分为两种单位千米和英里。用户首先在设置里选择单位并输入步长(厘米/英寸)和体重(千克/英

3、镑),然后系统根据一定的计算公式算出个参数,最后将内容显示给用户以帮助用户达到更好的健身效果。关键词智能手机;Android;计步器;加速度传感器Design and Implementation of Mobile Phone Pedometer based on AndroidComputer Science and Technology MajorXXAbstract: With the intelligent mobile phone gradually into peoples lives, it has become the most important communication

4、 and entertainment tool, and Android is the main one in many smart mobile phone operating system . Android is an operating system based Linux of free and open source code ,mainly used in mobile devices, such as smart mobile phone and tablet computer, leadership and development by the Google and open

5、 mobile phone Alliance . This software is a small application equipped with the Android platform, help the user whenever and wherever possible to document and understand their own exercise, exercise performance. The application is written in the java programming language , and utilization of Eclipse

6、 development tools. According to the information outgoing from acceleration sensor, this software can through the following methods works out the number of step out,walking speed,distance,calories consumed of users:the software contains two units,kilometers and miles. The user first selection unit a

7、nd input step length (cm/inch) and weight (kg/pounds),Then the system will calculates the parameters according to a certain formula.Last The content is displayed to the user in order to help the user to achieve better health effects.Key words: Intelligent mobile phone ; Android ; Pedometer ; The acc

8、eleration sensor目录1 绪论11.1 研究背景11.2 Android平台的发展状况11.3 研究的目的和意义12 相关技术简介22.1 开发工具22.1.1 Java Development kit(JDK)介绍22.1.2 Android SDK 介绍22.1.3 Eclipse开发工具介绍22.1.4 Android Development Tools(ADT)介绍22.2 Android开发常用到的技术32.2.1 Activity32.2.2 Service42.2.3 Content Provider 内容提供者52.2.4 Intent 信使52.3 Androi

9、d手机加速度传感器的介绍52.4 开发环境的搭建52.4.1 安装JDK62.4.2 Eclipse安装62.4.3 Android SDK安装62.4.4 ADT安装73 Android 手机计步器的需求分析73.1 本文可行性分析73.1.1 经济可行性73.1.2 技术可行性73.2 Android手机计步器功能需求73.2.1 主界面需求分析83.2.2 历史界面需求分析93.2.3 设置界面的需求分析103.2.4 分享界面的需求分析123.3 手机性能需求133.3.1 系统要求133.3.2 灵活性133.3.3 时间特性要求133.3.4 软件特性要求134 手机计步器总体设计

10、134.1 软件框架介绍134.2软件结构设计144.3系统数据流设计155 手机计步器的设计与实现165.1 数据存储设计165.1.1 计步记录的存储165.1.2 计步器各设置项的存储175.2 关键代码的实现185.2.1 手机计步器核心类StepService185.2.2 主要界面的实现206 系统测试246.1 测试计步器各项功能246.1.1 测试准备246.1.2 测试过程246.2 测试总结27结论及尚存在的问题27参考文献29致谢301 绪论1.1 研究背景随着无线通信技术的发展智能手机走上了历史舞台。智能手机的诞生,是由掌上电脑演变而来的。最早的掌上电脑是不具备手机的通

11、话功能,但是随着用户对掌上电脑的个人信息处理方面功能的依赖的提升,又不能同时携带手机和电脑出门,所以厂商将掌上电脑的系统移植到了手机中,于是才出现了智能手机这个概念。智能手机具有独立的操作系统,独立的运行空间,可以由用户自行安装软件具有很强的扩展性。Android就是在此时应运而生。它是一套真正意义上的开放性移动设备综合平台,包括操作系统、中间件和一些关键的平台应用。Android操作系统最初是由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google以Apache开源许可证授权方式,发布了Android的源代码。第一部Android智能手机

12、发布于2008年10月。如今Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。Android以其特有的开放性优势越来越受到人们和智能手机开发商的关注,并吸引了大量的第三方开发者加入,本次设计运用Android平台手机作为研究开发对象,配合Java语言程序设计以及面向对象思想设计了这一款手机计步器App。1.2 Android平台的发展状况Android一词的本义指“机器人”,该平台由操作系统、中间件、用户界面和应用软件组成。从2008年推出到现在Android正以前所未有的速度聚集着来自世界各地的开发者,越来越多的创意被应用到Android应用程序的开发中,大有席卷整个

13、手机产业的趋势。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。未来的智能机市场不可能一家独大,并且Android系统本身也存在着很多问题,但是从其设计的亲和性和为大众所接受的价格来看谷歌的Android平台依然有着巨大的发展机遇。除了苹果之外,其他的平台在短期内鲜有Android的竞争对手。1.3 研究的目的和意义Android平台对于Google和用户的意义不在于手

14、机本身,而在于为了推动移动互联网产业链的迅速成型。具有开源性的Android手机平台与之前Symbian、windows mobile等操作系统不同,它们收取高额的授权费用,而Android不需要,这样使得应用开发成本大大降低;也正是由于它的源代码是开放的,使得开发者可以随心所欲的开发应用。同时,手机生产商和软件开发商也能够在这里得到利润,手机软件得到有效的维护协调发展。这正是Google发布Android平台的意义,也是Android平台的使命所在。同时目前搭载Android平台的应用有很多,但针对传感器而开发的应用市场上还不多见。本应用正是针对Android手机内置的加速度传感器而特别设计

15、的应用。所以鉴于移动端应用开发是目前软件开发行业正在兴起并会越来越炙手可热的一个分支,并且针对传感器的开发相对空白我选择了研究此课题。2 相关技术简介本部分主要介绍该项目所用到的开发工具,Android开发中主要组件,以及开发环境的搭建。2.1 开发工具2.1.1 Java Development kit(JDK)介绍JDK是Java语言的软件开发工具包。本应用用的是JDK的J2ME版,它主要用于移动设备、嵌入式设备上的Java应用程序。没有JDK的话,无法编译Java程序,所以这是开发Java程序必须安装的工具。2.1.2 Android SDK 介绍SDK(software develop

16、ment kit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。因此,Android SDK指的是Android专属的软件开发工具包。2.1.3 Eclipse开发工具介绍Eclipse是一个开放源代码的、基于插件的可扩展性平台。也可以说它只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse附带了一些标准的插件集,包括Java开发工具(JDK)。本次应用就是将Eclipse当作Java集成开发环境来使用,但是它的作用并不仅仅如此。由于Eclipse中的每样东西都是插件,所以只要有插件就可以使用它,因而不仅仅是Ja

17、va语言,C/C+、PHP等语言也可以使用Eclipse。2.1.4 Android Development Tools(ADT)介绍目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。ADT扩展了Eclipse的功能,让我们能快速建立新的Android项目、创建应用程序的用户界面。它可以帮助Eclipse找到Android SDK,再加上Android框架的API组件调试使用Android SDK工具,以便APK分发给应用程序。同时大大减轻了An

18、droid应用程序的开发工作量,工具集成XML编辑器,将给开发者一个令人难以置信的开发Android应用环境。当然如果你不用Eclipse作为你的开发工具,你就不需要下载ADT, 只下载SDK即可开发。2.2 Android开发常用到的技术2.2.1 ActivityActivity是Android应用程序开发中最重要的组件。一个Activity提供一个屏幕,用户可以用来交互以完成某项任务,例如点击、拍照、拨号等。它是用户与应用交互的直接且最重要的组件。下面我就说说Activity的生命周期。Activity生命周期可以用几个函数说明:onCreate():Activity开始创建时调用;on

19、Start():在Activity开始执行时调用,这时Activity已经可见;onResume():在Activity获得用户焦点时调用,此时Activity可以和用户交;onPause():在Activity被暂停时调用,失去用户焦点,但没有被摧毁;onStop():在Activity被停止时调用,此时Activity已经不可见,但仍然没有被摧毁;onRestart():在Activity被重新启动时调用;onDestory():在Activity被彻底摧毁时调用。下面用一张图来解释Activity的生命周期在各函数之间的跳转。如图2-1:图2-1 Activity的生命周期图2.2.2

20、Service一个Service是一段长生命周期的,没有用户界面的程序,可以用来开发如监控类程序。一个很好的例子就是用手机在播放音乐时,用户可以进行其它应用的活动而此时并没有播放音乐的界面,但是音乐在后台播放并不受影响,这就是Service的功劳。还有就是闹钟提醒,当你设置好闹钟后并不需要一直显示在闹钟那个界面,甚至手机也可以关掉但是只要时间到了,闹钟依然可以提醒,这也是Service的作用。2.2.3 Content Provider 内容提供者android平台提供了Content Provider,它是一个应用程序的指定数据集提供数据给其他应用程序。这些数据可以存储在文件系统中、在一个S

21、QLite数据库、或以任何其他合理的方式。本文用到了文件存储和Shared Preferences的存储方式。文件存储大家都很熟悉,就是以文件为操作对象,向文件中写入或读取数据。Shared Preferences可以将数据保存到应用程序的私有存储区,这些存储区中的数据只能被写入这些数据的软件读取。它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。例如:登陆时用到的用户名和密码。2.2.4 Intent 信使Intent 也是Android开发者比较重要的一部分,它主要用来解决Android应用的各项组件之间的通讯,被称为Android应用中的信使。In

22、tent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。所以它常被用来启动一个Activity或Service,例如当从一个Activity启动另一个Activity时,可以这样操作,Intent intent=new Intent();intent.setClass(startActivity.this,secondActivity.class);this.startActivity(intent)。2.3 Android手机加速度传感器的介绍Android平台的加速

23、度传感器是Android基于硬件的传感器,它能够有效的跟踪手机、电脑等移动设备的运动状况,在移动设备上应用普及。我们手机加速度传感器感应加速度的方向大致如图2-2。X表示左右移动的加速度、Y表示前后移动的加速度、Z表示垂直方向的加速度。图 2-2 加速度传感器感应方向只要三个轴的加速度值有一个发生了改变传感器就会输出信息。2.4 开发环境的搭建首先要有一台安装有Windows系统的计算机,接下来就是安装过程。2.4.1 安装JDK下载JDK,在这里1. 我的电脑属性环境变量系统变量;2. JAVA_HOME值为:D:Program Filesjdk(你安装JDK的目录);3. CLASSPAT

24、H 值为:;%JAVA_HOME%libtools.jar;%JAVA_HOME%libdt.jar;%JAVA_HOMEbin;4. Path:在开始追加%JAVA_HOMEbin;如果安装成功,打开cmd窗口,输入java-version会出现如图2-3显示的信息图 2-3 JDK安装成功提示信息2.4.2 Eclipse安装下载Eclipse,这里是网址http:/www.eclipse.org/downloads/解压后即可使用。2.4.3 Android SDK安装在Android Developers下载最新版本的压缩包,下载完成后解压到任意路径,运行SDK Setup.exe。选

25、定你要安装的内容。这里也需要配置环境变量,在用户变量中新建PATH值为:Android SDK中的tools绝对路径。“确定”后,重启计算机。重启后,进入cmd命令窗口。输入android-h如果有如图2-4类似的输出则表示安装成功。图 2-4 Android SDK 安装成功提示信息2.4.4 ADT安装打开Eclipse IDE,点击菜单中的“Help”然后点击“Install New Software”,再点击Add.按钮,这时会弹出一个对话框要求输入,Name和Location:Name项可以自己随便填取,Location输入http:/dl- with后的下拉列表中选择我们刚才添加的

26、ADT,我们会看到下面出有Developer Tools,展开它会有Android DDMS和Android Development Tool,选定他们。然后按要求一步一步next,完成之后,这个过程可能会很慢。这取决于网络环境。最后选择Window-Preferences.在左边的面板选择Android,然后再右侧点击Browse,并选中SDK路径。点击Apply,到此就配置完成了。3 Android 手机计步器的需求分析3.1 本文可行性分析可行性分析也称为可行性研究,是在系统调查的基础上,针对刚开始开发打算进一步应用的系统的必要性和可能性的分析和研究。可行性研究的目的主要在于,用最小的代

27、价在尽可能短的时间内确定问题是否能够解决。3.1.1 经济可行性随着人们生活水平的提高,现代科技越来越发达,能够让人们必须亲自动手做的事情逐步减少,因而人们的锻炼机会越来越少。再加上物质条件的不断改善人们的饮食越来越丰富。因此多数人已经出现了营养过剩的现象,这将会使人们的身体机能受到影响。本款软件就是以此为起点而构想设计的。使用本款软件不需要付任何费用,只要有一部Android手机安装就可。同时对其的开发也是在经济允许的范围之内的,一台安装有windows系统的电脑(机房),在电脑上安装Java SDK、Android SDK、ADT和Eclipse开发工具即可,期间不需要花费任何费用。并且本

28、APP可以督促人们尽量选择多运动,只要打开软件,走路,你就会发现你随时随地都在锻炼。这样上班距离较近的话人们就会选择走路,上楼时会选择爬楼梯而不是坐电梯。这样不仅有利于人们的身体健康而且也帮助减少了机动车辆的出行,节约了能源。3.1.2 技术可行性开发工具:Eclipse数据存储环境:文件,Android系统内置的Shared Preference系统环境:Microsoft Windows XP或Windows7开发本软件的软硬件条件都是具备的,并且本人能够熟练的使用以上开发工具,所以开发该软件的技术条件是完全具备的。3.2 Android手机计步器功能需求本款软件是针对Android平台下

29、手机客户端的应用,所以美观简洁的界面以及良好的交互效果是该类应用必须要重视的。所以在这里我将其功能按界面做了划分。该计步器分为这样几个界面:主界面,采用Sliding Menu侧滑栏效果包含了3个Fragment。分别包括,中间部分:用户可以在本界面选择开始计步和保存计步记录;左边部分:这里有计步记录、开始体验和设置的入口;右边部分:这里有检查更新和进行分享的入口。历史界面:用于显示用户的计步历史,包括保存时间以及各项运动指数。设置界面:用于供用户设置计步器中各项设置项,包括感应灵敏度、运行层面、长度单位、步长、体重等。分享界面:用户可以将下载该APP的网址以及评价发送到腾讯微博、新浪微博或Q

30、Q空间中。本节将通过用例图分别对这几个界面进行功能需求分析。3.2.1 主界面需求分析本界面是该应用的主要界面,囊括了其它界面的入口以及计步器主要功能:计步和保存。该界面采用Sliding Menu界面框架,这是一个比较新的界面效果。在主界面左滑和右滑分别会出现另外两个界面,并和主界面共享屏幕,美观且操作方便。该界面的用例图如图 3-1。图 3-1 主界面用例图主界面的需求分析如下表所示。表 3-1 主界面主要功能需求分析参与者用户概述用户点击开始/保存按钮,即可开始计步或保存记录。前置条件用户点击开始/或保存按钮详细描述打开软件时按钮默认的字是“开始”,当用户点击“开始”按钮后,按钮上的字将

31、会变成“保存”,此时用户就可以使用计步了。当用户点击“保存”按钮时,字会变成“开始”,计步器各项指数将归零,并将记录保存。后置条件计步器进行计步或保存计步记录表 3-2 主界面其它功能需求分析参与者用户概述用户点击“开始体验/历史/设置/检查更新/推荐给好友”,即可执行不同的动作或进入不同的界面。前置条件点击不同的选项详细描述当用户点击“开始体验”时,界面将回到主界面的中间部分;点击“历史”时将进入用户的计步历史界面;点击“设置”将进入计步的设置界面;点击“检查更新”将进行客户端版本与APK服务器挂载端版本比较,看是否需要更新;点击“分享给好友”将进入分享平台选择,选择后将进入分享界面。后置条

32、件执行不同的动作或进入不同的界面。3.2.2 历史界面需求分析该界面主要用于显示用户的计步历史,用ListView实现界面效果,包括保存时间、步数、距离和消耗。该界面的数据是以Json字符串的形式存储在Sdcard的Jibuqi_CacheFile文件里。用户可以浏览和删除某条记录。历史界面的用例图如图 3-2。图 3-2 历史界面用例图历史界面的需求分析如表 3-3 所示。表 3-3 历史界面的需求分析参与者用户概述用户点击“历史”条目,跳入历史界面前置条件用户左滑至主界面的左侧部分,点击“历史”条目,Sdcard上的文件内容读取完毕详细描述用户进入主界面左侧部分,点击“历史”条目,进入历史

33、界面。用户可以上下滑动浏览记录,也可以在某条记录上滑动手指,这时会在条目右侧出现一个删除按钮,点击后该条记录将会被删除后置条件用户可以浏览计步历史,并且可以删除某些条目3.2.3 设置界面的需求分析 该界面是该项目的关键页面,在这里用户可以对计步器各项参数进行设置。分别包括:(1)感应灵敏度,用于设置计步器感应灵敏度,有特别高、非常高、很高、有点高、一般、有点低、很低、非常低、特别低几个感应层次。不同的感应灵敏度会使手机的震动幅度临界值发生改变,从而使计步器的反应灵敏度发生改变;(2)运行层面,某些手机只有在唤醒的时候才能计步,而手机在一定的时间内如果没有操作的话会自动休眠,这样手机的计步功能

34、就会失效,所以,在这里添加了运行层面这个设置项。分别包括正常(手机休眠后不再运行)、保持手机不休眠(用户按下锁屏键后不再运行)和积极的(始终保持手机不休眠,即使用户按下锁屏键);(3)单位,用于设置距离单位有千米和英里;(4)步长,供用户设置每一步的步长,用来计算距离,速度和卡路里的消耗;(5)体重,用于计算消耗的卡路里;(6)运动类型,设置消耗能量的运动方式,包括跑步和散步两种;(7)说话,启用/禁用语音通知;(8)间隔,在第七项说话被选择后才能生效,用来设置语音提示的间隔时间,有15秒、30秒、1分钟等不同时间;(9)说什么,也是在第七项说话被选择后才能生效,设置语音提示要说的内容包括:步

35、数、步调、距离等,支持多选。该界面设置项均是用Shared Preferences存储,每一项都是利用键值对的方式保存,具体存储方法会在下文的数据存储中讲到。设置界面的用例图如图 3-3。图 3-3 设置界面用例图设置界面的需求分析如表 3-4所示。表 3-4 设置界面的需求分析参与者用户概述用户点击主界面左侧设置条目,进入设置界面进行各项设置前置条件点击设置条目,进入设置界面详细描述用户进入到设置界面后,点击要设置的项目,这时就会弹出一个对话框。对话框上有该项设置的各种选项,用户点击自己选择的那项对话框就会自动消失,选择完毕。后置条件用户的各项选择将会被保存到Share Preference

36、s中,在计步时会被用作判断条件3.2.4 分享界面的需求分析该界面的入口在主界面的右侧,用户点击分享给好友条目,这时在屏幕下方就会出现分享平台选择。这里我集成了新浪微博、腾讯微博和QQ空间三个社交平台,当用户点击任意一个分享平台后,就会进入分享界面。分享内容已经加上了该APP下载地址,用户可以自行输入内容,然后点击右上角的分享按钮,就可以将内容分享到自己的空间和朋友分享了。该功能使用了第三方集成分享平台Share SDK。分享界面的用例图如图 3-4。图 3-4 分享界面的用例图分享界面的需求分析如表 3-5 所示。表 3-5 分享界面的需求分析参与者用户概述用户点击主界面右侧的分享给好友条目

37、,选择分享平台,输入分享内容,即可分享给好友前置条件选择分享平台,输入分享内容,确定分享详细描述用户点击主界面右侧的分享给好友条目,这时在界面下部就会出现平台选择对话框,包含有新浪微博、腾讯微博和QQ空间,用户点击某个分享平台跳转到分享界面,输入分享内容,即可分享给好友后置条件分享成功,在空间中可以看到这条状态3.3 手机性能需求3.3.1 系统要求Android系统2.2版本以上,对以后后继进行升级开发有可延续性。3.3.2 灵活性软件基于Android操作系统,是基于组件的开发方式。3.3.3 时间特性要求软件的反应速度要在用户可接受的范围内。3.3.4 软件特性要求软件运行速度要在用户可

38、接受范围内,对流量、电量等消耗要在用户可接受范围内。4 手机计步器总体设计4.1 软件框架介绍本节将介绍Android的系统框架。Android的系统结构采用了分层架构的思想,如图 4-1 所示。从上层到底层共包括四层,分别是应用程序层、应用框架层、系统库和Android运行时和Linux内核。图 4-1 Android系统框架图每层功能简要介绍如下:(1)应用程序,该层提供一些核心应用程序包如电子邮件、拨号器等。最重要的是,开发者可以利用Java语言编写属于自己的应用程序,而这些程序与那些核心应用程序不会发生冲突。本应用就是属于这层。(2)应用程序框架层,该层是Android应用开发的基础,

39、该层包括各种管理器,如窗口管理器、资源管理器等。(3)系统库和Android运行时,系统库是应用程序框架的支撑,是连接应用程序框架层与Linux内核层的重要纽带。Android运行时,Android应用程序时采用Java语言编写,程序在Android运行时中执行。(4)Linux内核,Android核心系统服务依赖于Linux2.6内核,这里有基于硬件的各种驱动,网络和线程管理也在这里。4.2软件结构设计手机计步器是基于Android应用程序框架的,按照主界面的Sliding Menu框架的特点,可以将主要内容分为:计步(计步/保存)、我的计步器和更多,三部分。结构图如图 4-2 所示。计步器

40、我的计步器更多计步开始计步器保存记录开始体验历史设置推荐给好友检查更新图 4-2 计步器结构图4.3系统数据流设计系统数据流如下图所示,图4-3 是计步记录的数据流图,图 4-4 是设置界面中各项设置项的数据流图。文件Jibuqi_CacheFile在历史界面上显示计步记录条目对计步记录进行处理(浏览,删除) 图 4-3 计步记录的数据流图SharedPreferences在程序中通过getXX(key,default)方法获得对应设置项的值在程序中通过putXX(key,value)方法设置对应设置项的值 图 4-4 设置界面中各项设置项的数据流图5 手机计步器的设计与实现5.1 数据存储设

41、计手机计步器共用了两种数据存储方式,文件存储和Shared Preferences。文件用于存储用户的计步记录,而Shared Preferences用于存储计步器的各项设置。下面就介绍本应用中这两种存储方式的设计方法。5.1.1 计步记录的存储计步记录保存的内容分别是:保存时间、步数、距离和消耗的能量。首先建立一个实体类,该类包含各种getXX()和setXX()方法,后实例化一个该类的对象,利用该对象调用各个setXX()方法设置各项保存项。包括setStep(values),setDistance(vales)等。各个values匀是从计步界面获得的。接下来就是将要保存的内容以json字

42、符串的形式写入到文件中。具体的操作如下:JsonArray jsonArray=new JsonArray();JSONObject object=new JSONObject();JSONObject object2=new JSONObject();String jsonString;object2.put(“saveTime”,saveTime);object2.put(“steps”,steps);object2.put(“distance”,distance);.jsonArray.put(object2);Object.put(“historyData”,jsonArray);js

43、onString=jsonArray.toString();然后将jsonString写入到SD卡上的文件中。在历史界面显示计步记录时是将文件中的数据读出利用adapter将其显示。5.1.2 计步器各设置项的存储在该项目中设置界面是利用解析xml文件进行显示的,首先编写xml文件设置要显示的各项设置,xml文件内容如下,名称是preferences.xml。PreferenceScreen xmlns:android= ListPreference android:key=operation_level android:title=string/operation_level_setting android:summary=string/operation_level_setting_details android:entries=array/operation_level_preference android:entryValues=array/operation_level_preference_values android:dia

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号