移动系统中离线数据技术研究
摘 要:文章通过对移动应用中离线数据技术的研究,结合电力、公路等外业管理系统的业务需求,提出了移动应用系统中采用离线数据技术的总体解决方案,从而解决当前移动应用系统在信号不稳定区域的应用问题。
关键词:外业管理;离线数据;移动应用
1 概述
随着智能手机及其他智能移动终端的普及,伴随而来的是APP呈现爆发式增长。然而,当前大部分的APP都是在线使用,而部分行业,外业工作人员很多时候需要在崇山峻岭的野外,甚至是隧道中进行户外作业,这些地方通讯信号还没完全覆盖或者网络很不稳定,在线的APP将无法进行正常的操作,因此在这些APP中必须采用离线数据处理技术,让工作人员能够在无网络的情况下保持顺畅的数据录入及查詢工作。
2 移动应用系统离线数据技术分析
2.1 离线数据技术分析
当前,用于移动APP的离线数据存储技术的发展已经比较成熟,常见的离线数据存储技术主要有SQLite数据库技术、基于LocalStorage客户端本地文件存储技术以及IndexedDB移动数据库技术等等。
各种离线数据技术各有千秋,SQLite功能强大但操作比较麻烦,基于LocalStorage本地文件方式操作简单但是只能存储数量级较小的数据,相对而言IndexedDB既可以存储大量的数据又操作便捷,IndexedDB能够在客户端存储大量的结构化数据,数据以对象的方式进行保存和管理,IndexedDB创建了一套使用索引高效检索的API,通过API可以高效地对数据进行保存和读取,同时支持查询和搜索,所以使用IndexedDB做为移动端数据库比较合适。
2.2 离线应用系统总体方案
2.2.1 业务模式
外业人员使用移动APP基于离线状态独立开展外业处理(数据采集等),移动端APP通过本地数据库临时存储离线状态下新录入的业务数据,回到网络状况好的环境下,启动数据同步,将移动端数据提交到服务器数据中,内业人员及管理人员通过PC端对数据进行后续的处理及应用。
2.2.2 实现思路
移动端APP基于IndexedDB数据库存储数据,建立移动端与服务器端的数据操作规则(哪些数据在移动端进行新增和修改,哪些数据只能在Web端修改等),据此规则建立基于http的数据同步服务(Webservice)并部署至外网,移动端通过Webservice与服务器进行数据交换。
2.2.3 系统结构(见图1)
3 离线数据的实现方案
3.1 数据规则定义
为了让数据在移动端的离线操作和PC Web端的在线操作之间达到统一,而不出现混乱,就必须在数据的访问、修改、交换上定义一定的规则,从数据交换的角度,移动端的所有数据可以分为基础数据、业务数据两大类,其访问、修改及交换的规则如下: