劉錦培
摘要:文章通過無線網絡通信和SOCKET套接字技術,利用JAVA語言在Eclipse和ADT平臺上,實現了Android手機遠程控制計算機和模擬鼠標滑動、鍵盤鍵入以及控制計算機軟件開關等各類操作。
關鍵詞:Android手機;遠程控制計算機;無線網絡
1前言
Android是一種以Linux為基礎的開放源代碼的操作系統,是目前全世界用戶使用最多、涵蓋范圍最廣的系統之_,主要用于手機、平板電腦及汽車GPS導航等一些便攜設備。由于Android系統的開源和支持開發者使用多種編程語言開發Android應用程序,Android手機的功能性和智能化都得到了極大的提升,并且逐漸成為個人的信息控制中心,自然而然成為人們生活中不可或缺的產品。
隨著技術的發展,在未來智能手機很有可能將完全替代計算機。目前,由于軟硬件技術及手機體積的限制,Android手機還無法取代計算機。在實際應用中,計算機憑借其巨大的存儲能力以及極快的運算速度,很多情況下我們仍需要計算機的協助。由于計算機攜帶的不便性,通過讓手機和計算機配合使用,使用手機發送指令給計算機,計算機運算結果傳回手機,這是目前使用較為廣泛的一種智能技術。
信息化技術的飛速發展,板書與多媒體技術的配合教學是現代化教學中最為常用的教學手段,為了保證計算機得到有效的控制,教師往往不得不站到計算機前控制計算機的鼠標和鍵盤。高校為了方便開設公開課或可以讓很多學生同時進行上課,高校教室的空間一般都設置得比較大且座位相互間隔也比較遠。如果教師一味的站在計算機前操作計算機,那么很容易與學生產生距離感,無法及時注意學生的聽課狀態以及學習知識的反應,非常不利于教學的進行。雖然無線激光筆可以通過按下激光筆上的上、下翻頁按鈕,實現電子文檔的翻閱和演示,但是無法實現鼠標及鍵盤的控制操作,功能單一,并且需要購買設備。如果可以使用手機操控多媒體計算機,不但不用增加外部設備,且更具有通用性。以下闡述如何通過Android手機實現遠程控制計算機的軟件系統,并操作鼠標和鍵盤。
2 Android手機與計算機的無線通信技術與Socket編程
智能手機的網絡通信連接方式主要有:WFIF無線網絡連接、蜂窩數據連接、NFC和藍牙連接等,其中WIFI無線網絡連接方式是運行成本最低、網絡環境最穩定的連接方式,但是這種連接方式會受到范圍的限制。
所謂的WIFI就是指無線保真技術,是一種可以通過無線的方式將移動終端和計算機相互連接的網絡技術,其本質是一個高頻無線電信號,主要具有以下特點:
(1)相對于其它網絡連接方式,WIFI無線網絡連接的功耗比較低。
(2)更加的安全,無線網絡的無線信號發射功率在60~70毫瓦之間,對人體來說基本沒有輻射上的傷害,并且不需要人體的接觸,相對的較為安全。
(3)速度更快,最大帶寬可以達到11Mbps,并且用戶還可以根據信號的強度調整帶寬的大小,從而為使用人員提供一個穩定、持續和有效的網絡環境。
(4)減本較低,想要在一個空間內形成一個無線網絡環境,只需要一個無線網絡接入點和一張無線網卡即可,大大簡化了網絡安裝的過程。
Socket通常也稱為“套接字”,是一個通信鏈句柄,包含IP地址和端口。其中IP地址是主機在Internet上的唯一標識,協議和端口是主機進程的唯一標識。Socket通過協議、IP地址以及端口組合成一個標識,實現網絡進程間的通信,Socket的應用非常廣泛,是網絡通信最重要和最常用的—種方式。
在JDK1.7的java.net包中有Socket和ServerSocket類庫,ServerSocket用在服務端,Socket用在客戶端,用于建立網絡連接。一旦網絡連接建立成功,應用程序兩端會產生一個Socket實例,并通過操作這個Socket實例實現會話。為了確保Android手機與計算機之間連接的穩定性,本系統采用面向連接的TCP協議建立連接。
一個TCP協議的Socket會話,其工作流程如下:
首先,創建一個ServerSocket對象,并分配端口號。這里端口號的設置原則建議取1024到65535之間,因為1024以下是一些已定義或者保留下來的端口。
ServerSocket ss=new ServerSocket(9333);
當Android手機端發起Socket連接且端口號為9333時,此時計算機的ss對象會響應該連接,并調用accept()方法創建一個Socket對象。我們用這個socket對象與Android手機端進行通信,再通過輸入輸出流來完成數據的讀寫操作。
其次,Android手機端根據服務端計算機的IP地址和端口號來創建一個socket對象,其中“192.168.1.201”為IP地址,9333為端口號。
Socket sc=new Socket("192.168.1.201",9333);
最后,使用send方法和receive方法來發送和接收消息,通信流程如圖1所示。
3交互式系統Android手機端的設計與實現
3.1交互式系統Android手機端的總體設計
根據高校多媒體教室的計算機較常用的功能,本文所設計的Android手機端的功能模塊結構如圖2所示,由無線鼠標模塊、無線鍵盤模塊、系統設置模塊及PPT無線控制模塊組成,其界面如圖3所示。
3.2交互式系統Android手機端的功能實現
Android手機端的任務就是幫助用戶完成輸入任務,并且將其轉化為相應的指令,然后向計算機發送指令,計算機使用TCP協議接受Android手機端發來的指令,然后將控制層的指令傳遞給應用層。應用層在接受到指令的同時,解釋并執行命令,并且更新相應的顯示狀態。
4遠程操控軟件功能測試
Android手機遠程控制計算機的應用系統經過試驗測試得到以下結果:Android手機客戶端與計算機服務器成功建立連接,并能夠按照預期設計收發相應的數據。進行遠程操作時,UI界面運行正常且流暢度較高,能夠滿足實際的需求。手機模擬鼠標的各類操作能夠正確識別,模擬鍵盤能夠正確發送手機所鍵入的字符串。PPT無線控制效果能夠達到預期的要求,但技術還存在一些不足,仍有很大的提升空間。
5結語
文章通過無線通信和Socket編程等技術實現了Android手機控制計算機的交互系統,包括模擬鼠標點擊移動控制、鍵盤輸入和PPT無線控制,并對開發和實現過程進行詳細的描述和分析。其運行環境只要求Android手機和服務端計算機處于同一網絡環境下,無需其他設備,適用于高校課堂教學中。遠程控制技術還有很大的發展空間,其功能也將越來越強大,將會更深入地滲透到我們生活中。