APP下载

基于Android的运动软件开发详细说明

2016-10-14况昊

现代商贸工业 2016年4期
关键词:Android平台

况昊

摘 要:

近些年来,随着计算机技术与硬件的发展和互联网时代的到来,当今社会已经进入了信息时代,也有人把它称为数字化时代,在这数字化的时代里,传统的手机应用已经跟不上历史的潮流。手机运动助手就是为满足各种热爱运动人群的需求而开发的一套实用的软件。通过互联网创建手机运动助手运动软件,可以宣传健康运动方式,从而促进人们的健康运动知识的提高。使用Android平台开发的运动软件,可以在用户登录后提供选择运动模式、制定运动计划以及符合自己运动习惯的细节设置、提供相关运动数字作为参考、对用户信息进行分享查看删除等功能。

关键词:Android平台;手机运动助手软件;移动开发;SQLite数据库

中图分类号:TB

文献标识码:A

文章編号:16723198(2016)04022504

1 引言

本章是对本论文所描述课题的背景及自己对该课题的研究的意义的介绍,主要包括介绍Android平台的背景、论述论文研究的意义等。

1.1 论文研究的背景

在对本课题进行设计的时候,首先要熟悉Android平台的结构和开发环境,也就是要了解Android SDK软件开发中的一些类库和熟悉工具包的使用及Android平台提供的多个接口函数。其次就是要熟悉Android平台下的开发技术,如Activity的生命周期、事件的处理机制、监听机制、数据的存储等等。最后就是能够很好的运用相应的开发工具进行程序的编写和调试等。

在做好以上的准备后就是对手机运动助手的研究。虽说在网上有很多的手机运动助手,但是分析发现还有许多的不完善之处。而这次课题的研发就是在借鉴网上的手机运动助手的基础上进行一些改进,让用户使用起来更舒服。而在网上的许多的手机运动助手都只是单一的测量距离。而本次研究课题的主要实现的功能就是实现测步、测速、计算消耗卡路里、保存数据等等。从而使用户在安装一个软件的情况下享受多种功能。

1.2 课题研究的意义

作为一个Android新手,选择一个基于Android平台的应用程序做论文的研究课题,具有很大的意义。

首先对于本课题的研究,对社会具有一定的意义,可以说是有很小的意义。通过浏览网上的一些手机运动助手发现,虽说它们的功能都很强大、界面很炫酷,但是都是单一的手机运动助手。而这个课题就是把手机运动助手的各种功能相结合,使功能尽可能的满足用户。系统的界面设计得相当的简洁,给用户清新的感觉。所以对用户具有一定的意义。

其次就是对自己意义重大。虽然经过一段时间的Android学习,但是自己对这段学习成果也不是很有底,而正好可以通过编写这个论文来检验一下自己,检查自己的不足和漏洞,从而进行弥补和完善。而从大局来看就是可以对自己四年的专业知识进行一下测试,也为自己以后的工作积累点经验等等。所以总体来说这篇论文对自己的意义还是很大的。

2 需求分析

需求分析是软件工程中非常重要的一步,充分的需求分析是设计好程序的前提。这里主要包括系统的总体需求、系统的需求分析、系统的需求说明和系统的可行性分析。

2.1 系统的总体需求

现在无论是在PC上还是在手机上,相信很多人都在用手机运动助手。所以手机运动助手的作用就越来越重要。开发一个实用的手机运动助手就越来越适合当今的发展趋势。

本文就是在此基础上提出总体的功能需求。主要就是能够实现测步、测距、测速、保存数据。通俗的讲就是通过手机运动助手的多功能化,来满足更多用户的需要。这可以说是该系统开发的一个小小的亮点吧。因为现在很多的手机运动助手都是单一的功能。

2.2 系统需求分析

本文研究课题主要就是在基于Android平台下设计并开发一个手机运动助手软件。运用当前Google提供的Android SDK来实现对模块的查询。当然使用的数据库是Android自带的小型数据库Sqlite。尽管没有面向对象的数据库的作用强大,但是在Android开发上还是比较的灵活和方便的。系统的总体的功能业务可以主要描述为以下几点。

2.2.1 主界面菜单选项功能

主界面是该软件的第一个真正意义上的可操作界面,是响应用户的第一步操作,主要就是获取用户运动时的各项数据。界面的主要需求就是简单明了,再加上清新明目的背景图片,一定会给用户视觉上的快感。主界面拒绝那些繁琐的操作,给用户以方便。

2.2.2 帐号注册功能

帐号注册界面是在主界面点击帐号注册后,切换到帐号注册界面,然后进行帐号注册。输入相应的信息,然后把注册结果显示在该界面。这里主要使用的是Android中的XML进行布局。为了避免让用户在查询的时候感到眼花缭乱,在此就不再用图片做背景,减少干扰。

2.2.3 登录功能

登录也是在主界面上输入帐号密码,点击登录后,系统对帐号和密码进行验证成功则进入系统,失败则提示用户重新输入。

2.2.4 数据处理功能

数据处理功能是对用户在运动时的各项数据进行统计和处理,利用重力感应系统测速、测步、并通过这些数据计算出消耗卡路里的值,将统计的数据通过分享通过希望的途径传播出去。

3 系统的可行性分析

3.1 复杂分析

本系统的数据库文件是根据任务书要求做的调研进行设计而出,在进行数据库方面的设计时,要考虑到满足本系统的功能实现。重点是数据库的数据传输,可以与手机上的进行互动。

3.2 可行性

随着Android的快速发展和不断完善,Android的应用是越发的广泛。所以基于Android平台的手机运动助手小程序也是越来越多、越来越受欢迎。而一款好用且功能强大的手机运动助手软件可以为用户提供随时随地的服务,很多的Android手机运动助手的开发和网络上各种版本手机运动助手的出现,相信很多的用户都会选择享受这种服务。因而从服务的角度来说,具有可行性。

通过以上的需求分析和对系统复杂性的分析,基于Android的手机运动助手的开发具有现实性,综述该论文的设计开发具有可行性。

4 总体设计

根据软件工程的思想对该系统进行总体的设计。主要包括系统的设计目标、总体设计、总体流程图、功能模块图和数据库的设计。

4.1 系统的设计目标

通过对网上主流的手机运动助手app了解,在借鉴网上手机运动助手app的基础上,设计一个有所创新的手机运动助手app,而这个创新主要是体现在功能上。也就是说在实现计步的同时,实现测速、测距、计算消耗卡路里等功能。所以这也是这次毕业设计所要达到的设计目标。

4.2 系统的总体设计

手机运动助手需要具备的功能主要就是注册、登录、计步、测步速、测速度、计算消耗卡路里、记录、查看历史记录、删除记录、分享数据等。所以我们主要是围绕以下两项主要功能来实现的。该论文讨论环境主要是在Windows的操作系统下搭建,在Android平台上开发和运行。

4.3 系统框架设计

系统的框架的设计主要就是通过对系统的主要的流程和模块进行设计。在这里我们就对该系统的主要的流程和模块进行简单的介绍。

4.4 系统总体流程图

在启动Android的模拟器以后,系统首先显示登录功能界面,用户可选择是注册新用户还是登录,注册成功后返回登录界面,登录成功后进入主界面,当用户进行跑步或者散步等运动时,系统会记录下用户的各种运动数据,当按下重置时,系统会自动保存用户本次运动的数据,行成记录显示在界面长按记录进行删除。其整个流程如图1所示。

注册就是在登录界面用户点击注册按钮之后,进入注册页面,填寫注册信息,点击提交,系统进行验证,通过则在数据库添加,否则提示用户输入的信息有误,注册成功返回登录界面。

用户登录也就是在用户输入帐号密码点击登录以后,系统对用户输入的帐号密码进行验证,成功进入主界面,否则提示用户重新输入。

4.5 系统功能模块设计

系统的功能框架,主要分为对用户注册、用户登录、数据统计、数据处理。

用户注册模块包括了对用户填写的注册信息的验证,帐号的唯一性检测,新增功能。

用户登录模块包括了对用户输入的帐号、密码的格式规范、长度判断、通过服务器连接数据库查询获取,判断帐号与密码是否正确等功能。

数据统计模块包括了对用户在运动时各种数据的测试、计算,是先暂停/继续、重置(添加数据记录)、设置、查看记录等功能。

数据处理模块包括了对用户保存的历史记录进行查询、删除、分享等操作。

4.6 系统数据库的设计

本部分主要分为两个模块:用户模块和数据模块,且都为SQL Server2008数据库。

5 详细设计

在软件工程的思想中,详细设计是整个工程中最为重要的部分。经过详细设计,系统的整体结构和细节就确定了下一步就只需要编码就行。本章主要包括详细设计的目标、功能详细设计及界面详细设计。

5.1 系统详细设计目标

在对系统的总体设计完成以后,接下来就是对系统的详细设计。对于系统的详细设计主要就对其功能和界面的详细设计。

在对功能的详细设计上详细说明具体的设计方法和所要调用的方法。界面的设计通过简单的示意图来进行详细的介绍。总之,通过详细设计,能让我们很快、很好的编写代码。

5.2 系统的功能详细设计

5.2.1 登录模块功能详细设计

(1)注册功能。

注册模块的功能就是把用户在界面输入的注册信息添加到数据库中。首先在Activity内定义Button实例绑定用户页面的按钮,用setOnClickListener给它添加一个监听器,在监听器内调用向服务器请求连接并在数据库新增的操作。

(2)登录功能。

用户登录就是在登录界面,用户输入自己的帐号和密码,点击登录按钮,系统在按钮监听内相应事件,请求连接服务器并查询相应的帐号和密码,并判断帐号和密码是否正确,不正确则提示用户输入的帐号和密码有误,重新输入,正确则提示用户登录成功,并进入主界面。

5.2.2 数据获取功能详细设计

数据获取就是在进入主界面后,当用户进行跑或者散步等活动的时候系统会自动的同过手机重力感应和GPS来获取用户运动时的数据,如:步数、步长、距离、速度并计算出消耗卡路里等数据,用户在该界面可点击暂停/继续、重置、设置、记录等菜单按钮,当点击重置时,系统会自动将本次运动产生的数据通过服务器添加到数据库。

5.2.3 设置功能详细设计

设置功能实现的目的是为了让用户能够更精确的获取运动时产生的数据,可对身高体重、步长、系统感应灵敏度等常量进行设置,还可设置语音对用户进行提示。

5.2.4 数据处理功能详细设计

当用户在主界面点击重置按钮时,系统会自动通过想服务器发出连接请求并将数据添加到数据库,点击记录按钮时可查询此用户所有的运动数据信息并形成列表显示在界面,长按数据行可对此列数据删除,同时在主界面有分享功能把当时收集的数据通过你希望的途径发送出去。

5.2.5 系统的界面详细设计

本节主要是对手机运动助手中的所有界面的设计进行详细的解释。按照功能的需求分析,主要就是详细的介绍五个界面:注册界面、登录界面、主界面、设置界面、记录信息界面。

5.2.6 登录界面的设计

登录界面是用户在运行该软件的时候第一个出现的界面。主要的设计还是在XML中实现的,在XML中定义一个ImageView控件,来加载drawable-hdpi文件中的背景图片。

5.2.7 注册界面的设计

注册界面的设计是在登录界面之后出现的一个可操作界面,该界面就是让用户通过这个界面来注册自己登录系统的通行证。主要就是在XML文件中布置Button按钮控件,然后分设置相应的属性,设置不同Button按钮的ID属性,然后Function类对该界面的实现。通过类中定义的Button,用FindViewById方法获取各个Button按钮的ID值。然后分别为按钮设置监听器。最后把监听器绑定到相应的Button按钮上,实现界面之间的跳转。

5.2.8 主界面设计

主界面的功能就是把在用户运动时获取到的数据和计算出的结果在界面上显示出来。并且在得出结果之后,可以通过菜单键按钮来进行操作。总的设计过程是要在XML文件中布局,总体布局是运用线性布局,然后用几个线性布局共同作用成一个主界面界面。在这里主要就是实现对用户运动时的数据的获取,看起来比较美观,TextView是显示文本的信息。在这里设置好这些控件后,设置各控件相应的属性。

5.2.9 设置界面设计

设置模块的功能就是让用户对系统功能进行设置,对自身身体数据进行设置。总的设计过程也是在XML文件中进行的。

5.2.10 数据记录界面设计

数据记录模块的功能就是让用户查询所有运动时添加的数据记录,并以列表的形式展示在界面,长按行数据可对此行数据进行删除。

6 功能的实现

6.1 数据库的建立和连接

6.1.1 数据库的建立

本系统数据库主要是使用SQL Server 2008数据库。

6.1.2 数据库的连接

用DBHelper对数据库的连接进行管理,主要通过调用类中的loadDriver()方法来获取一个数据库对象,用getConnection()进行连接,这个对象就可以对数据库进行操作,对于数据库的关闭主要是调用该类的closeConnection(Connection conn)方法。

6.2 核心功能

(1)运动数据探测功能的实现;

(2)结束和记录功能的实现。

6.3 功能的实现

注册是在用户输入注册信息并点击提交按钮之后,通过验证并想服务器发出连接请求,向数据库添加数据。

在注册冲过后,系统会将注册的帐号传递到登录界面并显示在帐号输入框里面,用户需输入密码,点击登录按钮之后,系统会对帐号密码进行简单验证,符合规范后想服务器请求连接数据库并查询帐号,并对帐号和密码进行判断是否正确。

用户登录成功之后,进入主界面,此时,若用户携带手机进行跑步或散步等运动时,系统会自动通过手机重力感应和GPS等来获取用户运动时产生的数据,并通过计算得出用户消耗的卡路里等数据信息,并显示在界面上。

在系统同级数据时,用户可点击菜单暂停/继续、结束、设置、记录等按钮来对数据进行操作或者对系统进行设置,点击重置时,在重置数据时会自动将数据通过服务器添加到数据库方便用户查询,点击设置按钮后,用户进入到设置界面,此界面是对系统功能进行设置,或者对用户身体数据进行设置。

在主界面当用户点击记录按钮时,用户会进入到记录界面,此界面显示的是用户一晚所有运动产生的数据信息,通过服务器连接数据库获取,并以列表的形式显示在界面,长按某一行数据时,可对此行数据进行删除。

7 结束语

此次论文研究主要针对Google推出的Android平台下开发手机运动助手软件,并设计自己的数据库和单词搜索。当然这个系统是基于数据库建立起来的。在起初,主要就是看Android的SDK,学习Sqlite数据库的机制,表的建立等等。后来在网上搜到一些单词库,然后就试着导入,但是每次导入都是失败。后来下载一些小的数据库,导入才算成功。对于这种情况,我上网查了好多的资料,最后发现导入方法有点问题。最终在网上资料的指引下,这个问题得到了解决。使用的模糊查询使程序更人性化,给用户带来更多的便捷。而加入的汉语解释同样可以给用户带来好的体验。总体来说,对这次课题研究还是比较满意的。

这次论文研究及实现是对自己四年来所学的东西的检验及应用。当然由于时间的问题,该系统还有很多的不完善之处。如果以后有时间的话,我会对其多扩展几个功能:

(1)代码和界面的优化。好的界面也是吸引顾客原因之一。所以美好的界面设计可以给人以不同的视觉感受。

(2)手机运动助手可以装载外部的数据库。不同的用户使用的情况也是有所不同,用户可以根据自己的需要装载自己的数据库。

参考文献

[1]韩超,梁泉.Android系统原理及开发要点详解[M].北京:电子工业出版社,2010.8.

[2]柯元旦,宋锐.Android程序设计[M].北京:北京航空航天大学出版社,2010,(7).

[3]吴文明.Sqlite数据库在Android开发中的应用[J].重庆航天职业技术学院学报,2011.

[4]邱少明,袁劲松.Java面向对象程序设计[M].北京:清华大学出版社,北京交通大学出版社,2009,(10).

[5]余志龙,陈昱勋等.Google Android SDK开发范例大全[M].北京:人民邮电出版社,2010,(6).

[6]Google Android Web Site [EB/OL].http://www.android.com.

[7]Sqlite中文社區 [EB/OL].http://www.sqlite.com.cn.

[8]凌阳教育.Android的五大基本组件[EB/OL].http://www.cnblogs.com/hnrainll/archive/2011/10/26/2224990.html.

猜你喜欢

Android平台
基于Android平台的儿童跟踪系统
基于Android平台的老人跌倒检测算法及APP设计
基于Android平台软件开发技术研究
基于Android平台的人脸识别系统设计与实现
基于Android平台的健康医疗APP设计与开发
基于Android的Python语言英汉维电子词典设计与实现
Android平台下的空气质量和天气情况查询应用设计与实现
基于Android的移动GIS系统的应用与实现
基于移动互联网的糖尿病医疗辅助系统设计与实现
基于Android平台的家用无线防盗报警系统研究