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