网站首页  词典首页

请输入您要查询的论文:

 

标题 省市县一体化移动终端展示平台建设研究
范文

    杨玉红 乔文文 侯灵

    

    

    

    摘要:该研究使用Flask框架实现了省市县一体化移动终端展示平台WebService发布系统,使用Ionic技术栈技术快速完成了IOS客户端、Android客户端省市县一体化移动应用展示平台建设,实现了服务器性能、链路状态、数据状态等信息的展示,达到了数据准确,效果优雅,使用方便的目标,完成了对混合架构开发模式的探索与尝试。混合开发模式作为目前移动开发主流方式,集原生开发和Web开发两者之所长。一方面,该技术让开发者可以充分利用现代移动设备所提供的全部特性和功能。另一方面,使用Hybrid框架语言编写的所有程序都可以在不同移动平台之间共享,使得开发和日常维护变得更集中、更简短、更经济高效。

    关键词:移动终端;混合开发模式;Flask框架;Ionic框架

    中图分类号:TP311? ? ? ?文献标识码:A

    文章编号:1009-3044(2019)24-0095-03

    开放科学(资源服务)标识码(OSID):

    1 项目背景

    随着气象现代化进程的不断深入,气象资料种类越来越多,需要监控的设备类型与系统也日益增多[1-3]。如何“由始至终”地将资料各环节生成、处理、转发、入库状态清晰地呈现出来,将省级、市级、县级主机、链路、数据信息统一处理形成一体化信息数据库,直观、快速、方便为用户提供服务是当前需要研究的问题[4-5]。

    在信息网络快速发展的今天,手机与平板设备是人们日常生活必不可少的工具[6-8],将一体化信息数据以移动客户端(包括Iphone系统和Android系统)的方式进行展现,不但可以实现明确清楚的显示系统流程、快速准确的定位系统故障点,更能实现用户随时随地查看数据、设备当前的状态,对问题的预知,故障的快速响应和解决都有着不可估量的作用[9-10]。本研究旨在使用简单明了的方式,将各种资料、各种状态呈现在用户眼前,使“动动手指,尽在掌握”成为可能。

    2 移动终端开发模式研究

    当前的APP开发模式主要有以下三大类型[11]:

    1)Native App

    即传统的原生APP开发模式,开发者需要使用移动平台默认的语言,对IOS系统来说是Objective-C或者Swift语言,对Android来说是Java语言,程序编写之后需要编译应用并将其安装到设备上。开发者可以使用平台软件开发套件(SDK)来和平台API通信,从而可以访问设备中传感器的数据或者HTTP请求从外部服务器加载数据。比起其他开发模式,原生开发应用可以在应用中直接使用原生API,与平台的交流最紧密,性能最好,运行效率最高。缺点是开发和维护难度较大,每个平台都需要单独进行开发和维护,需要投入大量时间和精力。

    2)Web App

    即移动端网站开发模式,使用自适应兼容性框架,例如BootStrap, React, Vue等,适合移动设备使用,可以兼容手機浏览器与PC浏览器的访问。Web应用会根据设备屏幕的大小展现不同的界面,其优点主要体现在效率和设备兼容性上:容易更新和维护,无须审核流程,网站在互联网中,不需要安装到移动设备中,也不需要更新设备上的程序。所有移动设备都有浏览器,因此也具有跨平台行。缺点是不具备原生访问能力,很难创建交互体验友好的应用,尤其是需要同时兼容桌面版浏览器时。

    3)Hybrid App

    Hybrid应用[12]指的是包含独立浏览器实例的移动应用,这个实例通常被称为WebView,可以在原生应用中运行Web应用。Hybrid应用会使用原生应用封装器来实现WebView和原生设备平台的通信,像原生应用一样访问所有的设备功能。例如PhoneGap,AppCan,appMobi,Titanium等。Hybrid应用具有跨平台性,可以只开发一次,部署到多个平台,最小化开发成本。开发流程简单快捷,不需要为了预览重复构建。缺点是应用只能运行在浏览器WebView中,这意味着应用的性能取决于浏览器。

    3 设计与实现

    本研究选取了具有跨平台能力的混合应用开发模式:基于Cordova的Ionic框架。内容主要分两部分:第一部分为Web服务端,采用的是Windows+Apache+Mod_Wsgi+Flask架构实现,第二部分为APP端软件开发部署,使用Ionic技术实现。

    3.1 总体框架

    3.2 项目数据结构和来源

    本研究数据流程为:从数据采集端,经“县级路由器”-“市级路由器”-“省级路由器”-“接收服务器”到数据应用端。

    3.2.1 数据结构

    1)设备状态数据

    设备运行状态数据包括两类设备的运行状态(地面自动气象站、天气雷达),由广东省气象探测数据中心的采集平台入库。数据收集方式为:在各终端服务器部署JAVA语言开发的脚本,定时采集服务器数据,发回监控服务器进行处理及入库。采集的要素包括CPU使用率、内存使用率、磁盘空间使用率、FTP端口状态等等。

    2)网络状态数据

    网络状态数据由广东省气象探测数据中心维护,通过访问网络监控数据库直接获取。数据收集方式为:在服务器端部署脚本,定时对网络设备状态进行采集,包括ping、trace等操作,收集结果进行入库处理。采集的要素包括链路编码,省级链路状态、市级链路状态、县级链路状态、目标主机编码等。

    3)台站要素数据

    台站要素数据使用“广东省气象局通用接口平台”接口获取,数据访问范围、性能受限于通用接口平台。

    3.2.2 数据来源

    3.3 技术路线

    Web服务端采用Flask框架的MCV架构实现,模型层(Model)使用WebService方式访问接口,获取雷达、自动站资料的数据状态,引入Sqlalchemy用于管理数据库连接与数据持久化,建立主机状态、链路状态的数据与实体映射。控制器层(CONTROLLER)负责进行梳理数据逻辑。根据请求的时间,后台自动判断并推送最近5个时次的主机、链路或者数据资料,并按资料到报情况进行排序,将数据发布为Json格式的WebService。

    APP端使用Ionic技术栈进行开发部署,使用的主要技术工具如下:

    Ionic技术栈模型:

    本研究使用上文提到的技术,从设计开发部署到第一个Demo版本实现仅用了一个月时间,之后在日常运行中不断迭代修改,来增加功能以及修改样式等操作。由于Ionic具有Hybrid混合开发模式的优势,“一次开发,多次应用”,不需要在IOS和Android平台分别开发部署测试,大大节省了跨平台开发的时间。相比起原生系统开发而言,本项目至少需要三个月时间才能完成第一个原始版本的部署,且要同时维护IOS和Android两个平台的程序,耗时耗力。此外,本次使用迭代开发模型做增量修改,更是降低了在一个增量上的开支风险,从另一层面加快了项目的工作进度。

    4 结束语

    本研究快速实现了IOS客户端、Android客户端前端展示系统,并在运行中不断迭代,在IOS平台和Android平台分别完成了服务器性能、链路状态、数据状态展示,达到数据准确,效果优雅,使用方便的目标。客户端界面设置故障信息一览表,将当前时间节点所有不同类别的故障信息整合到同一界面分类显示,减少用户频繁操作,提高业务运行效率。

    本研究完成了对移动客户端混合架构开发模式的探索与尝试。为移动端系统的开发提供了一种跨平台、易部署、迅捷开发、可迭代的开发方法。大大缩短了开发周期,提升了开发效率,可以将业务需求快速转化为客户端产品。同时也提升了运维效率,节省了后期维护成本。让开发人员有更多时间和精力投入业务生产与科研中,为气象现代化添砖加瓦。

    参考文献:

    [1] 生桂勇. 人工智能技术在移动互联网发展中的应用[J]. 电脑知识与技术, 2018, 19(19): 206-207.

    [2] 刘丽. 浅析校企合作背景下的移动互联网应用技术专业实训基地建设[J]. 电脑知识与技术, 2018(23): 160-161.

    [3] 罗雪玲, 郭启云, 李戟, 等. 市级气象台公共气象服务发布与管理平台设计与实现[J].气象科技, 2014, 42(4): 635-640.

    [4] 郑思轶. 广东省气象台气象智能手机客户端的设计与实现[J]. 广东气象, 2017, 39(5): 78-80.

    [5] 于东海, 翟玉泰, 陈巧淑. 应用3G与HFC技术建设农村突发事件预警信息发布系统[J].气象研究与应用, 2016, 37(1): 80-82.

    [6] 杨妮潘, 期辉. 移动互联网时代的高校计算机基础教学创新研究[J]. 电脑知识与技术, 2017, 26(26): 135, 141.

    [7] 徐冬英, 黄晓辉, 何飞. Delphi与桌面地理信息系统的集成二次开发[J]. 气象研究与应用, 2014, 35(3): 71-74.

    [8] 钱峥, 赵科科, 许皓皓. 基于Android的移动气象信息服务系统设计与实现[J]. 气象科技, 2014, 42(1): 99-103.

    [9] 徐月. 基于移动互联网的地图超市手机APP设计研究[J]. 电脑知识与技术, 2018, 20(20): 295-296.

    [10] 杨武, 陳静, 李晓娜, 等. 3G时代手机气象信息服务的可持续发展[J]. 广东气象, 2012, 34(3): 53-56.

    [11] Hybrid. APP混合开发的一些经验和总结[EB/OL]. [2018-07-06].https://www.cnblogs.com/yuanyingke/p/6060150.html.

    [12] Jeremy Wilken. Ionic实战:基于Angular JS的移动混合应用开发[M]. 北京: 电子工业出版社, 2016.

    【通联编辑:谢媛媛】

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/3/16 14:52:11