基于android的食物储藏信息管理系统的设计与实现论文内容摘要:

是可以定位到你手机的信息,正因为这种技术的出现,才会引出百度地图,高德地图这种 App 的出现。 强大的多媒体: Android 系统同样可以像电脑一样去听音乐,看电影,使得人们不用电脑也可以随时随地享受到这些丰富的多媒体功能。 传感器: Android 手机中设置有很多种传感器,比如说方向传感器,职场大变样社区( ):下载毕业设计成品 5 这点在百度地图中就可以体现出来,然后还有加速传感器,这个功能是在手机微信摇一摇的功能中可以体现。 Android 开发环境 Android 的开发环境所要搭配的开发工具有很多,这里主要强调四个工具: Android SDK、 eclipse、 ADT。 Android SDK:它是谷歌公司提供的 Android 的开发工具包,在开发 Android 应用程序的时候,我们必须要使用 SDK,里面包含了开发过程中使用到的 API。 Eclipse:相信大多数的软件开发人 员都使用过,它是开发 Java 应用程序的,而且是开源的,并且最重要的一点是它支持多种语言的开发,它是一种很成熟的软件,现在基本上做 Java 开发的公司都会用到这款软件。 ADT: ADT 的全程叫做: Android Development Tools,是谷歌公司提供的一种插件,用于在 eclipse 上集成 Android 的开发环境。 职场大变样社区( ):下载毕业设计成品 6 3. 系统分析 可行性分析 此次开发的软件叫做基于 Android 的食物储藏信息管理软件,首先这款软件需要的环境都是大众化的,可是安装在大部分 Android 手机上去使用,开发环境在普通的window7 环境下就可以开发,而且此款软件使用的数据库是 SQLite,该数据库是一个轻量级的数据库,特别适合这种小型软件的开发。 其次该系统因为将移动互联和家庭紧紧的联系在一起,所以它的用户不会低,可以被大部分人所接受,不会造成用户只有作者一个人这种情况。 从稳定性来将,这款软件消耗的资源非常少,适合在手机上进行运用。 经过三方面的分析,基于 Android 的食物储藏信息管理软件这款软件是可以来进行开发的。 经济可行性 此款软件完全由免费开放的 eclipse 软件开发,不需要任何的成本,有一台电脑,并且安装相关的软件就可以 进行开发,并且,此款软件面向对象是大众,可以在任何一款 Android 操作系统的手机上进行使用,性价比和使用性非常高。 技术可行性 此款软件的开发工具是 eclipse,并且在操作系统为 windows7 的电脑上可以开发,开发语言为 Java 语言。 操作可行性 此款软件的题目是 基于 Android 的食物储藏信息管理软件, 从题目可以看出此款软件是基于 Android 系统开发的,所以使用的语言是 Java 语言,开发人员必须对 Java 语言的使用过程非常熟练,并且对 Android 的四大组件的使用必须了如指掌,对 Android数据 库的处理以及 UI 的方面的操作所要用到的知识点必须熟练的掌握。 软件流程 下面罗列出了软件的大致的流程图,如图 31: 职场大变样社区( ):下载毕业设计成品 7 软件开发环境 在这次毕设中,我所要设计的软件叫做基于 Android 的食物储藏信息管理软件,因为这款软件面向的客户是大众,所以此款软件必须要稳定,所以你选择的开发环境也必须是稳定的并且可以在多种 Android 平台上运行而不报错,所以找一些稳定的环境来做此款软件的开发是必不可少的,下面我说一下我的开发环境。 我开发所用的电脑的操作系统是 window7 的,然后用的工具是 +android SDK,在这里由于 SDK 运行起来比较慢,我又借用了另外一款虚拟机 Genymotion,效果是和 SDK 一样的,使用的数据库是 SQLite,开发的 Android 版本是 Android。 需求分析设计 根据该系统预期的实现效果,我大致在主界面将该系统分为四个模块,分别是添加食品、查看食品、提醒设置以及购买清单。 添加食品 当用户点击添加食品之后,会跳转到一个新的界面,该界面有三个储藏地方,分别点击每一个储藏地点,可以看到不同品类的食物 ,点击你想要添加的食物,会进入另外开始 进入 退出 添加食物 查询食物 设置提醒 生成清单 修改信息 删除信息 返回 退出 图 31 总体流程 图 职场大变样社区( ):下载毕业设计成品 8 一个界面,在该界面,你可以设置食物的购买日期,还有输入该食物可以食用多少天,以及设置食物的提醒条件等。 如果我的固定品类中没有用户想要添加的食物,那么用户可以根据自己需要,输入用户想添加的食物的品类信息。 流程图大致为图 32: 查看食品 当用户点击查看食品之后,用户首先得选择用户需要查看的储藏地点,当点击一个储藏地点之后,用户可以查看到该储藏地点所储藏的食物的种类,点击任意食物,可以跳转到一个新的界面,在该界面,用 户可以看到该食物的具体信息,有食品名称,购买日期,食品剩余,存放位置以及食物提醒条件。 在此界面用户可以看到三个按钮,分别是返回,修改,删除,点击返回,会跳转到上一个界面,点击修改,系统会跳转到一个新的界面,在该界面中要用户可以修改它的购买日期,可食用天数以及提醒条件,点击提交之后就会将数据提交到数据库中,当用户点击删除之后,系统会从数据库中将该数据删除。 流程图大致为如图 33 选择添加食物 该食物是否已经存在 添加该食物名称 是 否 图 32 添加食品图 职场大变样社区( ):下载毕业设计成品 9 提醒设置 当用户点击进入提醒设置之后,系统会跳转到一个新的界面,在该界 面中,用户可以启动提醒,并且设置提醒的时间,当然用户也可以点击关闭提醒按钮,关闭全部的提醒,在该界面,用户会发现单单设置提醒时间之后不一定会提醒,那是因为启动提醒的条件有两个,一个是启动时间满足,另外一个是必须有相应的食物设置过提醒,并且提醒条件满足,系统才会提醒。 流程图大致如下图 34: 选择查看食品 选择储藏室 是否点击食品 查看食品信息 是 否 图 33 查看食品图 职场大变样社区( ):下载毕业设计成品 10 购买清单 当用户点击购买清单之后,大家会看到有四个查看按钮,分别是已经提醒的食物清单,和三个食物量分别少于 7 天的清单,同时下面也有一个输入框,当你在 输入框中输入数字的时候,系统会根据你输入的数字自动的生成一个购买清单。 流程图大致如图 35: 进入提醒界面 是否设置提醒 选择提醒的时间 退出该功 能选择 返回主菜单 是 否 图 34 设置提醒图 职场大变样社区( ):下载毕业设计成品 11 总体设计要求 在完成以上所述的全部功能之后,该系统也要最低达到一定的水品,不能因为某些功能的实现而抛弃了系统本身的一些基本的性能。 系统应该要稳定的运行,不应该出现无响应等问题,你设计的软件连最基本的打开都做不了,那么你实现的那么功能也全部都是纸上谈兵。 还有一点就是你的界面显示的信息必须完全与数据库中的信息同步,这样的目的是增加软件的准确性,如果你的界面数 据与数据库不匹配,那么对于用户来说就是一件非常头疼的事情。 还有就是你的系统不应该做的太复杂,应该简单易懂,容易上手,如果你做的软件只有你能看得懂,那么这款软件的用户只限于你自己本身而已,那么我们开发这款软件就变得毫无意义,因为我们做软件首先要考虑的是全体群众。 再有一点就是此款软件必须可扩展性高,原因是由于个人的能力有限,另外一个人想的比较少,所以有很多用户需要的功能没有实现,那么到后期如果发现这样的问题,可以在不开发重写源代码的基础上,直接添加新的功能进行扩展。 点击购买清单按钮 查看食物清单 是否有食物少于食用天数 输入食物食用用天数 生成清单 是 否 图 35 购买清单图 职场大变样社区( ):下载毕业设计成品 12 4. 系统设计 总体设计 大致预想的总体设计罗 列到下列表中 ,如图 41 5. 返回 、设置提醒时间 、关闭提醒 图 41 功能模块图 具体模块功能介绍 初步设计模块 功能模块 首页 主界面 添加食品 查看食品 生成清单 提醒设置 职场大变样社区( ):下载毕业设计成品 13 对于正式进入该系统之后,我将该系统大致分为以下几个模块,如图 42: 添加食品 当你点击添加食品之后,会出现三个储藏地点,的那个你点击其中一个储藏地点之后会看到里面有狠毒哦可以储藏的食物,你可以点击食物并且储藏。 查看食品 当用户点击查看食品之后,通过滑动会看到三个储藏地点及一个全部食物的功能,点击进入储藏地点之后你会看到该储藏地点储藏的食 物,点点击全部食物之后,你会看到所有被储藏的食物。 提醒设置 点击进入该模块后,用户可以设置提醒的时间,但是设置了提醒时间后你会发现系统不一定会提醒,那是因为,你在添加食物的时候必须手动的去添加食物的提醒条件,两者如果都满足的情况下会提醒,在该界面还有一个关闭提醒,当你点击之后,所有的提醒将都会被关闭。 购买清单 在该模块下,用户可以看到自己已经提醒的食物清单,还有食物量分别少于三天,主界面 添加食品 查看食品 购买清单 提醒设置 返回 图 42 模块分组图 职场大变样社区( ):下载毕业设计成品 14 五天,七天的清单,当用户手动的去输入食品少于几天之后,系统会根据数据库中信息来为用户生成一个清单模块。 数据库设计 数据库初 步分析 根据我预想的情况,以及结合实际的用户信息,我初步设计了如下的数据库的数据项: 在此前我先声明 name=食品名称, date=购买食品日期, day=食物能够食用几天,leftday=设置的提醒条件, seat=食物的储藏地点。 具体设想如下: 所有食品的信息: ID,name,date,day,leftday,seat。 存放在冰箱中的食品的信息: ID,name,date,day,leftday,seat。 存放在厨房中的食品的信息: ID,name,date,day,leftday,seat。 存放在储藏室的 食品的信息: ID,name,date,day,leftday,seat。 SQLite 数据库的表结构以及建表语句 下面给出了数据库中表的结构, 如表 43: 字段名 字段类型 字段描述 备注 id Int ID 主键,不为空 name Text 食品名称 不为空 date Text 购买日期 不为空 day Int 食用天数 不为空 leftday Int 提醒操作 不为空 seat Text 存放位置 不为空 表 43 数据表 创建数据库以及建表语句。 private static class DatabaseHelper extends SQLiteOpenHelper { /*创建数据库 */ DatabaseHelper(Context context) 职场大变样社区( ):下载毕业设计成品 15 { super (context,DB_NAME,null,DB_VERSION)。 } /*创建表 */ @Override public void onCreate(SQLiteDatabase db) { String DB_CREATE=CREATE TABLE food(_id INTEGER PRIMARY KEY,name TEXT,date TEXT,day INT,alertday INT,seat TEXT)。 (DB_CREATE)。 String DB_CREATEICE=CREATE TABLE ice(_id INTEGER PRIMARY KEY,name TEXT,date TEXT,day INT,alertday INT,seat TEXT)。 (DB_CREATEICE)。 String DB_CREATEKITCHEN=CREATE TABLE kitchen(_id INTEGER PRIMARY KEY,name TEXT,date TEXT,day INT,alertday INT,seat TEXT)。 (DB_CREATEKITCHEN)。 String DB_CREATEROOM=CREATE TABLE room(_id INTEGER PRIMARY KEY,name TEXT,date TEXT,day INT,alertday INT,seat TEXT)。 (D。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。