感知装置的信息推送app的设计

本课题研究了一款安卓手机应用,用于管理人员和运维人员实时监测查询道路设备各方面参数并推送运维信息。设备参数电流,温度,湿度存储数据库中,通过Socket传入JAVA客户端,并在客户端实时显示,每过6秒自动更新一次。并且会在温度超过50,湿度超过80时进行报警。工作人员可随时查看参数的变化,当有异常发生时及时采取措施。论文部分具体讲述了这款手机应用的服务器部分——服务器和MySQL数据库的连接,服务器的Socket通信部分,客户端部分——手机应用的界面部分,客户端的Socket通信部分和数据库的表内容。关键词 安卓,JAVA,MySQL,Socket
目 录
1 绪论 1
1.1 研究背景 1
1.2 主要研究工作 1
2 相关技术 2
2.1 安卓(Android)前台技术 2
2.2 JAVA 后台 3
2.3 MySQL数据库 5
2.4 本章小结 7
3 功能设计 7
3.1 功能需求分析 7
3.2 系统架构设计 8
3.3 协议设计与解析 8
3.4 本章小结 9
4 系统实现 10
4.1 web服务器的实现 10
4.2 app移动端的实现 12
4. 3 协议设计与解析 16
4.4 数据库设计 18
4.5 本章小结 18
5 系统测试 19
5.1 基础环境搭建 19
5.2 服务器端测试 19
5.3 安卓客户端测试 21
5.4 本章小结 24
结 论 26
致 谢 27
参 考 文 献 28
1 绪论
研究背景
随着我国道路建设正在不断地发展,以信息采集和应用为主的感知航道、感知太湖等一系列工程开始展开并取得了不错的成果。为此,道路的管理也在不断提出新的要求。需要对道路的流量、运行状况进行监控,并能根据道路实时的流量进行交通调度。
要实现上述要求就需要相应的道路监控设备来支撑 *好棒文|www.hbsrm.com +Q: @351916072@ 
。但是由于道路上的监控设备部署的分散和一些地方比较偏远,如果这些道路监控设备出现故障,则需要依靠维护人员到现场去现场检测才能发现问题,设备逐个排查效率很低,并且工作人员人数不够,不可能经常对设备进行实地逐个检查。如何确保设备的正常使用,能够更少的消耗人力物力,一直是道路管理部门的难题。
根据这一现状,便设计一个检测道路设备的装置,该装置能检测设备的温度,湿度和电流,并能在温度、湿度过高时及时报警。这样,工作人员便能轻松定位故障设备,然后迅速前去展开维护,实现了设备的统一管理,远程维护,极大的节约了人力,提高了设备道路管理的工作效。
主要研究工作
本课题是设计一个手机应用,用于工作人员及时查询道路设备的温湿度,流量以及故障情况。手机应用通过连接IP地址连接服务器。客户端能够及时收到服务器传来的数据库信息。这样,手机应用能够对设备的温度,湿度和电流进行实时监控和显示。其主要研究的工作具体如下:
编写服务器程序,完成Socket服务器端的部署。
设计合理的数据库,服务器通过MySQL语言读取数据库中的内容,然后通过Socket将读取的数据参数回发到客户端。
客户端Socket程序编写,负责连接服务器,获取Socket的数据。
图形界面显示,将获取的服务器数据进行图形化显示。
2 相关技术
2.1 安卓(Android)前台技术
2.1.1 安卓(Android)系统架构
Android基于Linux系统是一个的开源移动设备平台,Android官方团队在发布基础版本后被收购,由国际领先的科技巨头Google公司接管[1],目前市场占有率前两位的移动终端系统就是Android和IOS,由于IOS的封闭性,手机厂商如果开发新的系统除了技术和时间不允许另外一个重要原因是无法使用众多软件,这种情况下,Android开放源代码,所以国际移动市场上除了苹果公司有自己的专属系统,其他的手机厂商包含三星、华为等公司都会嵌入Android系统,有实力的公司还会对Android源生系统进行深度的定制,大多只是UI的修改,内核不变,以适配市场上已有的亿级别数量的Android应用程序,给用户更丰富的软件资源和统一优质的交互体验。其层次架构由Linux Kernel(Linux 内核层)、Android Runtime(Android运行时库)、Libraries(函数库)、Application Framework(应用软件架构)、Application(应用程序)五大部分组成[2],目前Android应用开发在国内发展已经非常成熟,国内外论坛已有众多开发参考资料,方便进行本设计开发。

图2.1 Android系统架构
2.1.2 安卓(Android)SDK
Android SDK是指google官方为Android开发者提供的用于进行软件开发的工具包。其中SDK指的是软件开发工程师在特定的软件包、硬件、软件操作系统而建立应用软件的开发工具的集合[3]。
这次我设计的程序是应用层程序开发,基于SDK的Android开发限于开发Android最上层的JAVA应用程序包的产品。主要通过官方的一些方法和api接口进行相关逻辑设计以及通过一些适配器将数据显示在由xml脚本语言编写的布局文件上。Android每个版本都会有对应的API,目前最新是API 25(Android 7.0 Nougat)。在实际的移动开发过程中要对同一个应用进行多个版本适配,目前主要的节点是4.4.2以上支持沉浸式状态栏,6.0以上权限管理有重大改变,权限授权不是在安装时候一次性给用户授权,权限会分危险等级,危险的权限会在用户使用app过程中动态的让用户选择是否同意授权。这样的机制在一定程度上控制恶意软件病毒软件在Android手机中的扩散,保障用户的个人信息和资金安全。
2.1.3 Android开发环境
ADT(Android Development Tools)是本设计的安卓开发环境。Eclipse ADT是开发安卓应用程序的便捷软件。Eclipse可以集成很多插件,如果集成ADT插件就可以开发Android程序,由于Eclipse的开放性,给用户开发安卓程序带来很大方便。在ADT中,用户可以使用XML脚本文件进行界面的设计。在src目录下,编写JAVA文件,绑定相应的xml,然后对xml中的控件进行编程操作,设计课题需要的代码逻辑,便可以开发出属于自己的用户应用程序了。当基础环境配置好后,开发速度很快,有很强的自动索引,在插件市场上还有各种第三方免费的优质插件,让开发者的开发进度快了很多。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/wlw/552.html

好棒文