王士更 袁陳晨
摘要:多屏互動(dòng)是一種借助于無線局域網(wǎng)(WLAN)將人們生活中常用的電腦、手機(jī)、電視等帶屏幕的顯示終端連接在一起,實(shí)現(xiàn)內(nèi)容共享、操作互動(dòng)等功能的新技術(shù)應(yīng)用。多屏互動(dòng)可以有效提高信息的共享性,根據(jù)市場調(diào)查表明,多屏互動(dòng)技術(shù)的開發(fā)和實(shí)現(xiàn)已迫在眉睫,且對今后智能電視的開發(fā)起著重要作用。文章介紹了Android手機(jī)和電腦兩個(gè)屏幕之間互動(dòng)展示的設(shè)計(jì)與實(shí)現(xiàn)過程,兩個(gè)屏幕顯示端通過建立一條虛擬的通道,實(shí)現(xiàn)在Android端可以對PC端進(jìn)行簡單地操作和畫面的同步共享。
關(guān)鍵詞:互動(dòng)展示;無線局域網(wǎng);端口號(hào);Android;Socket
中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)14-3331-02
進(jìn)入信息時(shí)代以后,科學(xué)技術(shù)迅猛發(fā)展,各類展示活動(dòng)的主辦方也不再滿足于過去那種單一的以物為主的展示方式,他們希望展示設(shè)計(jì)師能充分挖掘作品各組成部分在展示信息傳播中的潛力,采用行之有效的展示方法,來提高信息傳遞的質(zhì)量,這在展示設(shè)計(jì)中就顯得尤為重要。該文實(shí)現(xiàn)了用Android 客戶端進(jìn)行控制,實(shí)現(xiàn)電視或電腦的任意終端設(shè)備間的內(nèi)容共享,可以帶來多屏互動(dòng)體驗(yàn),全新的視聽盛宴享受。
1 關(guān)鍵技術(shù)分析
Android手機(jī)和電腦兩個(gè)屏幕之間互動(dòng)展示制作過程中主要運(yùn)用的關(guān)鍵技術(shù)有Socket通信技術(shù)、RelativeLayout相對布局和SurfaceView 進(jìn)行Android界面圖形布局設(shè)計(jì)、運(yùn)用MotionEvent和OnclickListener處理Android的滑動(dòng)和點(diǎn)擊。
Socket是用來進(jìn)行雙向傳輸?shù)木W(wǎng)絡(luò)通信機(jī)制,是網(wǎng)絡(luò)中兩臺(tái)主機(jī)之間的數(shù)據(jù)連接,服務(wù)器程序通過服務(wù)器的IP地址和端口號(hào)來識(shí)別自己??蛻舳嗽诰W(wǎng)絡(luò)中通過服務(wù)器的IP地址找到服務(wù)器,再通過端口號(hào)連接到服務(wù)器程序,實(shí)現(xiàn)某項(xiàng)功能。
目前,可以使用兩種Socket方式,即流式Socket和數(shù)據(jù)包式Socket。流式Socket提供了雙向的、有序的、無重復(fù)并且無記錄邊界的數(shù)據(jù)流服務(wù),TCP是一種流式Socket協(xié)議;數(shù)據(jù)包式Socket支持雙向的數(shù)據(jù)流。兩種Socket相比較而言,流式Socket具有較高的安全性,但有一定的額外開銷,效率較低。根據(jù)傳輸?shù)男畔⒉煌?,采用不同的Socket方式。如傳輸媒體信息,常使用數(shù)據(jù)包式Socket;而對于文件操作和網(wǎng)絡(luò)傳輸信息,常采用流式Socket。流式Socket所完成的通信是一種基于連接的通信。即在通信開始之前先由通信雙方確定身份并建立一條專用的虛擬連接通道,然后他們通過這條通道傳送數(shù)據(jù)信息進(jìn)行通信,當(dāng)通信結(jié)束時(shí)再將原先所建立的連接拆除。
2 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)的總體設(shè)計(jì)可見圖1,首先Socket作為中介,雙向連接PC客戶端和Android端。Robot獲取當(dāng)前PC客戶端的畫面信息通過Socket傳送給Android端,由此我們可以在Android端看到PC客戶端的縮小版畫面。同時(shí),在Android端進(jìn)行的滑動(dòng)類事件(Motionevent)和點(diǎn)擊類事件(OnClickListener)通過SurfaceView傳遞給Socket,再傳送給PC客戶端,實(shí)現(xiàn)遠(yuǎn)程操作。這樣我們可以簡單地實(shí)現(xiàn)Android和PC客戶端的畫面共享和同步。圖中的單向箭頭表示單向傳遞,雙向箭頭表示可以互相傳遞。
3 系統(tǒng)的實(shí)現(xiàn)
根據(jù)設(shè)計(jì)構(gòu)想,我們首先設(shè)計(jì)的是在Android和PC客戶端之間通過Socket建立連接,實(shí)現(xiàn)簡單的互動(dòng)事件,然后再設(shè)計(jì)具體的Android客戶端。
Android和PC端通過Socket實(shí)現(xiàn)互動(dòng)的部分關(guān)鍵代碼如下:
Android端操控PC端的實(shí)現(xiàn)。(1)滑動(dòng)類事件處理。首先由MotionEvent對滑動(dòng)類事件預(yù)處理后反饋給SurfaceView,然后通過Socket傳達(dá)給PC端。(2)點(diǎn)擊類事件處理。OnClickListener對點(diǎn)擊類事件處理后傳達(dá)給SuefaceView,繼續(xù)傳達(dá)給Socket,然后通過Socket傳達(dá)給PC端。
PC端操控,Android端同步的實(shí)現(xiàn)。當(dāng)我們對PC端進(jìn)行各種操作以后,Robot會(huì)捕捉PC端當(dāng)前畫面并通過Socket反饋給Android端。
對于Android客戶端的設(shè)計(jì)我們主要是通過Eclipse平臺(tái)來設(shè)計(jì)客戶端界面,使互動(dòng)同步具有針對性。連接界面主要是輸入同一網(wǎng)段下的IP地址和端口號(hào),建立一條虛擬通道,以便于Socket傳送數(shù)據(jù)信息,實(shí)現(xiàn)畫面的互動(dòng)共享。PC端與Android端通過無線局域網(wǎng)(WLAN)連接,同時(shí)要求PC端和Android端要處于同一網(wǎng)段下,也就是要端口號(hào)和IP地址相互對應(yīng)起來。這個(gè)結(jié)果的實(shí)現(xiàn)應(yīng)用的是無線路由器來發(fā)射無線局域網(wǎng)信號(hào)。
4 實(shí)現(xiàn)結(jié)果
PC端和Android端是通過無線局域網(wǎng)建立連接,通過Socket實(shí)現(xiàn)網(wǎng)絡(luò)通信。實(shí)現(xiàn)結(jié)果如圖4~圖5。
5 結(jié)束語
多屏互動(dòng)技術(shù)的產(chǎn)品越來越受大眾的喜愛,這不但給普通用戶帶來視覺上的盛宴。對于商業(yè)性展覽也有莫大的好處,使大眾能夠全方位的對產(chǎn)品做全面了解。隨著技術(shù)的不斷改進(jìn)和完善,相信在不久的將來多屏互動(dòng)技術(shù)將會(huì)得到更多人的青睞。
參考文獻(xiàn):
[1] 付興,龍超.Android智能電視三屏互動(dòng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國高新技術(shù)產(chǎn)業(yè),2012(7).
[2] 王靜,曲鳳娟.基于Socket的多用戶并發(fā)通信的設(shè)計(jì)[J].福建電腦,2007(3).
[3] 耿東久.基于Android手機(jī)的遠(yuǎn)程訪問和控制系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2011(2).
[4] 黃雋實(shí).Android和PHP開發(fā)最佳實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2013.
[5] 孫霞.基于JAVA的高效多線程HTTP服務(wù)器的研究及實(shí)現(xiàn)[J].福建電腦,2003(111).endprint
摘要:多屏互動(dòng)是一種借助于無線局域網(wǎng)(WLAN)將人們生活中常用的電腦、手機(jī)、電視等帶屏幕的顯示終端連接在一起,實(shí)現(xiàn)內(nèi)容共享、操作互動(dòng)等功能的新技術(shù)應(yīng)用。多屏互動(dòng)可以有效提高信息的共享性,根據(jù)市場調(diào)查表明,多屏互動(dòng)技術(shù)的開發(fā)和實(shí)現(xiàn)已迫在眉睫,且對今后智能電視的開發(fā)起著重要作用。文章介紹了Android手機(jī)和電腦兩個(gè)屏幕之間互動(dòng)展示的設(shè)計(jì)與實(shí)現(xiàn)過程,兩個(gè)屏幕顯示端通過建立一條虛擬的通道,實(shí)現(xiàn)在Android端可以對PC端進(jìn)行簡單地操作和畫面的同步共享。
關(guān)鍵詞:互動(dòng)展示;無線局域網(wǎng);端口號(hào);Android;Socket
中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)14-3331-02
進(jìn)入信息時(shí)代以后,科學(xué)技術(shù)迅猛發(fā)展,各類展示活動(dòng)的主辦方也不再滿足于過去那種單一的以物為主的展示方式,他們希望展示設(shè)計(jì)師能充分挖掘作品各組成部分在展示信息傳播中的潛力,采用行之有效的展示方法,來提高信息傳遞的質(zhì)量,這在展示設(shè)計(jì)中就顯得尤為重要。該文實(shí)現(xiàn)了用Android 客戶端進(jìn)行控制,實(shí)現(xiàn)電視或電腦的任意終端設(shè)備間的內(nèi)容共享,可以帶來多屏互動(dòng)體驗(yàn),全新的視聽盛宴享受。
1 關(guān)鍵技術(shù)分析
Android手機(jī)和電腦兩個(gè)屏幕之間互動(dòng)展示制作過程中主要運(yùn)用的關(guān)鍵技術(shù)有Socket通信技術(shù)、RelativeLayout相對布局和SurfaceView 進(jìn)行Android界面圖形布局設(shè)計(jì)、運(yùn)用MotionEvent和OnclickListener處理Android的滑動(dòng)和點(diǎn)擊。
Socket是用來進(jìn)行雙向傳輸?shù)木W(wǎng)絡(luò)通信機(jī)制,是網(wǎng)絡(luò)中兩臺(tái)主機(jī)之間的數(shù)據(jù)連接,服務(wù)器程序通過服務(wù)器的IP地址和端口號(hào)來識(shí)別自己。客戶端在網(wǎng)絡(luò)中通過服務(wù)器的IP地址找到服務(wù)器,再通過端口號(hào)連接到服務(wù)器程序,實(shí)現(xiàn)某項(xiàng)功能。
目前,可以使用兩種Socket方式,即流式Socket和數(shù)據(jù)包式Socket。流式Socket提供了雙向的、有序的、無重復(fù)并且無記錄邊界的數(shù)據(jù)流服務(wù),TCP是一種流式Socket協(xié)議;數(shù)據(jù)包式Socket支持雙向的數(shù)據(jù)流。兩種Socket相比較而言,流式Socket具有較高的安全性,但有一定的額外開銷,效率較低。根據(jù)傳輸?shù)男畔⒉煌?,采用不同的Socket方式。如傳輸媒體信息,常使用數(shù)據(jù)包式Socket;而對于文件操作和網(wǎng)絡(luò)傳輸信息,常采用流式Socket。流式Socket所完成的通信是一種基于連接的通信。即在通信開始之前先由通信雙方確定身份并建立一條專用的虛擬連接通道,然后他們通過這條通道傳送數(shù)據(jù)信息進(jìn)行通信,當(dāng)通信結(jié)束時(shí)再將原先所建立的連接拆除。
2 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)的總體設(shè)計(jì)可見圖1,首先Socket作為中介,雙向連接PC客戶端和Android端。Robot獲取當(dāng)前PC客戶端的畫面信息通過Socket傳送給Android端,由此我們可以在Android端看到PC客戶端的縮小版畫面。同時(shí),在Android端進(jìn)行的滑動(dòng)類事件(Motionevent)和點(diǎn)擊類事件(OnClickListener)通過SurfaceView傳遞給Socket,再傳送給PC客戶端,實(shí)現(xiàn)遠(yuǎn)程操作。這樣我們可以簡單地實(shí)現(xiàn)Android和PC客戶端的畫面共享和同步。圖中的單向箭頭表示單向傳遞,雙向箭頭表示可以互相傳遞。
3 系統(tǒng)的實(shí)現(xiàn)
根據(jù)設(shè)計(jì)構(gòu)想,我們首先設(shè)計(jì)的是在Android和PC客戶端之間通過Socket建立連接,實(shí)現(xiàn)簡單的互動(dòng)事件,然后再設(shè)計(jì)具體的Android客戶端。
Android和PC端通過Socket實(shí)現(xiàn)互動(dòng)的部分關(guān)鍵代碼如下:
Android端操控PC端的實(shí)現(xiàn)。(1)滑動(dòng)類事件處理。首先由MotionEvent對滑動(dòng)類事件預(yù)處理后反饋給SurfaceView,然后通過Socket傳達(dá)給PC端。(2)點(diǎn)擊類事件處理。OnClickListener對點(diǎn)擊類事件處理后傳達(dá)給SuefaceView,繼續(xù)傳達(dá)給Socket,然后通過Socket傳達(dá)給PC端。
PC端操控,Android端同步的實(shí)現(xiàn)。當(dāng)我們對PC端進(jìn)行各種操作以后,Robot會(huì)捕捉PC端當(dāng)前畫面并通過Socket反饋給Android端。
對于Android客戶端的設(shè)計(jì)我們主要是通過Eclipse平臺(tái)來設(shè)計(jì)客戶端界面,使互動(dòng)同步具有針對性。連接界面主要是輸入同一網(wǎng)段下的IP地址和端口號(hào),建立一條虛擬通道,以便于Socket傳送數(shù)據(jù)信息,實(shí)現(xiàn)畫面的互動(dòng)共享。PC端與Android端通過無線局域網(wǎng)(WLAN)連接,同時(shí)要求PC端和Android端要處于同一網(wǎng)段下,也就是要端口號(hào)和IP地址相互對應(yīng)起來。這個(gè)結(jié)果的實(shí)現(xiàn)應(yīng)用的是無線路由器來發(fā)射無線局域網(wǎng)信號(hào)。
4 實(shí)現(xiàn)結(jié)果
PC端和Android端是通過無線局域網(wǎng)建立連接,通過Socket實(shí)現(xiàn)網(wǎng)絡(luò)通信。實(shí)現(xiàn)結(jié)果如圖4~圖5。
5 結(jié)束語
多屏互動(dòng)技術(shù)的產(chǎn)品越來越受大眾的喜愛,這不但給普通用戶帶來視覺上的盛宴。對于商業(yè)性展覽也有莫大的好處,使大眾能夠全方位的對產(chǎn)品做全面了解。隨著技術(shù)的不斷改進(jìn)和完善,相信在不久的將來多屏互動(dòng)技術(shù)將會(huì)得到更多人的青睞。
參考文獻(xiàn):
[1] 付興,龍超.Android智能電視三屏互動(dòng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國高新技術(shù)產(chǎn)業(yè),2012(7).
[2] 王靜,曲鳳娟.基于Socket的多用戶并發(fā)通信的設(shè)計(jì)[J].福建電腦,2007(3).
[3] 耿東久.基于Android手機(jī)的遠(yuǎn)程訪問和控制系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2011(2).
[4] 黃雋實(shí).Android和PHP開發(fā)最佳實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2013.
[5] 孫霞.基于JAVA的高效多線程HTTP服務(wù)器的研究及實(shí)現(xiàn)[J].福建電腦,2003(111).endprint
摘要:多屏互動(dòng)是一種借助于無線局域網(wǎng)(WLAN)將人們生活中常用的電腦、手機(jī)、電視等帶屏幕的顯示終端連接在一起,實(shí)現(xiàn)內(nèi)容共享、操作互動(dòng)等功能的新技術(shù)應(yīng)用。多屏互動(dòng)可以有效提高信息的共享性,根據(jù)市場調(diào)查表明,多屏互動(dòng)技術(shù)的開發(fā)和實(shí)現(xiàn)已迫在眉睫,且對今后智能電視的開發(fā)起著重要作用。文章介紹了Android手機(jī)和電腦兩個(gè)屏幕之間互動(dòng)展示的設(shè)計(jì)與實(shí)現(xiàn)過程,兩個(gè)屏幕顯示端通過建立一條虛擬的通道,實(shí)現(xiàn)在Android端可以對PC端進(jìn)行簡單地操作和畫面的同步共享。
關(guān)鍵詞:互動(dòng)展示;無線局域網(wǎng);端口號(hào);Android;Socket
中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)14-3331-02
進(jìn)入信息時(shí)代以后,科學(xué)技術(shù)迅猛發(fā)展,各類展示活動(dòng)的主辦方也不再滿足于過去那種單一的以物為主的展示方式,他們希望展示設(shè)計(jì)師能充分挖掘作品各組成部分在展示信息傳播中的潛力,采用行之有效的展示方法,來提高信息傳遞的質(zhì)量,這在展示設(shè)計(jì)中就顯得尤為重要。該文實(shí)現(xiàn)了用Android 客戶端進(jìn)行控制,實(shí)現(xiàn)電視或電腦的任意終端設(shè)備間的內(nèi)容共享,可以帶來多屏互動(dòng)體驗(yàn),全新的視聽盛宴享受。
1 關(guān)鍵技術(shù)分析
Android手機(jī)和電腦兩個(gè)屏幕之間互動(dòng)展示制作過程中主要運(yùn)用的關(guān)鍵技術(shù)有Socket通信技術(shù)、RelativeLayout相對布局和SurfaceView 進(jìn)行Android界面圖形布局設(shè)計(jì)、運(yùn)用MotionEvent和OnclickListener處理Android的滑動(dòng)和點(diǎn)擊。
Socket是用來進(jìn)行雙向傳輸?shù)木W(wǎng)絡(luò)通信機(jī)制,是網(wǎng)絡(luò)中兩臺(tái)主機(jī)之間的數(shù)據(jù)連接,服務(wù)器程序通過服務(wù)器的IP地址和端口號(hào)來識(shí)別自己。客戶端在網(wǎng)絡(luò)中通過服務(wù)器的IP地址找到服務(wù)器,再通過端口號(hào)連接到服務(wù)器程序,實(shí)現(xiàn)某項(xiàng)功能。
目前,可以使用兩種Socket方式,即流式Socket和數(shù)據(jù)包式Socket。流式Socket提供了雙向的、有序的、無重復(fù)并且無記錄邊界的數(shù)據(jù)流服務(wù),TCP是一種流式Socket協(xié)議;數(shù)據(jù)包式Socket支持雙向的數(shù)據(jù)流。兩種Socket相比較而言,流式Socket具有較高的安全性,但有一定的額外開銷,效率較低。根據(jù)傳輸?shù)男畔⒉煌?,采用不同的Socket方式。如傳輸媒體信息,常使用數(shù)據(jù)包式Socket;而對于文件操作和網(wǎng)絡(luò)傳輸信息,常采用流式Socket。流式Socket所完成的通信是一種基于連接的通信。即在通信開始之前先由通信雙方確定身份并建立一條專用的虛擬連接通道,然后他們通過這條通道傳送數(shù)據(jù)信息進(jìn)行通信,當(dāng)通信結(jié)束時(shí)再將原先所建立的連接拆除。
2 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)的總體設(shè)計(jì)可見圖1,首先Socket作為中介,雙向連接PC客戶端和Android端。Robot獲取當(dāng)前PC客戶端的畫面信息通過Socket傳送給Android端,由此我們可以在Android端看到PC客戶端的縮小版畫面。同時(shí),在Android端進(jìn)行的滑動(dòng)類事件(Motionevent)和點(diǎn)擊類事件(OnClickListener)通過SurfaceView傳遞給Socket,再傳送給PC客戶端,實(shí)現(xiàn)遠(yuǎn)程操作。這樣我們可以簡單地實(shí)現(xiàn)Android和PC客戶端的畫面共享和同步。圖中的單向箭頭表示單向傳遞,雙向箭頭表示可以互相傳遞。
3 系統(tǒng)的實(shí)現(xiàn)
根據(jù)設(shè)計(jì)構(gòu)想,我們首先設(shè)計(jì)的是在Android和PC客戶端之間通過Socket建立連接,實(shí)現(xiàn)簡單的互動(dòng)事件,然后再設(shè)計(jì)具體的Android客戶端。
Android和PC端通過Socket實(shí)現(xiàn)互動(dòng)的部分關(guān)鍵代碼如下:
Android端操控PC端的實(shí)現(xiàn)。(1)滑動(dòng)類事件處理。首先由MotionEvent對滑動(dòng)類事件預(yù)處理后反饋給SurfaceView,然后通過Socket傳達(dá)給PC端。(2)點(diǎn)擊類事件處理。OnClickListener對點(diǎn)擊類事件處理后傳達(dá)給SuefaceView,繼續(xù)傳達(dá)給Socket,然后通過Socket傳達(dá)給PC端。
PC端操控,Android端同步的實(shí)現(xiàn)。當(dāng)我們對PC端進(jìn)行各種操作以后,Robot會(huì)捕捉PC端當(dāng)前畫面并通過Socket反饋給Android端。
對于Android客戶端的設(shè)計(jì)我們主要是通過Eclipse平臺(tái)來設(shè)計(jì)客戶端界面,使互動(dòng)同步具有針對性。連接界面主要是輸入同一網(wǎng)段下的IP地址和端口號(hào),建立一條虛擬通道,以便于Socket傳送數(shù)據(jù)信息,實(shí)現(xiàn)畫面的互動(dòng)共享。PC端與Android端通過無線局域網(wǎng)(WLAN)連接,同時(shí)要求PC端和Android端要處于同一網(wǎng)段下,也就是要端口號(hào)和IP地址相互對應(yīng)起來。這個(gè)結(jié)果的實(shí)現(xiàn)應(yīng)用的是無線路由器來發(fā)射無線局域網(wǎng)信號(hào)。
4 實(shí)現(xiàn)結(jié)果
PC端和Android端是通過無線局域網(wǎng)建立連接,通過Socket實(shí)現(xiàn)網(wǎng)絡(luò)通信。實(shí)現(xiàn)結(jié)果如圖4~圖5。
5 結(jié)束語
多屏互動(dòng)技術(shù)的產(chǎn)品越來越受大眾的喜愛,這不但給普通用戶帶來視覺上的盛宴。對于商業(yè)性展覽也有莫大的好處,使大眾能夠全方位的對產(chǎn)品做全面了解。隨著技術(shù)的不斷改進(jìn)和完善,相信在不久的將來多屏互動(dòng)技術(shù)將會(huì)得到更多人的青睞。
參考文獻(xiàn):
[1] 付興,龍超.Android智能電視三屏互動(dòng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國高新技術(shù)產(chǎn)業(yè),2012(7).
[2] 王靜,曲鳳娟.基于Socket的多用戶并發(fā)通信的設(shè)計(jì)[J].福建電腦,2007(3).
[3] 耿東久.基于Android手機(jī)的遠(yuǎn)程訪問和控制系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2011(2).
[4] 黃雋實(shí).Android和PHP開發(fā)最佳實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2013.
[5] 孫霞.基于JAVA的高效多線程HTTP服務(wù)器的研究及實(shí)現(xiàn)[J].福建電腦,2003(111).endprint