亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android社區(qū)巡檢系統(tǒng)APP的研究與實現(xiàn)

        2021-07-06 02:10:28張藝帆林果園
        關(guān)鍵詞:設(shè)置用戶信息

        莊 富,張藝帆,林果園,3

        (1.中國礦業(yè)大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 徐州 221116;2.礦山數(shù)字化教育部工程研究中心,江蘇 徐州 221116;3.南京大學(xué)軟件新技術(shù)國家重點(diǎn)實驗室,江蘇 南京 210093)

        0 引 言

        社區(qū)治理是國家治理體系中的基礎(chǔ)性工程,是國家治理體系中的關(guān)鍵一環(huán)[1]。近年來,國家提出“推進(jìn)國家治理體系和治理能力現(xiàn)代化”的戰(zhàn)略任務(wù),這給社區(qū)治理提出了挑戰(zhàn)。社區(qū)治理能力的高低關(guān)乎人民群眾的生活水平與質(zhì)量,關(guān)乎百姓的歸屬感和幸福感。

        突如其來的新冠肺炎疫情席卷全球,全國上下投入到了疫情防控工作中,這無疑對社區(qū)治理能力是一次重大考驗?;ヂ?lián)網(wǎng)的出現(xiàn)已經(jīng)徹徹底底改變了人們的日常生活。利用互聯(lián)網(wǎng),人們讓生活變得更加美好。為此,根據(jù)社區(qū)治理的實際需求開發(fā)出適用于基層社區(qū)的“社區(qū)巡檢系統(tǒng)”,將傳統(tǒng)的社區(qū)安全巡邏結(jié)合互聯(lián)網(wǎng),實現(xiàn)突發(fā)事件信息的在線共享。不僅提高了突發(fā)事件信息的傳播速度,還能最大程度給相關(guān)管理部門在采取措施時提供更多的選擇,這一系統(tǒng)的應(yīng)用具有深遠(yuǎn)的意義。

        1 系統(tǒng)的整體框架設(shè)計

        1.1 整體架構(gòu)

        基于Android的社區(qū)巡檢系統(tǒng)由基于Android的手機(jī)APP、服務(wù)端和后臺管理系統(tǒng)三部分組成(如圖1所示)。Android手機(jī)APP負(fù)責(zé)社區(qū)治安數(shù)據(jù)、基礎(chǔ)設(shè)施數(shù)據(jù)、消防安全數(shù)據(jù)、環(huán)境保護(hù)數(shù)據(jù)、文物保護(hù)數(shù)據(jù)和文化生活數(shù)據(jù)等的收集并實現(xiàn)對社區(qū)各類突發(fā)事件信息的巡查上報。服務(wù)端負(fù)責(zé)對APP傳輸來的數(shù)據(jù)進(jìn)行封裝,并對數(shù)據(jù)進(jìn)行處理。后臺管理系統(tǒng)則對系統(tǒng)進(jìn)行權(quán)限、巡檢人員和巡檢人員上報的巡檢信息等方面的管理。

        圖1 系統(tǒng)整體架構(gòu)

        系統(tǒng)采用C/S和B/S相結(jié)合的方式[2],服務(wù)端與APP之間采用C/S模式,巡檢人員可以使用手機(jī)APP上傳和查看突發(fā)事件信息。服務(wù)端與后臺管理系統(tǒng)之間采用B/S模式,把服務(wù)端封裝的數(shù)據(jù)顯示在管理系統(tǒng)中。

        1.2 APP端框架設(shè)計

        基于Android的社區(qū)巡檢系統(tǒng)APP以Android Studio作為開發(fā)平臺。Android Studio是谷歌推出的Android集成開發(fā)工具,相比Eclipse ADT開發(fā)環(huán)境,具有響應(yīng)速度快、UI更漂亮,強(qiáng)大的UI編輯功能的優(yōu)點(diǎn)[3]。APP與服務(wù)端通信采用http協(xié)議,使用Android網(wǎng)絡(luò)框架OkHttp[4]完成http協(xié)議的相關(guān)操作。OkHttp是目前安卓開發(fā)中最火熱的輕量級框架,由于共享Socket,減少了對服務(wù)器的請求次數(shù),通過連接池,減少請求延遲,提高請求的效率。

        使用OkHttp進(jìn)行網(wǎng)絡(luò)請求的步驟分為以下四點(diǎn)[5]:(1)創(chuàng)建一個OkHttpClient實例;(2)創(chuàng)建一個Request實例。創(chuàng)建Request實例時,用戶可以根據(jù)需要發(fā)起Post請求或者Get請求。Post或者Get請求是HTTP協(xié)議中向后臺服務(wù)器發(fā)送數(shù)據(jù)的一種機(jī)制,是HTTP協(xié)議的一個組成部分;(3)使用OkHttpClient創(chuàng)建一個Call并執(zhí)行,獲取一個Response對象??梢愿鶕?jù)同步或者異步需求,分別采用execute()方法或者enqueue()方法,實現(xiàn)不同的訪問策略;(4)對Response進(jìn)行相關(guān)操作。通過以上四個步驟,一個應(yīng)用可以完成各種情況下的網(wǎng)絡(luò)訪問。

        1.3 服務(wù)端框架設(shè)計

        服務(wù)端采用IntelliJ IDEA集成開發(fā)環(huán)境和SSM[6](Spring+SpringMVC+MyBatis)框架集,數(shù)據(jù)庫采用MySQL數(shù)據(jù)庫系統(tǒng)。IntelliJ IDEA在智能代碼助手、代碼自動提示、重構(gòu)、J2EE支持、各類版本工具(git、svn等)、JUnit、CVS整合、代碼分析、創(chuàng)新的GUI設(shè)計等方面被公認(rèn)為是最好的java開發(fā)工具[7]。

        Spring就像是整個項目中裝配bean的大工廠,在配置文件中可以指定使用特定的參數(shù)去調(diào)用實體類的構(gòu)造方法來實例化對象。SpringMVC在項目中攔截用戶請求,它的核心Servlet即Dispatcher Servlet承擔(dān)中介或是前臺這樣的職責(zé),將用戶請求通過Handler Mapping去匹配Controller,Controller就是具體對應(yīng)請求所執(zhí)行的操作。MyBatis是對JDBC的封裝,通過配置文件關(guān)聯(lián)到各實體類的Mapper文件,Mapper文件中配置了每個類對數(shù)據(jù)庫所需進(jìn)行的SQL語句映射。在每次與數(shù)據(jù)庫交互時,通過SQLSessionFactory拿到一個SQLSession,再執(zhí)行SQL命令[5]。

        2 系統(tǒng)功能

        基于Android的社區(qū)巡檢系統(tǒng)APP由地圖瀏覽、巡檢上報、GPS、查看中心和設(shè)置中心五個模塊組成,每個模塊下有對應(yīng)的若干子模塊(如圖2所示)。

        圖2 社區(qū)巡檢系統(tǒng)APP的基本功能

        地圖瀏覽模塊包括地圖操作和圖層控制兩個子模塊。地圖操作是指對首頁用戶地圖進(jìn)行平移和縮放;圖層控制是指對地圖進(jìn)行顯隱控制。巡檢上報模塊包括表單采集、圖片采集、視頻采集和數(shù)據(jù)上報四個子模塊。表單采集包括對事件類型信息的采集和事件描述信息的采集。事件類型預(yù)先定義了50種,由用戶通過點(diǎn)擊下拉列表進(jìn)行選擇。

        事件描述由用戶在文本框中手動添加,內(nèi)容不超過100個漢字;圖片采集和視頻采集均可以通過攝像頭進(jìn)行新增也可以通過訪問本地相冊進(jìn)行選擇,圖片數(shù)量不超過5張,視頻數(shù)量為1個,視頻大小不超過200 M,時長不超過1分鐘;數(shù)據(jù)上報分為成功和失敗兩種情況,成功情況下事件的類型、描述和內(nèi)容等信息會上傳至服務(wù)器端,而失敗情況下事件的信息會暫存到本地,待網(wǎng)絡(luò)恢復(fù)后重新進(jìn)行上傳。GPS模塊包括實時定位和巡檢軌跡上報兩個子模塊。實時定位是指將巡檢人員當(dāng)前所在位置實時顯示在用戶地圖中并每隔一定時間間隔刷新一次,該時間間隔由用戶自己設(shè)置,默認(rèn)值為30 s;巡檢軌跡上報是指每隔一定時間間隔記錄下巡檢人員實時位置并上傳服務(wù)器端,由后臺管理系統(tǒng)畫出巡檢軌跡[8-11]。查看中心模塊包括查看列表、查看詳情和刪除事件三個子模塊。查看列表包括查看事件的時間、類型和經(jīng)緯度等信息;查看詳情包括查看事件的時間、類型、描述、經(jīng)緯度和圖片視頻等信息;刪除事件執(zhí)行的是將已保存到本地的事件信息進(jìn)行刪除的操作。

        設(shè)置中心包括設(shè)置用戶昵稱、設(shè)置服務(wù)器IP地址、設(shè)置定位時間間隔和設(shè)置照片質(zhì)量四個子模塊。設(shè)置用戶昵稱是巡檢人員在系統(tǒng)中修改自己昵稱的功能,昵稱不作為巡檢人員身份的標(biāo)識,巡檢人員可以多次修改自己的昵稱;正確連入服務(wù)器是成功上傳事件的前提,用戶首先要確保手機(jī)與服務(wù)器處在同一局域網(wǎng)下,然后再設(shè)置服務(wù)器IP地址;設(shè)置定位時間間隔是對巡檢人員進(jìn)行實時定位以及巡檢軌跡上報的關(guān)鍵,時間間隔由巡檢人員自己設(shè)置,單位為“秒/s”,默認(rèn)值為30 s;設(shè)置照片質(zhì)量設(shè)置的是巡檢人員在拍攝事件圖片時圖片的質(zhì)量,質(zhì)量分為高、中、低三個等級,默認(rèn)值為高。

        3 APP實現(xiàn)的關(guān)鍵技術(shù)

        3.1 心跳周期檢測機(jī)制

        為了保證服務(wù)端與APP端的正常連接,使得服務(wù)端能夠及時知道APP端何時掉線,該系統(tǒng)設(shè)計使用了Socket心跳周期檢測機(jī)制(如圖3所示)。

        圖3 Socket心跳周期檢測機(jī)制

        首先在服務(wù)端建立定時器并設(shè)置定時器的時間為60秒,定時發(fā)送心跳包給到APP端:timer=new Timer();Beat beat=new Beat(clients);timer. Schedule (beat, 1 000*60,beat.Interval);APP端收到心跳包后,立即發(fā)送心跳包給服務(wù)端,服務(wù)端收到APP端發(fā)來的心跳包后確認(rèn)APP端的連接可用,不執(zhí)行釋放socket相關(guān)的操作。當(dāng)服務(wù)端接收到APP端發(fā)送來的數(shù)據(jù)時,心跳丟失計數(shù)清零:beatMissNum=0;如果服務(wù)端沒在規(guī)定的時間間隔即60秒內(nèi)收到APP端響應(yīng)的心跳包,服務(wù)端就認(rèn)為APP端的連接不可用,執(zhí)行釋放socket相關(guān)的操作:Server Thread st=clients. Get(i); St.Close()。Socket心跳周期檢測機(jī)制使得服務(wù)端能夠準(zhǔn)確地掌握APP端是否在線,保證了服務(wù)端和APP端的可靠連接。

        3.2 視頻數(shù)據(jù)的處理

        為了更好地描述事件的內(nèi)容信息,該系統(tǒng)支持巡檢人員上傳視頻。視頻可以通過使用攝像頭重新拍攝也可以訪問本地相冊進(jìn)行選擇。視頻時長為1分鐘,大小不超過200 M。

        首先在APP端創(chuàng)建視頻上傳類VideoUpload-Activity,在該類中預(yù)先定義視頻路徑private String path="",然后通過方法:.isCamera(true)判斷是否點(diǎn)擊了拍照按鈕,如果點(diǎn)擊了直接開始重新拍攝,如果沒有點(diǎn)擊則通過PictureMimeType.ofVideo()方法訪問本地相冊中的視頻并過濾掉圖片和音頻文件。選擇本地視頻的時候要通過if (file.Length()>200*1 024*1 024) {"文件大于200 M";break;語句來進(jìn)行視頻文件大小的校驗。視頻選擇完成后,通過VideoView.start()方法可以播放視頻。

        然后在服務(wù)端創(chuàng)建接口類uploadVideo,在接口類中通過file.isEmpty()判斷文件是否為空,分別使用String fileName=file.getOriginalFilename(); String suffixName=fileName. Substring (fileName.lastIndexOf("."));String filePath="E:\study"來獲取文件名、文件后綴名和設(shè)置文件存儲路徑。視頻會在服務(wù)端以命名規(guī)則:SimpleDateFormat date Format=new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss”)重新命名。服務(wù)端會檢測是否存在該視頻目錄:if (! dest. getParentFile().exists())。如果目錄已存在,則通過dest. GetParentFile (). mkdirs ()新建文件夾。最后使用file.transferTo(dest)將視頻文件保存到服務(wù)端。

        3.3 圖片和視頻數(shù)據(jù)的混合傳輸

        事件的內(nèi)容包括圖片和視頻兩類信息,圖片和視頻均可以通過攝像頭重新拍攝或者訪問本地相冊進(jìn)行選擇。圖片數(shù)量至多為5張,視頻數(shù)量至多為1個。巡檢人員根據(jù)實際需要進(jìn)行上傳。在APP端新建事件添加類AddEvent,在該類中定義方法addContent用來添加事件的內(nèi)容信息。使用.open Gallery(PictureMimeType.ofAll())訪問本地相冊中的圖片和視頻信息。當(dāng)選擇的是圖片信息時會使用語句:if (pathList.size() == 6) {Toast.makeText(AddEvent. This, "5張", Toast.LENGTH_SHORT).show();return;}來校驗圖片的數(shù)量。通過方法:. isCamera(true)判斷是否點(diǎn)擊了拍照按鈕。圖片和視頻添加完畢后,視頻顯示的是縮略圖樣式,內(nèi)容保存的是視頻路徑,然后循環(huán)上傳:if (pathList.size()>1) {for (int i=0; i

        3.4 傳輸過程中的斷點(diǎn)續(xù)傳

        斷點(diǎn)續(xù)傳技術(shù)[12-14]指的是在下載或上傳時,將下載或上傳任務(wù)(一個文件或一個壓縮包)人為地劃分為幾個部分,每一個部分采用一個線程進(jìn)行上傳或下載,如果遇到網(wǎng)絡(luò)故障,可以從已經(jīng)上傳或下載的部分開始繼續(xù)上傳下載未完成的部分,而不必從頭開始上傳下載。從而達(dá)到節(jié)省時間,提高速度的效果。

        本系統(tǒng)使用OkHttp網(wǎng)絡(luò)框架實現(xiàn)斷點(diǎn)續(xù)傳技術(shù)。在APP端創(chuàng)建進(jìn)度下載Progress Downloader類,通過構(gòu)造方法client=getProgressClient()實現(xiàn)在下載、暫停后的繼續(xù)下載中復(fù)用同一個client對象。通過RandomAccessFile randomAccessFile=null方法來隨機(jī)訪問文件,指定斷點(diǎn)續(xù)傳的起始位置。創(chuàng)建進(jìn)度響應(yīng)ProgressResponseBody類來設(shè)置對外訪問的進(jìn)度監(jiān)聽。創(chuàng)建斷點(diǎn)續(xù)傳BreakpointContinuinglyActivity類,在該類中使用breakPoints=totalBytes來存儲totalBytes即斷點(diǎn)位置,并用方法progressBar.setMax((int)(ContentLength/1024))記錄文件的總長度。ContentLength表示斷點(diǎn)續(xù)傳后剩余部分的長度。通過進(jìn)度下載類Progress Downloader的復(fù)用client對象、進(jìn)度響應(yīng)類ProgressResponseBody的進(jìn)度監(jiān)聽、BreakpointContinuinglyActivity類的記錄斷點(diǎn)位置和progressBar.setMax方法記錄文件總長度,可以很好地實現(xiàn)傳輸過程中的斷點(diǎn)續(xù)傳功能。

        4 APP的實用效果

        4.1 事件信息的上傳

        APP首頁會實時顯示巡檢員用戶當(dāng)前所在位置(如圖4所示),并根據(jù)用戶的設(shè)定,每隔一定時間間隔刷新一次(默認(rèn)時間間隔為30秒)。巡檢員用戶點(diǎn)擊首頁中的“添加事件”按鈕來進(jìn)行事件的上傳。添加事件時需要選擇對應(yīng)的“事件類型”、添加相應(yīng)的“事件描述”和以拍照或錄像的方式添加“事件內(nèi)容”(如圖5所示)。

        圖4 APP顯示巡檢員用戶當(dāng)前位置

        圖5 巡檢員用戶在APP中添加事件

        事件添加完畢后,巡檢員用戶點(diǎn)擊“發(fā)送事件”按鈕。在APP端和服務(wù)器端正常連接的條件下,事件信息將會上傳至服務(wù)器端并交由后臺管理系統(tǒng)處理。后臺管理系統(tǒng)在收到APP端巡檢員用戶上傳的事件信息后,會在地圖上顯示該用戶所在位置以及事件的信息。

        事件信息包括用戶姓名、手機(jī)號、具體時間、GPS坐標(biāo)位置以及事件的圖片或視頻。

        4.2 事件信息的管理

        后臺管理系統(tǒng)管理員根據(jù)事件處理權(quán)限將APP端巡檢員用戶上傳的事件交由相關(guān)部門處理。相關(guān)部門在收到待交辦事件信息后會在規(guī)定時間內(nèi)做出反饋。APP端巡檢員用戶可以在APP端查看已經(jīng)上傳服務(wù)器并保存到本地的事件信息,并通過點(diǎn)擊事件來查看事件的詳情信息。詳情信息中包括了事件的記錄人、記錄人手機(jī)號、發(fā)生時間、發(fā)生地點(diǎn)、事件類型、事件內(nèi)容、事件的圖片或視頻以及事件的交辦反饋進(jìn)度。

        4.3 巡檢信息的管理

        后臺管理系統(tǒng)管理員可以實時查看當(dāng)前正在巡檢的人員數(shù)量和位置。對于每個巡檢員用戶,后臺管理員還可以查看其巡檢軌跡并回演該巡檢用戶在一段時間內(nèi)的巡檢軌跡。通過APP端事件信息的上傳、服務(wù)器端事件信息的接收和后臺管理系統(tǒng)對事件信息的處理并將處理結(jié)果反饋給APP端巡檢員用戶,社區(qū)的突發(fā)事件將形成閉環(huán)管理,從而提高社區(qū)管理工作的質(zhì)量和效率。

        4.4 數(shù)據(jù)的備份和恢復(fù)

        后臺管理系統(tǒng)管理員可以對任意時間段的巡檢人員巡檢路線以及發(fā)生的事件進(jìn)行備份,同時可以導(dǎo)入備份文件,進(jìn)行還原。

        數(shù)據(jù)庫備份時間段的起止時間由后臺管理系統(tǒng)管理員根據(jù)需要選填,當(dāng)數(shù)據(jù)庫完成備份后,對應(yīng)時間段的數(shù)據(jù)也將會被刪除。

        5 結(jié)束語

        新冠肺炎疫情的防控經(jīng)驗告訴我們,信息是基層治理的基礎(chǔ),社區(qū)信息治理體系重構(gòu)要以社區(qū)為重,樹立數(shù)據(jù)服務(wù)生活、技術(shù)服務(wù)群眾、安全服務(wù)發(fā)展的信息治理理念,取之于社區(qū)、用之于社區(qū),通過社區(qū)內(nèi)各個治理主體的協(xié)同參與和全環(huán)節(jié)的流程再造,構(gòu)建基層社會治理體系中的信息治理共同體[15]?;贏ndroid的社區(qū)巡檢系統(tǒng)的設(shè)計與實現(xiàn),進(jìn)一步促進(jìn)了社區(qū)信息治理體系的建設(shè)與發(fā)展。

        通過巡檢系統(tǒng)對社區(qū)的各項數(shù)據(jù)進(jìn)行收集,實現(xiàn)社區(qū)的全面監(jiān)測,大大降低了手工記錄的工作量,提高了工作效率。該系統(tǒng)目前已成功應(yīng)用于江蘇省徐州市銅山區(qū)漢王鎮(zhèn)的社區(qū)管理工作,取得了不錯的效果,并且應(yīng)用會越來越廣泛。

        猜你喜歡
        設(shè)置用戶信息
        中隊崗位該如何設(shè)置
        少先隊活動(2021年4期)2021-07-23 01:46:22
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        本刊欄目設(shè)置說明
        中俄臨床醫(yī)學(xué)專業(yè)課程設(shè)置的比較與思考
        如何獲取一億海外用戶
        展會信息
        中外會展(2014年4期)2014-11-27 07:46:46
        地鐵出入段線轉(zhuǎn)換軌設(shè)置
        免费观看又污又黄的网站| 一本色道久久88—综合亚洲精品| 亚洲色精品三区二区一区| 品色永久免费| 亚洲一级电影在线观看| 一区二区三区手机看片日本韩国| 人妻av有码中文字幕| 亚洲av成人无码精品电影在线| 国产亚洲欧美日韩综合一区在线观看 | 亚洲av永久久无久之码精| 亚洲中文字幕乱码第一页| 精品视频无码一区二区三区| 两个黑人大战嫩白金发美女| av在线免费观看你懂的| 国产成人国产三级国产精品| 久久精品夜色国产亚洲av| 波多野结衣有码| 亚洲精品二区三区在线观看| 国产一区二区av免费在线观看| 天天鲁在视频在线观看| 永久无码在线观看| 日韩手机在线免费视频| 国产在线一区二区视频免费观看| 日韩中文字幕素人水野一区| 美女av一区二区三区| 国产99re在线观看只有精品| 亚洲国产精品成人一区| 欧美v国产v亚洲v日韩九九| 欧美激情a∨在线视频播放| 狠狠色欧美亚洲综合色黑a| 日本人妻精品有码字幕| 国产在线观看无码免费视频| 亚洲日韩图片专区小说专区| 中文字幕乱码在线婷婷| 国产区精品一区二区不卡中文| 天天操夜夜操| 白色月光在线观看免费高清| 白白白在线视频免费播放| 亚洲综合精品伊人久久| 久久亚洲日本免费高清一区| 亚洲成人一区二区av|