《大学毕业设计---基于安卓平台的智能电饭煲远程控制手机客户端.doc》由会员分享,可在线阅读,更多相关《大学毕业设计---基于安卓平台的智能电饭煲远程控制手机客户端.doc(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本科学生毕业论文(设计)题 目:基于安卓平台的智能电饭煲远程控制手 机客户端 (英文):The mobile client of intelligent rice cooker be remotely controlled based on android platform 姓 名学 号院 系专业、年级指 导 老 师毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
2、作者签名: 日期: 毕业论文(设计)授权使用说明本论文(设计)作者完全了解*学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。 作者签名: 指导教师签名: 日期: 日期: 注 意 事 项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词 5)目次页(附件不统一编入)6)论文主体部分:引
3、言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上
4、5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它基于安卓平台的智能电饭煲远程控制手机客户端摘 要随着物质条件和生活水平的不断提高,人们对家居环境的要求也由单纯的追求舒适向安全和便捷的方向发展。对家中的电器进行远程控制,使得人们不在家中也能随时随地控制家中电器设备,可以为人们的生活带来更多地便捷。传统的智能家居控制系统中,大多是基于互联网的远程控制,并采用PC机作为做监控终端,这在很大程度上受到互联网络地域的限制,使用起来不方便,难于大范围的推广。而随着智能手机的普及和3G网络技术的快速发展,以
5、体积小、便携性好的智能手机作为家居远程控制的终端设备无疑是一个非常理想的选择。目前,市面上的智能手机其操作系统多为iOS和Android两种,而由于Android系统免费、开源,因此市场占有率更高。本项目就是基于Android平台所开发的一款手机客户端,用于对嵌入了wifi模块的智能电饭煲进行远程控制,使得忙碌的人们一回到家就能吃上香喷喷的米饭或菜肴,为人们的生活带来更多的方便。【关键词】:Android;智能电饭煲;远程家电The mobile client of intelligent rice cooker be remotely controlled based on android
6、platformAbstractAs the material conditions and the continuous improvement of living standards, the requirements of the people to the home environment is also from a mere pursuit of comfort to the direction of safety and convenience.The electric remote control in the family, make people not in the ho
7、me also can control home appliances anytime and anywhere, can bring to peoples life more convenient.The traditional smart home control system, is mostly based on the remote control of the Internet, and uses the PC as monitoring terminal, thanks in large part by internet geographical restrictions, no
8、t convenient to use and difficult to a wide range of promotion.And with the popularity of smartphones and 3 g network technologys rapid development, with small volume and good portability of smartphones as household remote control terminal equipment is a very ideal choice.At present, the smartphone
9、operating system available in the market for iOS and Android two more, and because the Android system is free, open source, so a higher market share.This project is based on the Android platform developed by a mobile client, used to embed the wifi module of intelligent remote control electric meal b
10、ao, the busy people got home can eat delicious rice or dishes, bring more convenience for peoples life.【Key words】:Android;Intelligent electric meal bao;The remote home appliance。目 录摘 要I目 录III1 绪论11.1 智能家居的概述11.1.1 智能家居的定义11.1.2 智能家居的发展状况11.2 智能家居研究的背景和意义21.3 课题的主要研究内容和论文结构22 开发平台和相关技术的介绍32.1 开发平台介绍
11、32.1.1 Android平台开发框架32.2 相关技术介绍42.2.1 第三方包 json42.2.2 常用Android系统小组件53 项目的可行性和需求分析73.1 项目可行性分析73.1.1 技术上的可行性73.1.2 经济上的可行性73.2 需求分析83.2.1 功能要求83.2.2 性能要求84 客戶端概要设计94.1 系统体系结构94.1.1 视图层104.1.2 控制层104.1.3 模型层104.2 系统功能模块114.2.1 系统功能模块划分114.2.2 系统总体控制流程114.3 用例图和数据库的表的设计124.3.1 用例图124.3.2 概念模型设计-E-R图12
12、5 客户端详细设计155.1 客户端登录模块设计155.1.1 用户注册界面详细设计155.1.2 用户登录界面详细设计174.1.3 Wifi连接界面详细设计195.2 Diy新建菜单模块设计205.2.1 做菜过程时间段的定义205.2.2 按键功能设计205.2.3 新建菜单实现界面235.3 menu主菜单模块设计235.3.1 主要功能的实现235.3.2 菜谱实现界面265.4 setting自定义模块设计265.4.1 保温快捷按钮265.4.2 wifi状态显示275.4.3 自定义菜单275.4.4 自定义模块界面286 客户端测试296.1各个模块的测试296.1.1 登录
13、模块测试296.1.2 Diy新建菜单模块测试306.1.3 导入导出功能测试306.1.4 自定义模块测试317 总结与展望33致 谢35IX1 绪论自工业革命以来,社会生产力的不断发展,人民的生活生平不断提高,人民对日常的衣食住行的要求也越来越高,传统的家庭生活理念已不适合当今快节奏的都市生活,传统的家居系统成本高、安全性差、功能少,操作复杂,占用时间长,于是提出了改革传统的手工控制机械过程的家庭生活方式,要求借助于物联网技术和移动终端实现“简单的、安全的、方便的、实时的、快捷的”家居控制系统。1.1 智能家居的概述1.1.1 智能家居的定义目前通常把智能家居定义1为利用计算机、网络和综合
14、布线技术,通过家庭信息管理平台将与家居生活有关的各种子系统有机地组合成一个系统。具体来说,就是首先在一个家居中建立一个通讯网络,为家庭信息提供必要的通路,在家庭网络操作系统的控制下,通过相应的硬件和执行机构,实现对所有家庭网络上的家电和设备的控制和监测。其次,它们都要通过一定的网络平台,构成与外界的通讯通道,以实现与家庭以外的世界沟通信息,满足远程控制、监测和交换信息的需求。最终达到满足人们对安全、舒适、方便和绿色环保的需求1。1.1.2 智能家居的发展状况其实,从上世纪末智能家居进入中国,该行业已经发展了十数年,已从枯燥的名词变成身边的各种安防系统、对讲系统、自动抄表系统、火灾报警系统、家庭
15、影院系统、灯光和家电控制系统、家庭信息化平台、信息家电等,看似市场在逐渐成熟,但如今看来还没有发展到一定的规模,似有闭门造车之嫌,其实内里存在不少问题,阻碍了整个行业在市场上的进一步发展。目前智能家居市场存在的问题是:缺乏规范的、统一的行业标准;产业核心技术有待突破;应用模式有待创新,产品稳定性可靠性还有待进一步提高;产业链不完整,缺乏完善的社会合作体系;跨产业的合作困难重重;市场推广力度不够。现在,物联网2给智能家居带来了第二次生命。据了解,工信部将支持重点领域应用示范工程,具体包括智能工业、智能农业、智能物流、智能交通、智能电网、智能环保、智能安防、智能医疗与智能家居九大领域,尤其是智能家
16、居和智能医疗领域,惠及民生,能提高民众生活品质,潜在应用需求更为迫切,因此有望形成大的产业规模。1.2 智能家居研究的背景和意义随着社会经济结构、家庭人口结构以及信息技术的的发展变化以及人类对家居环境的安全性、舒适性、效率性要求的提高,造成家居智能化的需求大大增加,同时越来越多的家庭要求智能家居产品不仅要满足一些基本的需求,更要求智能家居系统在功能扩展、外延甚至服务方面能够做到简单、方便、安全。为了满足简单、快捷、安全、实时的现代家居生活理念,远程控制是现代智能家居具有的一大特点,远程控制成为了智能家居的一种标志性技术,被广泛应用于各种智能家居系统中。Android是谷歌开发的基于linux平
17、台的开源移动操作系统3,它包括操作系统、用户界面和应用程序移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍,是一个移动终端打造的真正开发和完整的移动软件。也正是Android开源的移动操作系统的优势,该项目开发的移动控制客户端软件就是应用于Android智能手机上。在手机上可以通过下面三种方式可以实现远程控制家居系统2:第一种是采用短信控制,现在控制智能家居的报警系统4还有部分在沿用这个控制方式。第二种是通过拨打电话控制,主要还是用于报警系统,部分智能控制系统用着个方式。 第三种是使用智能手机的定制软件控制,这个需要有个智能中控系统,通过网络的方式访问控制。 在以上三
18、种方式中,智能手机的定制软件控制未来智能化家居控制的主流和趋势,本项目正是采用的这种方式。也正是安卓是开源的移动操作系统,给国内的物联网的发展带来了极大的空间。1.3 课题的主要研究内容和论文结构本文深入分析了课题的背景7、智能家居的现状和发展趋势,在前人的研究基础上结合安卓移动操作系统上进行设计。本课题着力于设计开发一款操作简单方便、功能齐全的智能电饭煲远程控制手机客户端,专为老人和家庭主妇使用。其多彩的操作画面,简单、传统的的操作流程,完全符合大多数人的操作习惯。本文共分为6章,主题内容如下:第一章,绪论部分,概述了智能家居在国内的定义和发展前景以及智能家居研究的背景和意义。第二章,平台介
19、绍和相关技术介绍,主要介绍了开发本客户端的开发环境、平台、数据库和第三方包以及开发中经常使用的小组件。第三章,项目的可行性和需求分析,是介绍了该课题的项目需求分析和项目的可行性。需求分析主要从功能分析和性能分析两个方面阐述。项目的可行性主要从技术上和经济上两个方面分析。第四章,客户端的概要设计和数据库表的设计,这章主要讲了系统的体系结构,从视图层、控制层、模型层三个方面进行分析。第五章,客户端详细设计,在这章主要讲了客户端的设计界面和一些重要的功能实现的具体代码。第六章,客户端测试,主要是测试客户端的四个模块的基本功能实现的效果图。第七章,总结与展望,主要通过该客户端的设计,我学到的东西,还有
20、这个客户端的不足。2 开发平台和相关技术的介绍2.1 开发平台介绍2.1.1 Android平台开发框架图1-1 android框架图图1-1是Android的框架图,很直观的显示Android系统从底层到上层应用开发的依赖关系。Android的系统结构分成了四层,由底向上分别为内核层、运行库层、应用框架层、应用层8。详细介绍如下:1、内核层:主要还是标准的linux,这里面Android对其自身特有的一些硬件又做了相应的驱动开发,并把驱动抽象到了一个Android HAL层(硬件抽象层)。致于为何这样做,有这样的一个说法是若是直接在linux内核上进行开发,需要遵守linux的开源策略,这对
21、很多厂家来说,涉及到了商业秘密的问题,这个是不可能公开的,虽然Android是开源的,但是他的很多源码是要付费的。还有底层核心是不开源的。2、系统运行库层:系统运行库层,主要是由C和C+语言开发,运用JNI可以调用C和C+语言,在jni里封装了JAVA调用C和C+的方法,在这里面可以写JAVA代码和C+代码。实现了系统接口调用和其他的运行模块。3、应用框架层:这里面实现了对底层C/C+的调用封装,Android为开发都提供了基本的应用接口,是通过JAVA实现的,JAVA调用底层的C/C+则是通过JNI机制来实现。在这里好的应用框架开发,可以给上层的应用调用提供更好的帮助。4、应用层:用户最直接
22、感受到的一层,这里面实现了与用户交互的过程,不管从界面UI,或是功能上,都与用户相关系,这个好坏决定着用户对产品的认可底。否则,底层封装得再好,也没有用,一般上层的设计都是按照大众的生活观念和app的功能特点来综合考虑设计出来的2.2 相关技术介绍2.2.1 第三方库 gson json是一种数据格式,他以“键值”对的形式存在,便于数据传输、存储、交换,是把所有的数据下载到本地数据库中进行解析,占用的内存比较大,它解析的数据格式是比较简单,结构单一。这个也是json数据格式的不足之处,但对于解析客户端的菜单的数据格式已经足够了。还有xml数据格式,这是一个比较复杂的数据格式,是边下载,边解析的
23、机制,一般用于解析html网页的数据格式。但对于解析本客户端的菜单数据格式,用json数据格式就足够了。gson是一种组件库,可以把java对象数据转换成json数据格式,一般用到的简单解析数据都用gson库,还有其他公司开发的解析json数据格式的组件库,本项目只是用了google官网提供的组件库,其功能已足够满足本项目的需求。1、Json的规格Json的规格非常简单,只用一个页面几百个字就能说清楚,而且Douglas Crockford声称这个规格永远不必升级,因为该规定的都规定了。 2、JSON数据的解析谷歌GSON这个Java类库可以把Java对象转换成JSON,也可以把JSON字符串
24、转换成一个相等的Java对象。Gson支持任意复杂Java对象包括没有源代码的对象。然后就可以使用以下两种方法来解析JSON数据了。 1)通过获取JsonReader对象解析JSON数据: 2)通过把JSON数据映射成一个对象,使用Gson对象的fromJson()方法获取一个对象数组进行操作: 在本项目中,gson的解析使用的是第二种方法,如下:/当从电饭煲里获取菜单是要用到gson包的解析MenuBin的参数Gson gson=new Gson();MenuBin mb = gson.fromJson(bin, MenuBin.class);/ 转换成类2.2.2 常用Android系统小
25、组件1、下面就举例一两个Android开发常用的view组件10,这个是diy.xml里的两个组件:Imageview和textview:/设置图片 /结束imageView继承于button,也就是可以在button11上加图片,另外加了自己的一些属性,在android项目开发中,是最常用的组件之一。 /string 的大小这个textView是android开发中最常用的,界面上显示的文字基本上都是在这个view组件上,因此用途很广泛。它的子类组件有button,edittext等。2、intent意图跳转Intent12负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Andr
26、oid则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用.。Intent分为显示意图和隐示意图,显示意图必须指明两个activity的类名,而隐示意图只需指明目标的activity在项目中的路径的string就行了。显示意图的跳转,在一般的Android项目中非常普遍,可以说它是Android的四大组件的纽带。没有它Android项目不可能完成。v.getActivity().startActivityForResult(new Intent(context, SettingActivity.class), ToSettingActivity);
27、以下是隐示意图的跳转: v.getActivity().startActivityForResult(new Intent(“cookerbjx.activity. SettingActivity”),ToSettingActivity);它们功能是一样的,隐示意图一般是跨应用的引用,启动系统中的某些特定的动作。3 项目的可行性和需求分析3.1 项目可行性分析3.1.1 技术上的可行性1、项目所使用的安卓平台是基于linux系统开发的一个开源移动操作系统Android 是一个移动设备的软件平台,是由 Linux+Java 构成的开源软件,它提供包括SDK、Key Apps、Middleware
28、、Linux Kernel四个部分在内的全套手机软件方案13。它开放了基于Linux内核以上的开发工具,也就是application层可以通过jni调用底层的c的so库。从而保证了内容的可移植性和多样性以及处理的快捷性。Android平台为设计者开发应用程序提供了一套很好的框架,设计者不仅可以在这个平台的基础上开发不同的应用程序,还可以开发新的组件供应用程序调用。甚至可以引入第三方库加入项目,开发出来的应用可以供别人下载到安卓系统里使用,或在第三方下载程序装在有安卓系统的终端使用。这是其他移动操作系统不能够实现的。2、Android的基础语言是java语言,本人具有一定的设计开发基础。Andr
29、oid是用java语言编程的14,语法和逻辑是遵循java语言的规则,只不过Android的函数库是自己的,但是它的函数库仅仅只改了类名而已,其函数的用法都一样的,Android的开发框架也是参照j2ee的“mvc”模式定义的。Java开发中的单例模式,观察者模式,工厂模式等等模式,在android的实际开发中也同样适用。本人在大学里学习过java语言,并且做过一些java项目,所以对Android项目的开发有一定的程序设计基础。3.1.2 经济上的可行性手机app主要还是在界面部分,而这个部分是要求界面设计合理,符合大众的操作观念,同时还有使系统稳定,字体要醒目,图片要求高清的,这些要求在A
30、ndroid这个平台上都可以达到。而且网上有大把免费的高清图片和文字格式让开发者选择。项目的整个开发环境ATD可以在google官网上免费下载,第三方包gson的引用也是可以在网上免费下载的。因此,基本无需支付任何费用就可以使用这些开发工具,另外,本系统完全由个人开发,除了个人的时间和精力的消耗之外,基本上没有什么经济方面的开发成本。本項目的设计与开发是非商业性的,虽然没有经济方面的收益,但对于本人而言,既加深了本人对JAVA基础知识和Android框架的了解和掌握,也为以后的软件系统的设计和开发积累了一定的实践经验。总之,本客户端的经济社会效益是大于它的开发成本的,因而,经济上是可行的。3.
31、2 需求分析3.2.1 功能要求根据对用户的功能需求进行调研可知,用户在使用智能化远程控制的厨房电饭煲时具体功能要求如下:1、对常用的煮饭、热饭、加热、保温、定时等功能应有相应的快捷按钮;2、提供常用的固定菜单,但可对固定菜单设置名字、说明、时间段等一些参数信息;3、用户可以自己创建和保存新的菜单,并可以下发给电饭煲保存定时执行,也可以从电饭煲里导出到手机内存;4、电饭煲在工作时,能实时显示菜单的执行进度;5、可以进行多人控制,并定制用户的使用权限。3.2.2 性能要求1、客户端应具有较高的安全性和隔离性。用户登陆后可以操作自己的菜单并且保存,各用户之间互相独立、互不干涉,也看不到其他用户的菜
32、单。2、客户端在数据传输时不能有传输丢失数据,以免造成对电饭煲的错误操作而带来麻烦。3、考虑到用户的对智能机实际操作水平,系统应采用较友好的人机界面,使得操作灵活方便、简单直观,老人和小孩都会使用;4、wifi硬件模块应具有较强的数据处理能力、支持实时通讯,安全,可靠。5、客户端应具有良好的可靠性、稳定性和易维护性,具备检错、纠错和容错能力以及强制停止的功能。4 客戶端概要设计该客戶端将从体系结构、功能模块和静态模块三方面进行概要设计。4.1 系统体系结构开发一个Android项目,其平台本身就是一个框架,并遵循j2ee的mvc的设计模式15。其实Android封装的已经很好了,所以视图层(x
33、ml定义的layout就是View层)比j2ee的视图结构要清楚很多。在本项目中主界面的视图层是main.xml,这个是android特有的一种视图层。模型层一般是业务实体类(根据业务来的),本项目中有很多,在包bin,adapter里都是模型层,控制层是activity,在本项目里也有很多,在包activity,view以及service里。该客户端的Android的mvc模型如图3.1所示:图3-1 项目的mvc模型图在实际的开发中,开发环境里的层次不像mvc模型里的那么明确,清晰,往往是没有什么标志的。项目的实际分层如图3.2、图3.3所示。其中图3-2中的src包里面是源代码,cook
34、erbjx.bin、cookerbjx.adapter、cookerbjx.sql代表模型层,cookerbjx.activity、cookerbjx,activity.view、cookerbjx.service代表控制层。图3-3中Res包是android项目的的资源包,其中layout里面的xml文件是视图层,androidManife.xml是项目的配置文件,在该文件里声明了Android项目里定义了哪些是activity文件,哪个activity文件是初始视图,定义了哪些服务,引用了系统哪些权限,声明了项目的包名,初始化的activity文件必须放在包名里。图3-2项目分层图1 图3
35、-3项目分层图24.1.1 视图层视图是用户看到并与之交互的界面,当用户开始注册时,由控制层来接受此注册请求,将用户注册的信息写进本地的sqlite数据库,以便下次登录验证,在diy新建菜单和快捷功能的模块里,当用户输入相关的数据是在控制层调用相关程序做具体的数据存取逻辑运算等处理,把用户的数据结果存储在本地的数据库,等待用户通过wifi模块下发给电饭煲控制面板,然后,控制层把得到的结果通过视图返回给用户,保存的数据可以在主菜单的菜单里可以查看。4.1.2 控制层控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击程序中的按钮或控件时,控制器本身不输出任何东西和做任何处理。它只是接
36、收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。再该项目中当点击界面上的某个按钮,也就是视图层的layout文件下的.xml文件里的button组件时,他会去加载项目的activity里的生命周期的部分java文件的方法。最后,界面将重新加载在控制层上。4.1.3 模型层通常模型层用来处理系统数据和业务规则。在MVC的三个部件中,模型层拥有最多的处理任务。例如它可能用来操作数据库,处理乱码等。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性10。
37、在本项目的cookerbjx.view中的systemButton.java中,封装了主界面的14个按钮的样式,包括imageBg,image,text。在NineItem.java里,封装了9个时间段的数据显示格式,包括step,time,temp,press,condition,comment。4.2 系统功能模块4.2.1 系统功能模块划分根据用户需求分析,将系统分为“登录模块”、“menu主菜单”、“diy新建菜单”、“setting”四个功能模块。各模块功能如下:1、登录模块该模块主要用于用户注册、用户登录和wifi的登录连接。2、menu主菜单模块该模块用于查看、修改、导入、导出、
38、上传、下载菜单。在主界面下还应提供常见菜单的快速启动方式。3、diy新建菜单模块在该模块下用户可以新建14种菜单,并保存在menu菜谱里。4、setting模块该模块用于连接wifi和device(电饭煲),控制用户的登入登出。4.2.2 系统总体控制流程 图3-4 客户端总体流程图上图3-4所示的是系统总体控制流程图,其运行流程为:首先,开启该客户端,首页是登陆界面,如果是首次使用,则必须要要注册,不然没法使用该客户端,进入注册界面完成用户信息的填写,然后注册成功,进入主界面,在主界面可以进入任何一个系统模块,如果有用户名,则输入用户和密码进入系统主界面,然后可以任意操作。4.3 用例图和数
39、据库的表的设计4.3.1 用例图用例图是从用户角度描述系统功能,并指出个功能的操作者,用例图能描述出用例、角色以及它们之间的关系。本系统的用例图如下图3.5所示:图3-5用户权限图从上图可以看出一个用户可以在客户端对菜单可以增、删、查、改、上传、下载、导入、导出的操作。4.3.2 概念模型设计-E-R图概念模型用于信息世界到机器世界的一个中间层次,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言,因此概念模型一方面应该具有较强的语义表达能力,能够方便,直接地表达应用中的各种语义知识,另一方面它还应该简单,清晰,易于用户理解。最常使用的是实体-联系方法。该方法
40、用E-R图来描述现实世界的概念模型。E-R图提供了表达实体型,属性和联系的方法。以下三个图是数据库三个表的E-R图:图3.6 User表的E-R图在图3.6所示的User表的E-R图中,email是用来找回用户名密码的。String Table_Name=user;/表名String Id=id;/用户idString Name=name;/用户姓名String Password=password;/用户密码String Email=email;/用户邮箱下图3.7为用户menu表的E-R图:图3.7 用户menu表的E-R图String Table_Name=menu;/表名String I
41、d=id;/菜单idString Model=model;/diy新建菜单String Number= number;/ 功能编号,0x0d为自定义,其他为系统设定String Image=image;/ 照片路径String Name=name;/ 菜单名称String Pressure=pressure;/ 压力String Temp=temp;/ 温度String Time=time;/ 时间 单位分钟String Type=type;/ 菜单类型String Help=help;/ 帮助说明String KW=kw;/保温String IsUpload=IsUpload;/是否为上传菜
42、单String OnlyId=OnlyId;/唯一id下图3.8是用户菜单的9个时间段属性data的E-R图,其中:String Table_Name=data;/ 表名String Id=id;/id 自动增加String MenuId=menuId;/菜单的id 总共14个String Number=number;/ 菜单号String Time=time;/时间String Temp=temp;/温度图3.8 用户菜单9段时间data的E-R图String Type=type;/菜单类别String Pre=pre;/压力String Enable=enable;/是否能够点击Strin
43、g Condition=condition;/条件:0提示,1报文,2跳过String Help=help;/帮助String ConditionsResults=conditionsResults;/设置条件返回的结果String Msg=msg;/推送消息5 客户端详细设计5.1 客户端登录模块设计5.1.1 用户注册界面详细设计在该操作界面下,用户输入的Username和password以及email将会写入数据库中。1、主要源代码:public void register() UserBin ub = v.getBin();/得到用户注册信息用户名,密码,邮箱String name = ub.getName();String password = ub.getPassword();String rPassword = ub.getrPassword();String email = ub.getEmail();if (name = null | name.equals() Toast.makeText(context, R.string.noName, Toast.LENGTH_LONG).show();/Toast是往界面上弹出一个提示框,他的内容是第二个参数return; /跳出方法,终止程序
限制150内