【摘要】隨著智能手機(jī)的迅速普及和快速發(fā)展,基于Android平臺(tái)的軟件開發(fā)成為當(dāng)前移動(dòng)互聯(lián)網(wǎng)領(lǐng)域的熱點(diǎn)。網(wǎng)絡(luò)電話是我國移動(dòng)互聯(lián)網(wǎng)的重要實(shí)現(xiàn)形式,而且隨著語音技術(shù)的發(fā)展和成熟,未來網(wǎng)絡(luò)電話業(yè)務(wù)將呈現(xiàn)出快速增長(zhǎng)的趨勢(shì)。本文主要對(duì)Android平臺(tái)下的多方通話軟件進(jìn)行研究,并且對(duì)軟件設(shè)計(jì)的流程及其關(guān)鍵技術(shù)進(jìn)行分析。
【關(guān)鍵詞】Android平臺(tái);多方通話;軟件設(shè)計(jì)
1.引言
在Android平臺(tái)誕生的幾年時(shí)間內(nèi),其在移動(dòng)終端設(shè)備上獲得了十分廣泛的應(yīng)用,并且隨著目前智能手機(jī)市場(chǎng)份額的快速增加,Android平臺(tái)的系統(tǒng)已經(jīng)成為當(dāng)前使用最多的操作系統(tǒng)。與此同時(shí),隨著我國寬帶無線接入網(wǎng)絡(luò)的發(fā)展,基于Android平臺(tái)的無線終端設(shè)備可以十分方便的接入到高速無線網(wǎng)絡(luò),這也在很大程度上改善了無線接入網(wǎng)絡(luò)對(duì)于基于Android平臺(tái)應(yīng)用的束縛。目前,在傳統(tǒng)的Window系統(tǒng)上,語音技術(shù)已經(jīng)較為成熟,因此關(guān)于基于Android平臺(tái)的多方通話軟件研究成為當(dāng)前移動(dòng)互聯(lián)網(wǎng)領(lǐng)域的熱點(diǎn)。由于是對(duì)于企業(yè)級(jí)用戶而言,可以通過在企業(yè)內(nèi)部搭建無線局域網(wǎng)絡(luò),實(shí)現(xiàn)迅速、便捷的多方通話。
2.關(guān)鍵技術(shù)分析
在基于Android平臺(tái)的多方通話軟件設(shè)計(jì)過程中,為了更好的實(shí)現(xiàn)軟件的功能,主要采用了以下關(guān)鍵技術(shù):
(1)線程守護(hù)技術(shù)
在基于Android平臺(tái)的多方語音通信過程中,由于存在著多個(gè)交互過程,這樣就會(huì)使得冗余線程大大增加,從而增加了代碼維護(hù)帶來的成本,而且由于過多的線程存在會(huì)增加線程之間交互的復(fù)雜度以及內(nèi)存消耗,這對(duì)于小型無限終端設(shè)備而言將是十分致命的。為了有效的解決多方通話中存在著線程冗余問題,在該設(shè)計(jì)中提出了具有針對(duì)性的線程守護(hù)機(jī)制,即通過守護(hù)機(jī)制完成對(duì)相關(guān)耗時(shí)操作的處理,在該機(jī)制下所有的任務(wù)線程都需要進(jìn)行排隊(duì),并且在保證線程處理效率的前提下適時(shí)開啟系統(tǒng)多線程操作,與此同時(shí),該機(jī)制將Activity中的相關(guān)線程進(jìn)行剝離,從而獲得了低耦合的實(shí)際效果。
(2)進(jìn)程通信技術(shù)
當(dāng)用戶啟動(dòng)軟件時(shí),需要及時(shí)更新來自服務(wù)器的相關(guān)數(shù)據(jù)消息,因此客戶端與服務(wù)器之間存在著一個(gè)交互的過程中,這其中就會(huì)應(yīng)用到網(wǎng)絡(luò)通信技術(shù),而整個(gè)過程是在進(jìn)程中實(shí)現(xiàn)的。為了有效的滿足這一需求,在軟件設(shè)計(jì)過程中采用進(jìn)程通信技術(shù),即在后臺(tái)將相關(guān)的服務(wù)開啟,并且在服務(wù)的過程中開啟線程,同時(shí)完成相關(guān)的進(jìn)程監(jiān)聽功能。具體而言,在軟件后臺(tái)開啟Service服務(wù),并且在該服務(wù)中啟動(dòng)相應(yīng)的進(jìn)程,實(shí)現(xiàn)對(duì)服務(wù)器端信息的監(jiān)聽。通過應(yīng)用該技術(shù),不僅克服了生存周期以來界面的問題,同時(shí)還可以有效的緩解后臺(tái)線程阻塞的問題。
(3)斷點(diǎn)續(xù)傳技術(shù)
由于的實(shí)際的多方通話軟件應(yīng)用過程中,在對(duì)通訊錄以及相關(guān)數(shù)據(jù)的備份過程中往往會(huì)遇到網(wǎng)絡(luò)不暢的問題,會(huì)使得信息的傳輸出現(xiàn)中斷的問題。因此采用斷點(diǎn)續(xù)傳技術(shù)可以有效的解決這一問題,具體而言就是在網(wǎng)絡(luò)連接恢復(fù)后,軟件將重新回到界面或者在上次斷點(diǎn)處重新開始進(jìn)行續(xù)傳。同時(shí),對(duì)于不同的模塊,由于通信協(xié)議以及數(shù)據(jù)格式的不同其具體的斷點(diǎn)續(xù)傳實(shí)現(xiàn)機(jī)制也會(huì)有所不同。而對(duì)于目前的Android平臺(tái)則自帶專門進(jìn)行通信的HTTP接口,因此其實(shí)現(xiàn)的通信協(xié)議是單一的HTTP通信,同時(shí)會(huì)將下載的信息通過文件的格式進(jìn)行保存。
(4)軟件自啟動(dòng)以及電話監(jiān)聽機(jī)制
在多方通話軟件的使用過程中,用戶往往希望及時(shí)獲得服務(wù)器的推送消息服務(wù),即盡管用戶的軟件沒有啟動(dòng),然而用戶希望在后臺(tái)實(shí)現(xiàn)消息的接收。因此在用戶開始時(shí)就需要運(yùn)行Service。在軟件的具體實(shí)現(xiàn)過程中,除了應(yīng)用前述的監(jiān)聽機(jī)制以外,還需要對(duì)用戶的來電狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)聽,從而及時(shí)的判斷用戶是否需要進(jìn)行多方通話,其具體實(shí)現(xiàn)也是通過廣播機(jī)制。
(5)號(hào)碼提取的正則表達(dá)式
在軟件的使用過程中,對(duì)號(hào)碼的提取是一個(gè)十分關(guān)鍵的環(huán)節(jié)。通過正則表達(dá)式可以實(shí)現(xiàn)在雜亂的數(shù)據(jù)中查找特定格式的數(shù)據(jù)。通過運(yùn)用正則表達(dá)式,可以在號(hào)碼提交的過程中對(duì)號(hào)碼的大致區(qū)間進(jìn)行判斷,并且對(duì)提交內(nèi)容的格式進(jìn)行限制。
3.軟件系統(tǒng)設(shè)計(jì)方案
在基于Android平臺(tái)的多方通話軟件設(shè)計(jì)過程中,其整體結(jié)構(gòu)框圖如圖1所示。
(1)軟件功能分析
在所設(shè)計(jì)的多方通話軟件中,其實(shí)現(xiàn)的功能主要包括:發(fā)起多方會(huì)議功能,查詢會(huì)議記錄功能、系統(tǒng)設(shè)置功能、預(yù)約查詢、信息分享、關(guān)于、注冊(cè)信息等。
(2)軟件整體設(shè)計(jì)方案
為了實(shí)現(xiàn)上述諸多功能,在軟件中需要包括交互、服務(wù)器信息交互、數(shù)據(jù)庫以及調(diào)度等模塊,具體如圖2所示。
具體而言,在軟件啟動(dòng)后,將會(huì)在后臺(tái)運(yùn)行相關(guān)的監(jiān)控以及線程服務(wù),并且在后臺(tái)進(jìn)程中實(shí)現(xiàn)與服務(wù)器的信息交互。在整個(gè)多方用戶通話系統(tǒng)中,調(diào)度器祈禱至關(guān)重要的作用,其具體功能實(shí)現(xiàn)則更加類似于狀態(tài)機(jī),通過將消息進(jìn)行排隊(duì),然后逐條將排隊(duì)消息取出,而且一旦隊(duì)列中為空時(shí),調(diào)度器會(huì)堵塞,并且在新的任務(wù)出現(xiàn)時(shí)被喚醒。
4.結(jié)束語
通過對(duì)基于Android平臺(tái)的多方通話軟件中關(guān)鍵技術(shù)及其實(shí)現(xiàn)功能的分析,成功的實(shí)現(xiàn)了在Android終端設(shè)備上的多方語音通話功能,并且具有較好的通話效果。同時(shí),隨著目前移動(dòng)終端設(shè)備對(duì)于硬件配置的不斷提升,多方通話的質(zhì)量也會(huì)得到相應(yīng)的改善。因此采用基于Android平臺(tái)的多方通話軟件可以十分便捷的實(shí)現(xiàn)各方的及時(shí)溝通,有利于辦公效率的提升。
參考文獻(xiàn)
[1]邵長(zhǎng)彬,張重陽,鄭世寶.基于Android的可視IP電話多媒體終端設(shè)計(jì)與實(shí)現(xiàn)[J].電視技術(shù),2011,35.
[2]鄭理.基于WLAN技術(shù)的無線局域網(wǎng)的應(yīng)用[J].信息通信,2013,5.
[3]呂東,劉小河,王鴻飛.基于Android的實(shí)時(shí)視頻通信研究與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2014,1.
作者簡(jiǎn)介:陳順祥(1980—),男,高級(jí)工程師。