呂緒洋 周燕琴



摘要:為進一步加強信用體系建設,完善第三方社會信用平臺監管機制,增強民眾監管力度和參與度,設計了一款信用監管App,方便用戶進行失信取證和信用度查詢等操作,該文內容涉及設計原則、功能性設計、安全性設計、主要功能實現過程等多個方面。
關鍵詞:Android.信用監督;實時傳輸;交互設計
中圖分類號:TP311 文獻標識碼:A
文章編號:1009-3044(2020)15-00010-03
1背景
信用是社會能夠正常運作的基礎。近年來,我國為加強商務誠信、社會誠信等,建立健全社會征信體系,出臺一系列信用相關政策法規,建立了公民身份系統、中國人民銀行征信中心等以國家信譽擔保的各類信用平臺。在維護社會安定團結、市場健康發展的過程中,起著無可替代的作用。
中國特色市場經濟存在市場復雜、市場容量和信息干擾度大且運作不夠透明等特點。國家各類信用平臺無法做到對各類市場和各層級的全覆蓋。虛假營銷、假冒偽劣商品等層出不窮,人們缺乏可靠的信息來源,無法做出準確的判斷。支付寶“芝麻信用”是中國特色市場經濟的創舉,它從規則制度和技術保障層面解決了人們特別是消費者和商家的相互信任問題。但這種第三方信用平臺遠遠不夠,需建立更多公益性符合我國市場實情的信用監管平臺。現有的一些地方信用機構或第三方信用機構提供的信用評級缺乏客觀中立性。基于以上分析,建立信用共享平臺,民眾可以參與失信證據的采集對第三方信用平臺的建設和完善是很有必要的。
本文主要介紹增進全民監督參與的第三方社會信用平臺移動端信用監督App的設計和開發工作。
2設計原則
融合移動通訊、GPs定位、二維碼、即時通訊、實時傳輸等技術于一體,為工作人員和民眾提供一個高效、規范的監督執法移動辦公平臺,做到隨時、隨地的業務流程處理、通知推送、信息查詢、監督和現場取證。
建設可靠的安全保障體系,確保系統具有穩定性、可靠性、高效性、可擴展性。采用多種通信手段并舉,支持多個公網運營商接入方式。服務器和網絡方面以優化通信流量,提高系統的管理性和安全性為重點。系統設計結合數據加密,雙機熱備等一系列安全、高可用技術措施,保障系統的安全、持久運行。
3系統設計
移動端按角色劃分為個人用戶和企業用戶,研究工作的第一階段主要實現兩部分功能:信用取證和即時通訊。
3.1信用取證
信用取證分為文件上傳、二維碼掃描、個人投訴(企業投訴)等功能模塊。
1)文件上傳。實現圖片、音頻和視頻等取證信息的實時采集和上傳操作的同步進行,解決現場復雜環境下取證信息容易被破壞的難題。
2)二維碼掃描。為行業定制二維碼解決方案,通過掃描可以查看企業或商戶的名稱、信用代碼、信用評定等級等信息。
3)投訴功能。填寫投訴信息提交到后臺業務管理系統,由管理員進行審核判定。
3.2即時通訊
即時通訊有會話、通訊錄、設置三個版塊。
1)會話列表顯示歷史會話記錄,可以查看和打開會話窗口,也可以通過關鍵字對歷史會話進行檢索。會話窗口有發送文字、語音、圖片等功能。
2)通訊錄可以通過關鍵字搜索用戶,顯示已添加的好友列表和好友申請。群聊模塊用戶可以搜索已有群組申請加入,也可自行創建和解散群組。
3)設置模塊用戶可以根據需要對新消息提示,聊天設置的一些基本功能進行設置。
移動端整體功能模塊圖如圖1所示:
3.3業務管理平臺
業務后臺管理平臺分為管理員、企業用戶和個人用戶三類角色:個人用戶可對個人賬戶的基本信息和投訴信息管理,用戶可以進行投訴、修改投訴內容、查看已提交的所有投訴及處理結果等操作;企業用戶登錄后可以進行在線對企業的信息進行錄入和修改、上傳和下載企業文件等操作;管理員可以進行企業管理、監督管理、系統管理等操作。
3.4安全性設計
通過VPN專用通訊通道與業務后臺進行數據交換,同時采用SSL加密,結合內外網隔離、安全審計、權限分級控制以及密碼保護、IMEI綁定等身份認證機制多方位的確保信息安全。業務后臺系統采用SOA應用架構,利于功能擴展和與既有業務系統的集成。通過雙機熱備技術確保系統的高可靠性。
4實現環節
業務后臺系統采用SOA應用架構、ssh框架、SQL Server數據庫等進行研發。移動端選用android原生開發,即時通訊部分在環信即時通訊基礎上完成二次開發。
4.1項目結構
移動端項目結構如圖2所示。
圖2(a)為即時通信類包,在環信即時通訊基礎上進行二次開發,easemob chatuidemo包中為adpter類和控件庫以及工具類。Chat包是具體功能的Activity。圖2(b)mining.app.zxing為二維碼掃描功能的類包。Me.maxwin.view是一個自定義的List-view,支持下拉更新和點擊底部加載更多信息。activity包是登錄界面和監督取證界面相關,model包是自定義的一些實體類,util包里是封裝的httpclient方法以及上傳圖片、錄音、視頻采用的工具類,還有初始登陸以及獲取企業二維碼的工具類。
4.2主要功能交互流程設計和實現
選取文件上傳、投訴、即時通訊三個模塊描述其交互流程和實現過程。
4.2.1投訴
以企業投訴為例,其提交投訴及接收通知過程實現如下:將企業id、企業名、投訴原因和投訴內容四個String變量作為參數,生成CorComplainActivity類的對象。以corcomplain類存儲相關信息使用HttpClient向服務器發送Post Http請求,將投訴信息提交到服務器。
服務器根據請求中的URL:excString,struts從配置文件中找到處理該Action的相關類,執行該類的exeute0方法。文字描述的參數,通過struts框架自動從http請求中獲取。利用這些數據,聲明一個信用圖片類corComplain的對象,使用hibernate框架的相關函數去存儲。
接收通知:跳轉進入列表頁面時,以httpclient方式訪問URL,取得結果之后使用ison進行解析,填充到List里。服務器做了分頁查詢,組裝URL時主要將start參數(從第幾條記錄開始返回)傳回服務器,limit已經固定為一次返回5條。
4.2.2文件上傳
圖片、錄音與視頻上傳的本質都是文件上傳,視頻實施傳輸采用基于socket信道和H.264編碼實現現場實錄實傳嘲。下面以圖片上傳為例,講解客戶端和服務器的實現思路。
Android模擬HTTP muhipart/fform-data請求協議信息實現圖片上傳,需要自己來實現協議頭部,設定相關的參數。上傳工具類UploadUtil對象根據ActiviIv頁面傳遞過來的圖片在sD卡中的存儲路徑、圖片描述和上傳用戶等參數,構建表單內容。將SD卡中的圖片文件通過FilelnputStream輸人流讀入,然后通過綁定了Connection連接的DataOutputStream進行輸出。上傳所使用的URL已經在UploadPicActivity中聲明,為mobileImage-Action。該類還實現了一個上傳進度的監聽器(該監聽器以接口形式寫在UploadUtil類中),用以根據上傳進度改變界面中的進度對話框和相關提示信息。
服務器根據請求中的URL:mobileImageAction,struts從配置文件中找到處理該Action的相關類,執行該類的excutef)方法。圖片文件使用FileInputStream讀人,然后使用FileOutput-Stream輸出到預先定義好的服務器本地硬盤的路徑中。其他的一些文字描述參數,通過struts框架自動從http請求中獲取。利用這些數據,聲明一個信用圖片類creditImage的對象,使用hibernate框架的相關函數去存儲。
4.2.3即時通訊
點擊“即時通信”按鈕,首先檢查sharepreference中是否已經存在登錄過的環信用戶名和密碼,若有則直接進入,若無則以用戶名和密碼重新登錄。用戶分企業和普通用戶,需要注意的是如果重新從Activity值棧中喚醒該activity,要重寫onre-sume()方法為用戶類型變量LoginStatus重新賦值,否則會導致變量為空的錯誤。onresume()方法代碼如下:
環信的主界面MainActivity類,包括了底部的三個按鈕以及一些廣播監聽器。其他界面是通過在該界面中實現Frag-ment來顯示的,包括會話歷史,通訊錄,設置等。初始化和再次從值棧喚醒時要主動調用獲取群組和會話信息,否則使用通知功能是會出現獲取不到群主而導致權限驗證失敗。環信的聊天消息的發送方式是調用環信SDK的封裝方法填寫參數即可,SDK通過廣播的方式去發送信息,MainActiviIv中使用動態注冊廣播接收器的方法,廣播接收器接收到廣播之后,就會刷新uI(可見ChatMlHistoryFragement)。
移動端和PC業務平臺部分功能效果圖如圖3。
5結束語
信用監管App是第三方社會信用平臺的重要組成部分,選用android原生開發,已實現了投訴、取證、即時通訊等多項功能,可以給民眾提供監督取證和信用查詢等方面的便利。但功能及完整度還不足,需進一步完善。