999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

移動系統中離線數據技術研究

2018-11-22 11:17:56唐廣花李強
科技創新與應用 2018年31期

唐廣花 李強

摘 要:文章通過對移動應用中離線數據技術的研究,結合電力、公路等外業管理系統的業務需求,提出了移動應用系統中采用離線數據技術的總體解決方案,從而解決當前移動應用系統在信號不穩定區域的應用問題。

關鍵詞:外業管理;離線數據;移動應用

中圖分類號:TP393.02 文獻標志碼:A 文章編號:2095-2945(2018)31-0045-02

Abstract: Based on the research of off-line data technology in mobile application and the business requirement of electric power and highway field management system, this paper puts forward the overall solution of off-line data technology in mobile application system, thus solving the application problem of the current mobile application system in the region with unstable signal.

Keywords: field management; offline data; mobile applications

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端的在線操作之間達到統一,而不出現混亂,就必須在數據的訪問、修改、交換上定義一定的規則,從數據交換的角度,移動端的所有數據可以分為基礎數據、業務數據兩大類,其訪問、修改及交換的規則如下:

基礎數據:只能在PC端進行修改,移動端只能訪問不可修改,在進行數據交換時,只需從服務器下載至移動端,無需從移動端上傳服務器。

業務數據:對于本地新增的部分業務數據,在數據與服務器進行交換前可以任意修改,當數據上傳服務器之后,在移動端只能查詢,不能再進行編輯,只能在pc端進行修改。非本設備新增的業務數據一律不能編輯、只能查詢。在進行數據交換時,需要上傳本地新增的部分數據,還需要從服務器下載必要的業務數據到移動端,以備查閱。

3.2 數據結構設計

為了實現移動端與服務器數據的交換,保證交換的規則和交換效率,數據庫結構的設計需要在實現原有業務需求的基礎上增加以下的設計:

(1)增加一個數據交換定義表,用于記錄移動端數據與服務器的交換規則,后續的數據管理及交換都按此表中的定義進行操作,數據定義表主要包含表名稱、說明、交換規則等字段,表結構及數據示例如表1:

(2)在所有的業務數據庫表上增加同步狀態標志字

段,用來標記哪些記錄為新增的(需要上傳的),哪些是同步完成(不能再在移動端進行修改)的記錄,字段類型為整數,移動端新增的記錄該字段默認為0,同步完成后的相應記錄的狀態標記字段設為1,一般業務數據表結構及數據如表2:

3.3 離線數據訪問實現

IndexedDB以對象的方式存取數據,它創建了一套API,通過API實現數據的基本操作,使用起來簡單且直觀。通過indexedDB.open(數據庫名稱,版本號)打開移動端數據庫,建立與數據庫的連接。在indexedDB中沒有表的概念,而是objectStore,一個數據庫中可以包含多個objectStore,objectStore是一個靈活的數據結構,可以存放多種類型數據。一個objectStore相當于一張表,里面存儲的每條數據和一個鍵相關聯。

3.4 數據同步

當移動終端處于離線操作時,采集的數據只能臨時保存在本機,無法存儲到更加安全的服務器上,也不能進行后續的業務處理,同時本地的基礎數據等也會因為服務器上的數據更新而變得過時,所以當移動設備進入網絡狀況較好的區域時,需要盡快進行數據同步,將采集的數據上傳至服務器,同時從服務器下載最新的其他數據。讓本機和服務器的數據都保持最新狀態。數據同步主要分為數據上傳和數據下載兩個部分,通過調用部署在服務器上的webservice的相關方法來實現。

3.4.1 數據上傳

將本地新增數據上傳至服務器,保存到服務器數據庫中,上傳數據的整個流程:(1)獲取數據:根據數據定義表中定義的數據上傳表清單(這些表中有可能有新增數據),逐個表進行獲取數據,只讀取各表中數據同步狀態為0的數據;(2)數據上傳:將獲取到的數據轉換成JSON格式或者xml格式的文件包,通過調用數據同步服務的提交數據方法,將數據提交給服務,通過服務(Webservice)將數據傳輸給服務器;(3)數據接收:服務器接收到上傳的數據包后,進行解析,將上傳的數據逐個插入到對應的表中,在數據插入前先開啟事務,如果發生異常,全部回滾,返回失敗標記給移動端;當全部數據正常插入后,結束事務,返回成功標記給移動端;(4)數據狀態更新:當數據同步服務反饋數據同步成功后,移動端將本次上傳數據對應的狀態全部修改為1。

3.4.2 數據下載

下載基礎數據及必要的業務數據到移動端,替換現有數據,數據下載流程:(1)請求下載:通過調用Webserice的數據下載接口,發起數據下載請求;(2)數據準備:Webservice獲取服務器上最新的數據(只獲取同步定義表中列舉的表中的全部數據),轉換成JSON格式或者XML格式的數據包;(3)數據傳輸:通過http協議將數據包從服務器下載至移動端;(4)數據替換:解析收到的數據包后,開啟事務,將移動端對應表中原有的數據全部刪除,將下載的新數據添加到對應的表中,如發生異常,回滾事務,將移動端數據還原為下載之前的狀態,正常完成數據替換后,更新移動端數據同步時間。

4 結束語

本文基于外業APP系統,對數據離線技術及實現方案進行了探索,以indexdb作為移動終端的數據庫,提出了離線應用系統數據處理的基本框架,從數據交換規則定義、數據結構設計、移動數據庫訪問、數據同步等方面對實現應用系統的離線數據處理方案進行了分析,為移動應用系統使用離線數據庫提供了實現思路。

參考文獻:

[1]穆鑫鑫,蔣同海,程力,等.基于JSON的離線數據同步策略及應用[J].計算機系統應用,2017,12.

[2]李青巖.Android下的移動空間數據存取方法研究[D].江西理工大學,2015.

[3]霍冰鵬.基于HTML5的離線存儲技術[J].十堰職業技術學院學報,2013,4.

主站蜘蛛池模板: 欧洲欧美人成免费全部视频| 99999久久久久久亚洲| 国产一区二区人大臿蕉香蕉| 亚洲欧美精品一中文字幕| 日韩福利在线观看| 亚洲V日韩V无码一区二区| 欧类av怡春院| 国产Av无码精品色午夜| 日韩A∨精品日韩精品无码| 久久天天躁狠狠躁夜夜躁| 中文字幕永久在线观看| 天天色天天操综合网| 再看日本中文字幕在线观看| 日本91视频| 真实国产乱子伦视频| 一级做a爰片久久免费| 国产区福利小视频在线观看尤物| 欧美在线观看不卡| 精品国产Av电影无码久久久| 欧美a级在线| 欧美一区二区啪啪| 91视频日本| 亚洲美女高潮久久久久久久| 国产剧情国内精品原创| 国产自无码视频在线观看| 欧美中文字幕在线播放| av一区二区三区在线观看| 国产一区二区影院| 国产精品19p| 色男人的天堂久久综合| 91久久偷偷做嫩草影院精品| 亚洲成人在线免费观看| 久久99国产综合精品1| 国产欧美日韩资源在线观看| 日韩精品免费一线在线观看 | 国产91色在线| 精品人妻无码中字系列| 99久久精品久久久久久婷婷| 69精品在线观看| 人妻精品久久无码区| 欧美国产另类| 亚洲国产综合精品一区| 老司机久久99久久精品播放| 精品一区二区三区中文字幕| 亚洲国产在一区二区三区| 99中文字幕亚洲一区二区| 91精品国产自产在线老师啪l| 国产人人干| 日韩精品成人网页视频在线| 99re在线观看视频| 亚洲精品无码抽插日韩| 91青草视频| 在线亚洲精品福利网址导航| 自慰网址在线观看| 日韩视频精品在线| 日韩免费中文字幕| 成AV人片一区二区三区久久| 欧美区一区| 成人亚洲视频| 国产精品亚洲一区二区三区z | 久久久黄色片| 欧美一级在线| 波多野结衣AV无码久久一区| 91精品最新国内在线播放| 精品国产91爱| 欧美激情伊人| 亚洲va在线∨a天堂va欧美va| 四虎成人在线视频| 东京热av无码电影一区二区| 欧美综合一区二区三区| 色妞www精品视频一级下载| 青青草国产一区二区三区| 强奷白丝美女在线观看| 麻豆精品久久久久久久99蜜桃| 国产成人精品视频一区视频二区| 日本一区二区三区精品国产| 国产资源免费观看| 中文字幕欧美日韩| 狠狠ⅴ日韩v欧美v天堂| 欧美激情网址| 久久精品女人天堂aaa| 久久国产成人精品国产成人亚洲|