谭钦红,黄茂碟,张作运
(重庆邮电大学 通信与信息工程学院,重庆 400065)
基于Android的情报管理系统设计与实现
谭钦红,黄茂碟,张作运
(重庆邮电大学 通信与信息工程学院,重庆 400065)
根据现有信息处理方式,设计了基于Android的情报管理系统。情报管理系统通过网络实时上传采集的情报信息,管理员及时处理并下发指令,APP用户根据指令进行处理并将结果反馈给管理员从而形成闭合的信息处理方式。紧急情况下手机客户端直接与后台管理端进行视频直播,更加快捷地做出处理措施。详细阐述了系统的总体构架,介绍了系统的功能模块和具体实现,对系统进行测试,并提出系统需要完善的地方。
Android;情报管理系统;JAX-WS;视频通话
随着 “互联网+”[1]时代的到来,传统行业中情报信息处理方式显得有些过时,如民警执法、事故现场指挥救援等采集的情报信息往往是事后处理,导致信息滞留,采集设备也因行业不同使应用场景受限。本文基于互联网技术,采用全新信息处理模式,设计了基于Android[2]的情报管理系统。选用开源MySQL[3]关系型数据库放置在网络服务端,通过Web Service技术进行数据传输,利用线程及流媒体技术进行视频数据传输,实现信息及时上传处理并利用Android平台扩展应用场景,达到了较好的情报管理效果。
1.1 系统简介
情报管理系统主要包括后台数据存储服务器、手机端(包括手机客户端和手机服务端)和后台管理端三部分,其系统架构图如图1所示。手机端采集情报信息上传至后台管理端,后台管理端处理采集信息下发指令给手机端,手机端用户根据指令内容完成相应动作并进行反馈从而完成一条闭合的信息处理。情报信息数据在两大服务器中进行处理。系统接入互联网,实时将现场音视频图像回传给后台管理端,将手机变成随身携带的监控点,弥补传统监控设备有图像没声音,无法实时上传视频图像等问题。
图1 情报管理系统架构图
1.2 系统设计
情报管理系统手机端由Android平台开发完成,手机端采用C/S[4]架构将应用程序分为手机客户端、手机服务端两部分,手机服务端与数据存储服务器进行数据交互;后台管理端由.NET[5]平台开发完成,后台管理端访问数据存储服务器获得数据。
通过调用JAX-WS[6]服务来发布使用Web Service框架的手机服务端,简化了Java技术开发和部署Web Service的工作。手机客户端采集情报信息通过HTTP协议访问Tomcat发布的Web Service服务器接口将信息存入数据库,将图片存入FTP服务器并将图片路径写入数据库中。后台管理端通过访问数据库得到情报信息,进行分析并下发处理指令写入数据库中,同时接收手机客户端通过Socket连接请求的实时视频传输。情报管理系统数据流图如图2所示。
图2 情报管理系统数据流图
情报管理系统主要有三大功能模块:情报模块、指令模块、视频图传模块。情报模块包括后台管理端的情报管理和手机端的情报采集,两者共同完成情报信息的管理以及采集;指令模块包括后台管理端的指令管理和手机端的指令处理,两者共同完成实时指令的处理;视频图传模块实现一对多的通信模式,后台管理端可以同时接受多个手机客户端发起的视频连接请求,实时监听完成视频传输,并在视频通话结束后把视频存入FTP服务器中将视频路径写入数据库。
2.1 情报模块
该模块手机客户端通过HTTP方法上传情报信息,情报信息包括情报标题、情报内容、发生时间和地点,以及选择图片作为附件等,同时手机客户端用户可以查看历史上传情报。从后台管理端,管理员可以查看相应的情报信息,实时监听手机端是否上传情报。
2.1.1 情报模块手机端实现
完成该模块功能需要在程序中申明INTERNET权限让APP应用接入网络,申明调用手机摄像头拍照和操作权限允许APP应用拍照以及操作手机图库照片,APP应用实现完整信息上传。
在手机客户端定义InformToServer类,利用HTTP的POST请求方法实现客户端与服务器之间的数据传输。访问服务端Web Service接口的方法如下:HttpPost httpPost = new HttpPost(urlAddress)创建POST请求方法,并且在List
在手机客户端创建基于JAX-WS的InformActivity客户端类,在手机服务端创建基于JAX-WS的Upload服务端类,实现WSDL对Web Service接口的定义。手机客户端通过访问手机服务端指定Web Service的wsdlURL(访问路径)和QName(命名空间)完成图片信息的上传。
2.1.2 情报模块后台管理端实现
该模块后台管理端将实时监听手机端上传情报信息条数,提醒管理员系统中存在未处理情报。
点击主界面“情报管理”按钮,通过mysql.mySqlCommand.ExecuteReader()方法访问数据库,将返回的数据在ListView控件中显示。管理员可以按照指定日期的时间段、所属机构以及情报信息状态查询情报内容。管理员根据上传的情报内容做出正确处理措施并将以指令方式下达给APP用户,通过new Order(order_ID, inform_ID)方法跳转到指令下发界面进行下发操作。
2.2 指令模块
该模块中手机客户端主动向手机服务端请求查询后台管理端下发的指令信息,后台下发的指令内容插入MySQL数据库中,手机服务端访问数据库,将数据反馈给手机客户端,利用ListView控件将信息显示在APP界面上,并根据指令信息进行情报反馈。
2.2.1 指令模块手机端实现
点击APP应用主界面的“新指令”按钮,使用HTTP的POST请求访问手机服务端的Web Service接口。手机服务端反馈数据较多,将采用JSON数组形式进行返回。首先将从数据库中获得的数据以键值对的方式存入HashMap散列表中,接着调用JSONObject类将HashMap对象转成Jason数组反馈给手机客户端。手机客户端以Jason格式接收数据再进行处理。
APP主界面中将实时显示未读指令条数,提醒APP用户及时查看新指令并对指令进行反馈。该功能将在手机客户端设置一个定时任务,不断轮询手机服务端得到最新数据[7],实现方法如下:Timer timer = new Timer()创建定时器,TimerTask task = new TimerTask()创建执行任务,利用timer.schedule(task, 0, 3000)执行定时任务。
2.2.2 指令模块后台管理端实现
后台管理端的指令功能包括指令管理和指令模板两个模块。指令管理即为管理员下达新指令,指令模板将日常事件生成样板,在下达新指令时选择即可。模块内容可根据日期、状态或者标题进行查询,同时可完成新建与删除操作。后台管理端指令下发流程如图3所示。
图3 指令下发流程
2.3 视频图传模块
该模块中手机客户端将直接与后台管理端进行网络连接完成视频通话[8],此通信方式实现了视频传输实时性高、传输效率高等。情报管理系统可实现多个手机客户端与后台管理端通话,同时进行多个场景的视频监控。手机客户端与后台管理端交互的数据流向如图2虚线标识部分所示。该模块采用传输控制协议[9](Transmission Control Protocol,TCP)协议建立连接实现Socket通信。
(1)手机客户端视频请求
Socket通信前对APP应用中视频通话的视频质量进行设置。首先在程序中申明调用使用手机摄像头拍照权限对摄像头进行初始化,设置视频宽度、视频高度等影响视频质量因素的值。完成视频通话准备工作后新开线程建立TCP连接,实现方法如下:client=new Socket(serverUrl,serverPort)定义MyThread对象方法,Thread th = new MyThread()实例化MyThread对象,th.start()执行连接请求。
(2)后台管理端接收请求并存储视频
后台管理端接收来自手机客户端的TCP请求,点击打开视频播放器实现与手机用户视频通话,在视频通话结束后将视频存入FTP服务器并在数据库中写入视频存放地址,以便回放历史视频查看。为了完成多个场景下视频监控,后台管理端同时开启多个Socket线程接收手机客户端的视频请求。实现方法如下:
实例化名SocketServer对象,名为server;
调用server对象的接入函数,数据流接收函数,中断函数;
开始监听server对象;
(3)后台管理端视频回放
每次视频通话结束后台管理端会将视频存入FTP服务器,访问数据库得到视频存储地址对视频进行回放,为事件处理提供有利证据。系统需要在指定管理员身份下查看相关视频录像。该功能的伪代码如下:
获得历史视频存储地址lvi;
实例化名为vlc的视频播放对象;
设置vlc的名称:lvi.SubItems[3].Text;
开始播放视频;
系统手机服务端由MyEclipse、Tomcat、JDK、MySQL开发完成,手机客户端由Eclipse、JDK、Android SDK、ADT开发完成,后台管理端由Visual Studio开发完成。基于系统开发环境以及系统框架的设计,首先在xampp中开启MySQL服务,其次打开系统后台管理端可执行文件,并在MyEclipse软件中启动Tomcat服务器开启系统手机服务端,为手机客户端提供可访问Web Service接口。最后将情报管理系统手机APP的安装文件apk安装到Android手机终端,进行系统测试。
(1)系统主界面
系统主界面的呈现方式对于用户体验是至关重要的,简单大方的UI设计方便用户快速定位到所需功能。在手机端和后台管理端的主界面都直接设置了系统功能模块按钮,用户点击按钮即可跳转对应功能模块,进入系统主界面流程如图4所示。
图4 主界面流程图
(2)情报和指令模块
情报模块和指令模块是相互关联的功能模块。手机客户端采集情报上传,后台管理端根据情报信息下发处理指令,手机端对指令信息进行情报反馈,因此情报与指令模块测试一起进行。进入模块流程如图5所示。
图5 情报和指令模块流程图
(3)视频图传模块
视频图传是系统开发的核心,要求视频清晰,对该模块进行测试。APP应用接入网络并调用手机摄像头进行视频录入与后台管理端进行Socket连接完成实时通话,视频通话流程如图6所示。
图6 视频通话流程图
情报管理系统应用解决了传统行业中的信息滞留问题,同时将随身携带的手机变成监控点、定位点,节约了不少设备资金。这样的系统取代了传统行业中的情报信息处理方式,随时随地采集信息,实时上传,及时处理。此外,系统还需要进一步完善,做到Android手机端之间的信息共享。
[1] 宁家骏.“互联网+”行动计划的实施背景、内涵及主要内容[J]. 电子政务, 2015(6):32-38.
[2] LEE J K, LEE J Y. Android programming techniques for improving performance[C]. 2011 3rd International Conference on Awareness Science and Technology (ICAST2011), 2011:386-389.
[3] CABRAL S K. MySQL 5.5: improving on the world’s most popular open source database[J]. Database Trends and Applications, 2011, 25(3):30.
[4] 陈俊斌.C/S与B/S结合的软件体系结构[J]. 电子技术与软件工程,2015(3):68-69.
[5] 王海燕.C#.NET下三层架构数据库应用系统开发[J]. 计算机技术与发展,2012,22(6):78-81.
[6] 彭邦伦.利用JAX—WS开发Web Service[J]. 电脑编程技巧与维护, 2008(12):21-23.
[7] 倪红军.基于Android平台的消息推送研究与实现[J]. 实验室研究与探索, 2014,33(5):99-100.
[8] 邓蕊.基于Android的视频监控的研究与实现[D]. 西安:西安电子科技大学,2012.
[9] Xiong Yonghua, Wu Min, Jia Weijia. Delay prediction for real-time video adaptive transmisson over TCP[J]. Journal of Multimedia, 2010,5(3):216-223.
谭钦红(1968— ),女,硕士,副教授,主要研究方向:复杂可编程逻辑器件、无线电电子学、互联网技术。
黄茂碟(1992— ),女,硕士,主要研究方向:互联网技术。
张作运(1990— ),男,硕士,主要研究方向:互联网技术。
德州仪器汽车处理器出货量突破1.5亿,凭借更安全
且更互联的驾驶体验推动汽车市场创新
为了持续拓展在汽车市场的领导力,德州仪器(TI)日前宣布其高级驾驶员辅助系统(ADAS)及数字化驾驶舱片上系统(SoC)的出货量已经突破1.5亿,为超过35家原始设备制造商(OEM)提供服务。TI在汽车领域拥有长达35年的历史,同时为世界各地的汽车制造商提供了数以亿计的模拟和嵌入式处理解决方案,凭借丰富的经验,TI所创造的TDA和“Jacinto”处理器系列能够帮助设计人员开发出更安全且更互联的应用。TI的汽车处理器能够满足汽车制造商对于生产下一代汽车的所有需求,不仅能让消费者享受驾驶的乐趣,同时还为他们提供了所需的功能,包括总成本优化下的全新应用以及相较于以往车辆更具交互性和响应性的特性。
凭借TI具有更高功能性和性能的多核异构架构,汽车制造商能够充分利用已安装的硬件组件在同一平台上实现创新,同时在不影响系统性能的情况下扩展当前的软件投入。该架构还可以实现更强的并发性,从而使得设计人员能够进一步扩大图像、信号和视觉的处理能力。此外,相较于其他解决方案,采用通用处理器以及简化多OS和多域软件架构的TI汽车处理器具有更高的电源效率,其所提供的可扩展性能够在多个模式、系统和应用中实现投入产出最佳化,从而轻松在同类产品中脱颖而出。
ADAS:更安全的驾驶体验
TI的TDAx驾驶员辅助SoC系列能够提供可扩展且开放的解决方案,这些解决方案都基于针对ADAS应用共同的硬件和软件架构而开发,包括基于摄像头的前视(单声道/立体声)、后视、全景环视与夜视系统,以及多范围雷达和传感器融合系统。由于多核异构架构集成了例如图像信号处理器(ISP)、嵌入式视觉引擎(EVE)和数字信号处理器(DSP)等特定用途的硬件加速器(HWA),TI的TDAx SoC变得与众不同,能够在低功耗的情况下执行高度复杂的成像和信号处理。
数字化驾驶舱:更互联的驾驶体验
“Jacinto”系列处理器可支持多种汽车数字化驾驶舱应用,包括信息娱乐、针对信息娱乐的车载音响主机协同处理、信息化ADAS、集成式数字化驾驶舱、数字化仪表板和抬头显示等。为了保障汽车的安全性和鲁棒性,“Jacinto”多核异构的架构中拥有硬件防火墙,可将高级操作系统(HLOS)与安全操作系统隔离,同时也能执行满足ASIL-B安全认证的稳健多域软件架构。这些处理器为下一代汽车带来了前所未有的丰富特性、车内信息娱乐、仪表板以及车载智能通讯特性。
更多详情,敬请查阅http://www.ti.com.cn。
(TI 公司供稿)
Design and implementation of information management system based on Android
Tan Qinhong, Huang Maodie, Zhang Zuoyun
(School of Communication and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065, China)
According to available information treatment, this paper designs information management system based on Android. Information management system uploads the collected intelligence information by the network timely, the administrator handles and issues a directive in time, APP user processes the directive and the results are, fed back to the administrator so as to form a closed way processed information in accordance with instructions. Phone can directly connect with the admin client to achieve live video in an emergency, and make action more quickly. This paper describes the overall system architecture, the function modules and implementation of the system. The system is tested, then the further improvements of the system are pointed out.
Android; information management system; JAX-WS; video call
TN919.82
A
10.19358/j.issn.1674- 7720.2017.02.030
谭钦红,黄茂碟,张作运.基于Android的情报管理系统设计与实现[J].微型机与应用,2017,36(2):100-103.
2016-08-25)