楊永平++詹清林++張東林
摘要:Android是現(xiàn)如今全球手機用戶使用率最高的操作系統(tǒng),Android具有豐富的傳感器功能和非常強大的應(yīng)用層API,增添了手機的個性化服務(wù)。該文將Android手機與windows計算機基于WIFI無線通信和SOCKET連接建立通信,使用Android手機對計算機進行遠程無線控制,可以模擬鼠標操作,鍵盤輸入,并控制ppt的播放,手機輔助課堂。
關(guān)鍵詞:手機控制;WIFI;手機輔助課堂
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2015)11-0160-02
A Remote Control System Between Android Mobile Phone and Computer
YANG Yong-ping, ZHAN Qing-lin, ZHANG Dong-lin
(Beijing Normal University Zhuhai Campus, Zhuhai 519000, China)
Abstract: Now,Android is the world's highest mobile phone operating system,It has rich sensor and a very powerful application layer API,these adds the personalized services of mobile phone. In this paper, the Android mobile phone connect to Windows computer based on WIFI wireless communication and SOCKET connection, use the Android phone to remote wireless control of computer, can simulate the mouse operation, the keyboard input, and control the PPT, can be used as a classroom assistant.
Key words: Mobile phone control; WIFI; classroom assistant
1 緒論
Android是現(xiàn)如今全世界使用最多的智能手機操作系統(tǒng),由美國Google 公司開發(fā),其系統(tǒng)主要應(yīng)用在平板電腦、智能手機等移動終端領(lǐng)域。由于手機不斷強化的功能和便捷性,手機逐漸成為了個人信息控制中心。實際工作中,計算機是我們的計算中心和數(shù)據(jù)存儲中心,計算機的運算能力和存儲能力還無法被取代,我們的很多工作還需要計算機完成,讓手機與計算機配合,通過手機發(fā)送指令給計算機,執(zhí)行結(jié)果傳回手機,是當前很實用的功能。
國外對于智能手機遠程控制的研發(fā)有許多成果及應(yīng)用,如智能手機與智能家電的遠程控制,智能手機與計算機屏幕的無縫連接控制等(如蘋果手機與蘋果電腦的屏幕無縫交互),智能手機充當遠程遙控器,控制汽車啟動熄火,控制智能門開關(guān)等。隨著物聯(lián)網(wǎng)技術(shù)的提升,如今許多設(shè)備都已經(jīng)獨立連上了網(wǎng)絡(luò),像智能家居,供電設(shè)備等都連接在自己的網(wǎng)絡(luò)中,當發(fā)生系統(tǒng)錯誤的時候,就會發(fā)送命令給遠程服務(wù)器,請求系統(tǒng)修復錯誤或者恢復初始狀態(tài),大大減少了人員維護的工作量,實用性非常高。
手機的通信連接方式主要有WIFI連接,蜂窩網(wǎng)絡(luò)連接,NFC,藍牙等,WIFI連接由于其低成本高速率、運行環(huán)境兼容性高,成為在一個有限范圍內(nèi)優(yōu)先選擇的通信方式。
在課堂教學中,計算機及多媒體系統(tǒng)已經(jīng)普遍被采用,為了控制計算機,教師不得不站到講桌前控制多媒體操作計算機的鍵盤和鼠標。大學課堂一般人數(shù)較多教室較大,如果教師一直在講臺上與學生容易產(chǎn)生距離感,也不利于給學生增加一定的緊張感,不利于學生的主動性的調(diào)動。電子教鞭可以幫助翻閱電子幻燈片,但是它的功能較單一,且增加了設(shè)備,對方便度造成影響。使用隨身攜帶的手機對多媒體教學計算機進行操作,不但功能更強,而且沒有增加任何設(shè)備。本文實現(xiàn)一個通過計算機遠程控制計算機的軟件系統(tǒng),使手機成為課堂的好助手。
2 andriod手機與計算機的無線連接技術(shù)
Android是基于Linux內(nèi)核的軟件平臺和操作系統(tǒng),是Google在2007年11月5日公布的手機系統(tǒng)平臺,早期由Google開發(fā),后由開放手機聯(lián)盟(Open Handset Alliance)開發(fā),對于掌上設(shè)備的硬件提供了優(yōu)秀的支持,同時有大量立即可用的類庫和應(yīng)用軟件,可開發(fā)出媲美桌面應(yīng)用復雜度的手機軟件。Google提供了基于Eclipse的完整開發(fā)環(huán)境,模擬器,文檔,幫助和示例,容易實施。
WIFI,就是無線保真技術(shù),是一種高頻無線、可以將個人電腦,手持設(shè)備以無線方式相互鏈接的技術(shù),具有以下特點(1)功耗低;2)更健康更安全,WIFI的實際發(fā)射功率為60-70毫瓦,對人體輻射很低,不用接觸人體,安全系數(shù)高;(3)度更快,可靠性高,WIFI的最高寬帶能夠達到11Mbps,其還可以根據(jù)信號的強弱自動調(diào)整帶寬大小,提供了一個穩(wěn)定、可靠的網(wǎng)絡(luò)環(huán)境;(4)建網(wǎng)成本低,構(gòu)建WIFI網(wǎng)絡(luò)只需無線接入點和無線網(wǎng)卡即可,簡化了網(wǎng)絡(luò)的安裝工作。
Socket又稱為“套接字”,包含IP地址和端口,C/S結(jié)構(gòu)網(wǎng)絡(luò)應(yīng)用程序利用Socket網(wǎng)絡(luò)通信接口來實現(xiàn)客戶端(手機端)與服務(wù)端(計算機)的通信,在利用Socket建立網(wǎng)絡(luò)連接成功時,應(yīng)用程序兩端都會產(chǎn)生一個收發(fā)實例,程序員操作這個實例,完成所需的會話。本系統(tǒng)可用于教師教學輔助,手機客戶端與計算機服務(wù)端采用tcp方式建立連接,教師在一個教室里移動可以保證連接的穩(wěn)定性。
3 android手機與計算機交互系統(tǒng)設(shè)計及實現(xiàn)
3.1 系統(tǒng)功能需求分析
根據(jù)對日常計算機最常用功能的分析,本系統(tǒng)設(shè)計功能包括以下三個部分:無線鼠標,無線鍵盤,PPT助手。
3.2 系統(tǒng)功能實現(xiàn)
客戶端,負責接受用戶的輸入,并轉(zhuǎn)換為相應(yīng)的命令,向服務(wù)器端發(fā)送指令,服務(wù)端使用TCP協(xié)議接受客戶端發(fā)來的數(shù)據(jù),將控制層的指令發(fā)送給應(yīng)用層。應(yīng)用層解釋并執(zhí)行命令,同時負責更新顯示狀態(tài)。
1)客戶端向服務(wù)器發(fā)送指令:
public void sendMessage(String str)
{
try { //將要發(fā)送的數(shù)據(jù)寫入outputstream
DataOutputStream.writeBytes (str);
this.dataOutputStream.flush(); //確保所有數(shù)據(jù)發(fā)送
}
catch (IOException e) {
// TODO: handle exception
}
}
2)鼠標功能:
鼠標左鍵點擊實現(xiàn)代碼:
public void leftClick(float x, float y) {
try {
String message = buildMessage(MOUSE,LEFT_CLICK, x, y);
this.mConnector.sendMessage(message);
} catch (Exception e) { 鼠標觸摸感應(yīng)區(qū)
}
}
3)鍵盤功能
鍵盤功能主要是監(jiān)控輸入edit的內(nèi)容變化,當發(fā)生內(nèi)容變化時,發(fā)送edit的內(nèi)容到服務(wù)器端。
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
try {
str = edt_keybaord.getText().toString();
String message =buildMessage(KEYBOARD,INPUTSTRING, str,0)
mConnector.sendMessage(message);
} catch (Exception e) {
}
}
4)ppt播放控制
ppt播放器,要求ppt處于打開狀態(tài),可發(fā)送的控制命令包括開始播放、停止播放、下一頁、上一頁等。
public void onClick(View v) {
switch(v.getId())
case R.id.btn_ppt_next:
String message =buildMessage(PPT,PLAY_NEXT, 0,0)
mConnector.sendMessage(message);
} catch (Exception e) {
}
}
4 系統(tǒng)功能測試
測試結(jié)果如下:
客戶端與服務(wù)器通過wifi連接建立:成功建立tcp連接
網(wǎng)絡(luò)傳輸模塊:能正確收發(fā)預(yù)期的數(shù)據(jù)
UI界面:正常啟動,能滿足用戶操作需求
鼠標操作:能正確識別鼠標左鍵單擊,右鍵單擊
鼠標移動也比較準確
鍵盤操作:能正確發(fā)送字符串
ppt助手:能控制幻燈片的播放,前進、后退、播放、退出幾個常用功能
5 結(jié)語
本文設(shè)計了一個基于WIFI無線網(wǎng)絡(luò)的交互式軟件系統(tǒng),由Andorid手機控制計算機,模擬了鼠標功能,鍵盤功能以及PPT助手,并對開發(fā)過程進行了詳細介紹。運行該軟件只需要手機與計算機處于同一網(wǎng)段、能聯(lián)通即可,該軟件系統(tǒng)對于講座、教師上課等場合有較高實用價值,不需要另外的硬件設(shè)備。對于平板等終端設(shè)備,還可以繼續(xù)在此基礎(chǔ)上添加模擬全鍵盤功能,以及控制更多的軟件。為了安全起見,允許服務(wù)端設(shè)定口令,客戶端接入和連接時需要提供口令。
(下轉(zhuǎn)第166頁)
(上接第161頁)
參考文獻:
[1] 陳法海, 楊斌. Android系統(tǒng)中Wi-Fi網(wǎng)絡(luò)的研究與實現(xiàn)[J]. 成都信息工程學院學報, 2010(5).
[2] 李倩, 付蔚, 洪陽. 基于Android的無線控制系統(tǒng)的設(shè)計與實現(xiàn)[J]. 物聯(lián)網(wǎng)世界, 2014(2).
[3] 陳文, 郭依正. 深入理解Android網(wǎng)絡(luò)編程[M]. 北京: 機械工業(yè)出版社, 2013(8).
[4] 李杜. 基于Android平臺的無線鼠標設(shè)計與實現(xiàn)[D]. 蘭州大學, 2012.
[5] 肖梁軍. 基于Android智能終端的遠程控制電腦系統(tǒng)設(shè)計與實現(xiàn)[D]. 云南大學, 2012.