一種跨平臺(tái)同步剪切板的方法和系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種跨平臺(tái)同步剪切板的方法和系統(tǒng),包括具有第一操作系統(tǒng)的第一平臺(tái)和具有第二操作系統(tǒng)的第二平臺(tái),方法包括以下步驟:S1、在第一平臺(tái)中向第二平臺(tái)發(fā)送連接請(qǐng)求,在第二平臺(tái)中監(jiān)聽(tīng)連接請(qǐng)求并與第一平臺(tái)建立連接;S2、在第一平臺(tái)中獲取第一平臺(tái)的剪切板中的數(shù)據(jù)信息,并根據(jù)第一操作系統(tǒng)將數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;S3、將數(shù)據(jù)包傳送至第二平臺(tái);S4、在第二平臺(tái)中接收到數(shù)據(jù)包后,根據(jù)第二操作系統(tǒng)解析數(shù)據(jù)包以得到數(shù)據(jù)信息,并將數(shù)據(jù)信息覆蓋第二平臺(tái)的剪切板中原有的數(shù)據(jù)信息。實(shí)施本發(fā)明的有益效果是,簡(jiǎn)化跨平臺(tái)間的剪切板的復(fù)制/粘貼操作。
【專(zhuān)利說(shuō)明】 一種跨平臺(tái)同步切板的方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)應(yīng)用領(lǐng)域,更具體地說(shuō),涉及一種跨平臺(tái)同步剪切板的方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)的不斷普及,各種操作系統(tǒng)得到了極為廣泛的應(yīng)用。剪切板作為操作系統(tǒng)支持的一種跨進(jìn)程數(shù)據(jù)傳遞方式,允許用戶(hù)把某數(shù)據(jù)從一個(gè)應(yīng)用程序中復(fù)制到另外一個(gè)程序中的中轉(zhuǎn)傳輸介質(zhì)。剪切板是操作系統(tǒng)提供的一個(gè)暫存數(shù)據(jù)和共享數(shù)據(jù)的模塊,它在內(nèi)存中開(kāi)辟的一塊動(dòng)態(tài)空間,得到了極為廣泛的應(yīng)用。剪切板也稱(chēng)為數(shù)據(jù)中轉(zhuǎn)站,剪切板在后臺(tái)(在內(nèi)存里,內(nèi)存是指操作系統(tǒng)設(shè)置的一段存儲(chǔ)區(qū)域)起作用。對(duì)于windows操作系統(tǒng),通過(guò)選定待復(fù)制的文本后按下CTRL+C或觸發(fā)右鍵功能以進(jìn)行復(fù)制,而文本輸入的地方按CRTL+V或觸發(fā)右鍵功能然后粘貼完成文本輸入,新的內(nèi)容送到剪切板后,將覆蓋舊內(nèi)容。
[0003]當(dāng)用戶(hù)使用筆記本上網(wǎng)時(shí)發(fā)現(xiàn)有趣的信息后,想通過(guò)手機(jī)再把該信息以短信的方式轉(zhuǎn)發(fā)給其他聯(lián)系人,通常需要打開(kāi)某個(gè)應(yīng)用復(fù)制某段文字后,保存成文件,然后通過(guò)USB / W1-Fi /藍(lán)牙等信道發(fā)送到手機(jī)上,然后在手機(jī)上打開(kāi)該文件,復(fù)制該段信息,再打開(kāi)應(yīng)用目標(biāo),粘貼該信息。這個(gè)跨平臺(tái)復(fù)制/粘貼信息的過(guò)程比較復(fù)雜。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)上述跨平臺(tái)復(fù)制/粘貼信息復(fù)雜的過(guò)程,提供一種跨平臺(tái)同步剪切板的方法和系統(tǒng)。
[0005]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:構(gòu)造一種跨平臺(tái)同步剪切板的方法,包括具有第一操作系統(tǒng)的第一平臺(tái)和具有第二操作系統(tǒng)的第二平臺(tái),其特征在于,所述方法包括以下步驟:
[0006]S1、在所述第一平臺(tái)中向所述第二平臺(tái)發(fā)送連接請(qǐng)求,在所述第二平臺(tái)中監(jiān)聽(tīng)所述連接請(qǐng)求并與所述第一平臺(tái)建立連接;
[0007]S2、在所述第一平臺(tái)中獲取所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;
[0008]S3、將所述數(shù)據(jù)包傳送至所述第二平臺(tái);
[0009]S4、在所述第二平臺(tái)中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)的剪切板中原有的數(shù)據(jù)信
肩、O
[0010]在本發(fā)明所述的方法中,在所述步驟SI中,建立的所述連接為USB、藍(lán)牙、W1-Fi中的一種。
[0011]在本發(fā)明所述的方法中,在所述步驟SI中,設(shè)置遠(yuǎn)程服務(wù)器,所述遠(yuǎn)程服務(wù)器與所述第一平臺(tái)和第二平臺(tái)通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接,從而在第一平臺(tái)與第二平臺(tái)之間建立移動(dòng)通信網(wǎng)絡(luò)連接。
[0012]在本發(fā)明所述的方法中,在所述步驟S2中,間歇地獲取所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。
[0013]在本發(fā)明所述的方法中,在所述步驟S2中,檢測(cè)所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息是否發(fā)生變化,若所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息發(fā)生變化,則獲取所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。
[0014]本發(fā)明的另一方面,提供一種跨平臺(tái)同步剪切板的系統(tǒng),用于同步所述第一平臺(tái)與所述第二平臺(tái)的剪切板中的數(shù)據(jù)信息,所述第一平臺(tái)包括用于向第二平臺(tái)發(fā)送連接請(qǐng)求的客戶(hù)端、用于獲取所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息的剪切板獲取模塊、用于根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包的轉(zhuǎn)化模塊;
[0015]所述第二平臺(tái)包括用于監(jiān)聽(tīng)所述連接請(qǐng)求并與所述客戶(hù)端連接的服務(wù)端、用于將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)的剪切板中原有的數(shù)據(jù)信息的剪切板同步模塊、用于根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息的解析模塊;
[0016]所述客戶(hù)端還用于將所述數(shù)據(jù)包傳送至所述第二平臺(tái);
[0017]所述服務(wù)端還用于接收所述數(shù)據(jù)包。
[0018]在本發(fā)明所述的系統(tǒng)中,所述第一平臺(tái)還包括第一 USB模塊、第一藍(lán)牙模塊或第一 W1-Fi 模塊;
[0019]若所述第一平臺(tái)包括第一 USB模塊,則所述第二平臺(tái)還包括第二 USB模塊;若所述第一平臺(tái)包括第一藍(lán)牙模塊,則所述第二平臺(tái)還包括第二藍(lán)牙模塊;若所述第一平臺(tái)包括第二 W1-Fi模塊,則所述第二平臺(tái)還包括第二 W1-Fi模塊;
[0020]其中,所述第一 USB模塊和第二 USB模塊用于在第一平臺(tái)與第二平臺(tái)之間建立USB連接,所述第一藍(lán)牙模塊和第二藍(lán)牙模塊用于在第一平臺(tái)與第二平臺(tái)之間建立藍(lán)牙連接,所述第一 W1-Fi模塊和第二 W1-Fi模塊用于在第一平臺(tái)與第二平臺(tái)之間建立W1-Fi連接。
[0021]在本發(fā)明所述的系統(tǒng)中,該系統(tǒng)還包括遠(yuǎn)程服務(wù)器,所述第一平臺(tái)還包括第一通信模塊,所述第二平臺(tái)還包括第二通信模塊;
[0022]所述遠(yuǎn)程服務(wù)器與所述第一通信模塊和第二通信模塊通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接,從而在第一平臺(tái)與第二平臺(tái)之間建立移動(dòng)通信網(wǎng)絡(luò)連接。
[0023]在本發(fā)明所述的系統(tǒng)中,所述第一平臺(tái)還包括時(shí)鐘模塊,所述時(shí)鐘模塊用于控制所述剪切板獲取模塊間歇地獲取所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息。
[0024]在本發(fā)明所述的系統(tǒng)中,所述第二平臺(tái)還包括檢測(cè)模塊,所述檢測(cè)模塊用于檢測(cè)所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息是否發(fā)生變化,若所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息發(fā)生變化,則控制所述剪切板獲取模塊獲取所述第一平臺(tái)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。
[0025]實(shí)施本發(fā)明的一種跨平臺(tái)同步剪切板的方法和系統(tǒng),具有以下有益效果:避免了用戶(hù)在跨平臺(tái)間多次進(jìn)行復(fù)制/粘貼操作,通過(guò)簡(jiǎn)單的UI操作即可實(shí)現(xiàn)跨平臺(tái)間的剪切板的信息同步。
【專(zhuān)利附圖】
【附圖說(shuō)明】[0026]下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,附圖中:
[0027]圖1是本發(fā)明提供的一種跨平臺(tái)同步剪切板的方法的流程圖;
[0028]圖2是本發(fā)明提供的一種跨平臺(tái)同步剪切板的方法的示意圖;
[0029]圖3是本發(fā)明第一方法實(shí)施例提供的通過(guò)USB連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖;
[0030]圖4是本發(fā)明第一產(chǎn)品實(shí)施例提供的通過(guò)USB連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖;
[0031]圖5是本發(fā)明第二方法實(shí)施例提供的通過(guò)藍(lán)牙連接的跨平臺(tái)同步剪切板的方法的流程圖;
[0032]圖6是本發(fā)明第二產(chǎn)品實(shí)施例提供的通過(guò)藍(lán)牙連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖;
[0033]圖7是本發(fā)明第三方法實(shí)施例提供的通過(guò)W1-Fi連接的跨平臺(tái)同步剪切板的方法的流程圖;
[0034]圖8是本發(fā)明第三產(chǎn)品實(shí)施例提供的通過(guò)W1-Fi連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖;
[0035]圖9是本發(fā)明第四方法實(shí)施例提供的通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接的跨平臺(tái)同步剪切板的方法的流程圖;
[0036]圖10是本發(fā)明第四產(chǎn)品實(shí)施例提供的通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖;
[0037]圖11是本發(fā)明提供的采用“輪詢(xún)”同步方式的第一平臺(tái)的方框圖;
[0038]圖12是本發(fā)明提供的采用“中斷”同步方式的第一平臺(tái)的方框圖。
【具體實(shí)施方式】
[0039]為了對(duì)本發(fā)明的技術(shù)特征、目的和效果有更加清楚的理解,現(xiàn)對(duì)照附圖詳細(xì)說(shuō)明本發(fā)明的【具體實(shí)施方式】。
[0040]如圖1所示,在本發(fā)明提供的一種跨平臺(tái)同步剪切板的方法的流程圖中,該方法包括具有第一操作系統(tǒng)的第一平臺(tái)I和具有第二操作系統(tǒng)的第二平臺(tái)2,其中第一平臺(tái)I可以是手機(jī)、PDA、PC機(jī)、服務(wù)器等,第二平臺(tái)可以是手機(jī)、PDA、PC機(jī)、服務(wù)器等,方法包括以下步驟:
[0041]S1、在所述第一平臺(tái)I中向所述第二平臺(tái)2發(fā)送連接請(qǐng)求,在所述第二平臺(tái)2中監(jiān)聽(tīng)所述連接請(qǐng)求并與所述第一平臺(tái)I建立連接;
[0042]例如:在第一平臺(tái)I中設(shè)置客戶(hù)端11,在第二平臺(tái)2設(shè)置服務(wù)端21,并在客戶(hù)端11與服務(wù)端21之間建立通信;其中,可以在客戶(hù)端11和服務(wù)端21之間建立Socket通信,Socket通常也稱(chēng)作“套接字”,應(yīng)用程序通常通過(guò)“套接字”向網(wǎng)絡(luò)發(fā)出請(qǐng)求或者應(yīng)答網(wǎng)絡(luò)請(qǐng)求。Socket之間的連接過(guò)程可以分為三個(gè)步驟:服務(wù)端21監(jiān)聽(tīng),客戶(hù)端11請(qǐng)求,連接確認(rèn)。
[0043]服務(wù)端21監(jiān)聽(tīng):是服務(wù)端21套接字并不定位具體的客戶(hù)端11套接字,而是處于等待連接的狀態(tài),實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)狀態(tài)。
[0044]客戶(hù)端11請(qǐng)求:是指由客戶(hù)端11的套接字提出連接請(qǐng)求,要連接的目標(biāo)是服務(wù)器端21的套接字。為此,客戶(hù)端11的套接字必須首先描述它要連接的服務(wù)端21的套接字,指出服務(wù)端21套接字的IP地址和端口號(hào)port,然后就向服務(wù)端21套接字提出連接請(qǐng)求。
[0045]連接確認(rèn):是指當(dāng)服務(wù)端21套接字監(jiān)聽(tīng)到或者說(shuō)接收到客戶(hù)端11套接字的連接請(qǐng)求,它就響應(yīng)客戶(hù)端11套接字的請(qǐng)求,建立一個(gè)新的線程,把服務(wù)器端21套接字的描述發(fā)給客戶(hù)端,一旦客戶(hù)端確認(rèn)了此描述,連接就建立好了。而服務(wù)端21套接字繼續(xù)處于監(jiān)聽(tīng)狀態(tài),繼續(xù)接收其他客戶(hù)端11套接字的連接請(qǐng)求。
[0046]S2、在所述第一平臺(tái)I中獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;
[0047]例如:在windows系統(tǒng)中,獲取剪切板的數(shù)據(jù)信息可以通過(guò)JavaScript獲取網(wǎng)頁(yè)剪切板內(nèi)容,對(duì)于word剪切板的內(nèi)容可以通過(guò)VBScript (Microsoft Visual Basic ScriptEditon,微軟公司可視化BASIC腳本版)獲取,獲取剪切板內(nèi)容后根據(jù)信道類(lèi)型將內(nèi)容轉(zhuǎn)化為相應(yīng)用于在信道中傳送的數(shù)據(jù)包。
[0048]S3、將數(shù)據(jù)包發(fā)送至第二平臺(tái)2 ;
[0049]例如:獲取剪切板數(shù)據(jù)信息時(shí),第一平臺(tái)與第二平臺(tái)已建立Socket連接,那么將該數(shù)據(jù)信息轉(zhuǎn)化為相應(yīng)用于在信道中傳送的數(shù)據(jù)包后,通過(guò)Socket發(fā)送至第二平臺(tái)。
[0050]S4、在所述第二平臺(tái)2中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)2的剪切板中原有的數(shù)據(jù)信息。
[0051]例如:第一平臺(tái)I為PC機(jī),第二平臺(tái)2為手機(jī),PC機(jī)實(shí)時(shí)獲取其中剪切板的數(shù)據(jù)信息,若用戶(hù)觸發(fā)右鍵復(fù)制功能或者選定文本后按下CTRL+C時(shí),均為復(fù)制操作,PC機(jī)獲取復(fù)制后剪切板中的數(shù)據(jù)信息,建立Socket連接后,將所述數(shù)據(jù)信息轉(zhuǎn)化為相應(yīng)的數(shù)據(jù)包,手機(jī)實(shí)時(shí)接收來(lái)自PC機(jī)的剪切板中的數(shù)據(jù)包,并根據(jù)手機(jī)自身的操作系統(tǒng),調(diào)用相應(yīng)的API接口,例如,手機(jī)為Windows Phone系統(tǒng),解析數(shù)據(jù)包,調(diào)用系統(tǒng)內(nèi)存中的拷貝函數(shù)即可覆蓋剪切板原有的數(shù)據(jù)信息,從而同步手機(jī)和PC機(jī)的剪切板中的數(shù)據(jù)信息;本實(shí)施例實(shí)現(xiàn)的功能如圖2所示,使手機(jī)和PC機(jī)間的應(yīng)用程序通過(guò)復(fù)制/粘貼的簡(jiǎn)單操作完成信息交互。
[0052]其中,跨平臺(tái)同步剪貼板的數(shù)據(jù)信息可采用以下兩種方式:
[0053]I)間歇地獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。這種方式又稱(chēng)為“輪詢(xún)”。“輪詢(xún)”方式可以實(shí)現(xiàn)但比較低效。即需做“復(fù)制/剪切”動(dòng)作的終端將系統(tǒng)剪切板中的數(shù)據(jù)實(shí)時(shí)不停的發(fā)給服務(wù)端,服務(wù)端將收到的數(shù)據(jù)不停地刷新到系統(tǒng)剪貼板里。其中,間歇時(shí)間可以自行設(shè)定。若采取“輪詢(xún)”數(shù)據(jù)同步方式,則通過(guò)在第一平臺(tái)I中添加時(shí)鐘模塊18,所述時(shí)鐘模塊18用于控制所述剪切板獲取模塊12間歇地獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,如圖11所示,圖中還包括了第一 USB模塊,表示在物理層上采用USB連接。
[0054]2)檢測(cè)所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息是否發(fā)生變化,若所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息發(fā)生變化,則獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。這種方式又稱(chēng)為“中斷”。“中斷”方式比較高效。根據(jù)操作上的需求,用作“復(fù)制/剪切”動(dòng)作的終端作為的客戶(hù)端11來(lái)主動(dòng)發(fā)送數(shù)據(jù)。用作“粘貼”動(dòng)作的一端作為服務(wù)端21來(lái)監(jiān)聽(tīng)客戶(hù)端11發(fā)來(lái)的數(shù)據(jù)。若采取“中斷”數(shù)據(jù)同步方式,則通過(guò)在第一平臺(tái)I中添加檢測(cè)模塊19,所述檢測(cè)模塊19用于檢測(cè)所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息是否發(fā)生變化,若所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息發(fā)生變化,則控制所述剪切板獲取模塊12獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包,如圖12所示,圖中還包括了第一 USB模塊,表示在物理層上采用USB連接。
[0055]如,當(dāng)在PC機(jī)中設(shè)置了客戶(hù)端后,在短信、瀏覽器、記事本上選擇文字、網(wǎng)址、圖片并點(diǎn)擊“復(fù)制”后,該P(yáng)C機(jī)的系統(tǒng)的原生邏輯會(huì)在“系統(tǒng)剪貼板”上暫存用戶(hù)選擇的數(shù)據(jù)。當(dāng)PC機(jī)監(jiān)聽(tīng)到CTRL+C鍵盤(pán)事件時(shí),將已存入剪貼板的數(shù)據(jù)發(fā)送給手機(jī),手機(jī)收到數(shù)據(jù)后,刷新/覆蓋系統(tǒng)剪切板中的原有數(shù)據(jù)。接下來(lái)就是用戶(hù)自己根據(jù)自己的需求將剪切板中的數(shù)據(jù)粘貼到不同的軟件里了,如Word、短信、郵件、微信文本框。安卓系統(tǒng)和Windows系統(tǒng)是以IPC方式同步其剪切板。
[0056]如圖3所示,在本發(fā)明第一方法實(shí)施例提供的通過(guò)USB連接的跨平臺(tái)同步剪切板的方法的流程圖中,該實(shí)施例在第一平臺(tái)I與第二平臺(tái)2之間采用USB連接,具體步驟如下:
[0057]S201、在第一平臺(tái)I中向第二平臺(tái)2發(fā)送連接請(qǐng)求,在第二平臺(tái)中2監(jiān)聽(tīng)所述連接請(qǐng)求并與第一平臺(tái)I建立USB連接;
[0058]例如:第一平臺(tái)I為PC機(jī),第二平臺(tái)2為安裝了 android系統(tǒng)的手機(jī),以手機(jī)的service后臺(tái)運(yùn)行的程序作為Socket的服務(wù)器端;用于接收PC機(jī)端發(fā)來(lái)的命令,來(lái)處理數(shù)據(jù)后,把結(jié)果發(fā)給PC機(jī)。PC機(jī)作為Socket的客戶(hù)端,用于給手機(jī)發(fā)送信息;其中,手機(jī)一定要有adb模式,插上USB線時(shí)即可連接,要聯(lián)通PC機(jī)與手機(jī)的socket,需用adb forward來(lái)作下端口轉(zhuǎn)發(fā)。從PC的客戶(hù)端來(lái)啟動(dòng)手機(jī)上的service,這個(gè)辦法可以通過(guò)PC端adb命令來(lái)發(fā)一個(gè)Broastcast,手機(jī)端再寫(xiě)個(gè)接收BroastcastReceive來(lái)接收這個(gè)Broastcast,在這個(gè) BroastcastReceive 來(lái)啟動(dòng) service。
[0059]S202、在所述第一平臺(tái)I中獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;
[0060]S203、將所述數(shù)據(jù)包傳送至所述第二平臺(tái)2 ;
[0061]S204、在所述第二平臺(tái)2中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)2的剪切板中原有的數(shù)據(jù)信息。
[0062]如圖4所示,在本發(fā)明第一產(chǎn)品實(shí)施例提供的一種跨平臺(tái)同步剪切板的系統(tǒng)的方框圖中,該系統(tǒng)用于同步所述第一平臺(tái)I與所述第二平臺(tái)2的剪切板中的數(shù)據(jù)信息,需保證第一平臺(tái)與第二平臺(tái)之間在物理層上可實(shí)現(xiàn)連接。
[0063]所述第一平臺(tái)I包括用于向第二平臺(tái)2發(fā)送連接請(qǐng)求的客戶(hù)端11、用于獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息的剪切板獲取模塊12、用于根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包的轉(zhuǎn)化模塊13 ;其中,剪切板獲取模塊12可以編程實(shí)現(xiàn),也可以單獨(dú)作為一個(gè)裝置獨(dú)立存在;例如,第一平臺(tái)為PC機(jī),那么該P(yáng)C機(jī)必須存在一個(gè)模塊可以監(jiān)控并獲取剪切板中的數(shù)據(jù)信息。
[0064]所述第二平臺(tái)2包括用于監(jiān)聽(tīng)所述連接請(qǐng)求并與所述客戶(hù)端11連接的服務(wù)端21、用于將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)2的剪切板中原有的數(shù)據(jù)信息的剪切板同步模塊22、用于根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息的解析模塊23 ;其中,剪切板同步模塊22可以編程實(shí)現(xiàn),也可以單獨(dú)作為一個(gè)裝置獨(dú)立存在;例如,第二平臺(tái)為手機(jī),那么該手機(jī)必須存在一個(gè)模塊可以根據(jù)Socket通信發(fā)送而來(lái)的數(shù)據(jù)信息對(duì)剪切板中的數(shù)據(jù)信息進(jìn)行同步。
[0065]所述第一平臺(tái)I還包括第一 USB模塊13,所述第二平臺(tái)2還包括第二 USB模塊23 ;第一 USB模塊13和第二 USB模塊23用于在第一平臺(tái)I與第二平臺(tái)2之間建立USB連接。
[0066]如圖5所示,在本發(fā)明第二方法實(shí)施例提供的通過(guò)藍(lán)牙連接的跨平臺(tái)同步剪切板的方法的流程圖中,該實(shí)施例在第一平臺(tái)I與第二平臺(tái)2之間采用藍(lán)牙連接,具體步驟如下:
[0067]S301、在第一平臺(tái)I中向第二平臺(tái)2發(fā)送連接請(qǐng)求,在第二平臺(tái)中2監(jiān)聽(tīng)所述連接請(qǐng)求并與第一平臺(tái)I建立藍(lán)牙連接;
[0068]藍(lán)牙Socket連接使用到的包名為:android.bluetooth.主要相關(guān)類(lèi)介紹如下:
[0069]BluetoothAdapter:本地藍(lán)牙設(shè)備的適配類(lèi),所有的藍(lán)牙操作都要通過(guò)該類(lèi)完成;
[0070]BluetoothDevice:藍(lán)牙設(shè)備類(lèi),代表了藍(lán)牙通訊過(guò)程中的遠(yuǎn)端設(shè)備;
[0071]BluetoothSocket:藍(lán)牙通訊套接字,代表了與遠(yuǎn)端設(shè)備的連接點(diǎn),使用socket本地程序可以通過(guò)inputstream和outputstream與遠(yuǎn)端程序進(jìn)行通訊;
[0072]BluetoothServerSocket:服務(wù)器通訊套接字,與 TCPServerSocket 類(lèi)似;
[0073]BluetoothClass:用于描述遠(yuǎn)端設(shè)備的類(lèi)型,特點(diǎn)等信息,通過(guò)getBluetoothClass O方法獲取代表遠(yuǎn)端設(shè)備屬性的BluetoothClass對(duì)象。
[0074]S302、在所述第一平臺(tái)I中獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;
[0075]S303、將所述數(shù)據(jù)包傳送至所述第二平臺(tái)2 ;
[0076]S304、在所述第二平臺(tái)2中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)2的剪切板中原有的數(shù)據(jù)信息。
[0077]如圖6所示,在本發(fā)明第二產(chǎn)品實(shí)施例提供的通過(guò)藍(lán)牙連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖中,該實(shí)施例不用于第一實(shí)施例之處在于,將第一藍(lán)牙模塊14替換第一USB模塊13,第二藍(lán)牙模塊24替換第二 USB模塊23 ;
[0078]第一藍(lán)牙模塊14和第二藍(lán)牙模塊24用于在第一平臺(tái)I與第二平臺(tái)2之間建立藍(lán)牙連接。
[0079]如圖7所示,在本發(fā)明第三方法實(shí)施例提供的通過(guò)W1-Fi連接的跨平臺(tái)同步剪切板的方法的流程圖中,該實(shí)施例在第一平臺(tái)I與第二平臺(tái)2之間采用W1-Fi連接,具體步驟如下:
[0080]S401:在第一平臺(tái)I中向第二平臺(tái)2發(fā)送連接請(qǐng)求,在第二平臺(tái)中2監(jiān)聽(tīng)所述連接請(qǐng)求并與第一平臺(tái)I建立W1-Fi連接;
[0081]例如:在W1-Fi局域網(wǎng)下,手機(jī)可以和電腦通過(guò)socket通信。第一平臺(tái)I為PC機(jī),第二平臺(tái)2為安裝了 android系統(tǒng)的手機(jī),即手機(jī)作為服務(wù)端,PC機(jī)使用MFC編程作為客戶(hù)端,手機(jī)建立一個(gè)ServerSocket,并獲取自己的ip地址和端口 port ;然后電腦通過(guò)socket連接手機(jī)的ip:porto[0082]再如:手機(jī)和PC機(jī)之間還可以通過(guò)搭建路由器連接。
[0083]S402、在所述第一平臺(tái)I中獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;
[0084]S403、將所述數(shù)據(jù)包傳送至所述第二平臺(tái)2 ;
[0085]S404、在所述第二平臺(tái)2中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)2的剪切板中原有的數(shù)據(jù)信息。
[0086]如圖8所示,在本發(fā)明第三產(chǎn)品實(shí)施例提供的通過(guò)W1-Fi連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖中,該實(shí)施例不用于第一實(shí)施例之處在于,將第一 W1-Fi模塊15替換第一 USB模塊13,第二 W1-Fi模塊25替換第二 USB模塊23 ;
[0087]第一 W1-Fi模塊15和第二 W1-Fi模塊25用于在第一平臺(tái)I與第二平臺(tái)2之間建立W1-Fi連接。
[0088]如圖9所示,在本發(fā)明第四方法實(shí)施例提供的通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接的跨平臺(tái)同步剪切板的方法的流程圖中,該實(shí)施例在第一平臺(tái)I與第二平臺(tái)2之間采用移動(dòng)通信網(wǎng)絡(luò)連接,具體步驟如下:
[0089]S501:設(shè)置遠(yuǎn)程服務(wù)器3,遠(yuǎn)程服務(wù)器3與第一平臺(tái)I和第二平臺(tái)2通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接,在第一平臺(tái)I中向第二平臺(tái)2發(fā)送連接請(qǐng)求,在第二平臺(tái)中2監(jiān)聽(tīng)所述連接請(qǐng)求并與第一平臺(tái)I建立移動(dòng)通信網(wǎng)絡(luò)連接;由于第一平臺(tái)I與第二平臺(tái)需要定向連結(jié),所以需要預(yù)先架設(shè)一遠(yuǎn)程服務(wù)器3,通過(guò)第一平臺(tái)I和第二平臺(tái)2在該遠(yuǎn)程服務(wù)器注冊(cè),建立第一平臺(tái)I和第二平臺(tái)2的對(duì)應(yīng)關(guān)系,即該遠(yuǎn)程服務(wù)器3記錄了第一平臺(tái)I與第二平臺(tái)2的連接關(guān)系,提供相應(yīng)地連接管理功能。
[0090]S502、在所述第一平臺(tái)I中獲取所述第一平臺(tái)I的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包;
[0091]S503、將所述數(shù)據(jù)包傳送至所述第二平臺(tái)2 ;
[0092]S504、在所述第二平臺(tái)2中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)2的剪切板中原有的數(shù)據(jù)信息。
[0093]如圖10所示,在本發(fā)明第三產(chǎn)品實(shí)施例提供的通過(guò)W1-Fi連接的跨平臺(tái)同步剪切板的系統(tǒng)的方框圖中,該實(shí)施例不用于第一實(shí)施例之處在于,將第一通信模塊16替換第一USB模塊13,第二通信模塊26替換第二 USB模塊23 ;并設(shè)置了遠(yuǎn)程服務(wù)器3 ;
[0094]遠(yuǎn)程服務(wù)器3與第一通信模塊16和第二通信模塊26通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接,從而在第一平臺(tái)I與第二平臺(tái)2之間建立移動(dòng)通信網(wǎng)絡(luò)連接。
[0095]上面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行了描述,但是本發(fā)明并不局限于上述的【具體實(shí)施方式】,上述的【具體實(shí)施方式】?jī)H僅是示意性的,而不是限制性的,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨和權(quán)利要求所保護(hù)的范圍情況下,還可做出很多形式,這些均屬于本發(fā)明的保護(hù)之內(nèi)。
【權(quán)利要求】
1.一種跨平臺(tái)同步剪切板的方法,包括具有第一操作系統(tǒng)的第一平臺(tái)(I)和具有第二操作系統(tǒng)的第二平臺(tái)(2),其特征在于,所述方法包括以下步驟: S1、在所述第一平臺(tái)(I)中向所述第二平臺(tái)(2)發(fā)送連接請(qǐng)求,在所述第二平臺(tái)(2)中監(jiān)聽(tīng)所述連接請(qǐng)求并與所述第一平臺(tái)(I)建立連接; S2、在所述第一平臺(tái)(I)中獲取所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包; S3、將所述數(shù)據(jù)包傳送至所述第二平臺(tái)(2); S4、在所述第二平臺(tái)(2)中接收到所述數(shù)據(jù)包后,根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息,并將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)(2)的剪切板中原有的數(shù)據(jù)信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟SI中,建立的所述連接為USB、藍(lán)牙、W1-Fi中的一種。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟SI中,設(shè)置遠(yuǎn)程服務(wù)器(3),所述遠(yuǎn)程服務(wù)器(3)與所述第一平臺(tái)(I)和第二平臺(tái)(2)通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接,從而在第一平臺(tái)(I)與第二平臺(tái)(2)之間建立移動(dòng)通信網(wǎng)絡(luò)連接。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟S2中,間歇地獲取所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟S2中,檢測(cè)所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息是否發(fā)生變化,若所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息發(fā)生變化,則獲取所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。
6.一種跨平臺(tái)同步剪切板的系統(tǒng),用于同步所述第一平臺(tái)(I)與所述第二平臺(tái)(2)的剪切板中的數(shù)據(jù)信息,其特征在于, 所述第一平臺(tái)(I)包括用于向第二平臺(tái)(2)發(fā)送連接請(qǐng)求的客戶(hù)端(11)、用于獲取所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息的剪切板獲取模塊(12)、用于根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為用于傳送的數(shù)據(jù)包的轉(zhuǎn)化模塊(13); 所述第二平臺(tái)(2)包括用于監(jiān)聽(tīng)所述連接請(qǐng)求并與所述客戶(hù)端(11)連接的服務(wù)端(21)、用于將所述數(shù)據(jù)信息覆蓋所述第二平臺(tái)(2)的剪切板中原有的數(shù)據(jù)信息的剪切板同步模塊(22)、用于根據(jù)所述第二操作系統(tǒng)解析所述數(shù)據(jù)包以得到所述數(shù)據(jù)信息的解析模塊(23); 所述客戶(hù)端(11)還用于將所述數(shù)據(jù)包傳送至所述第二平臺(tái)(2); 所述服務(wù)端(21)還用于接收所述數(shù)據(jù)包。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述第一平臺(tái)(I)還包括第一USB模塊(14)、第一藍(lán)牙模塊(15)或第一 W1-Fi模塊(16); 若所述第一平臺(tái)包括第一 USB模塊(14),則所述第二平臺(tái)(2)還包括第二 USB模塊(24);若所述第一平臺(tái)包括第一藍(lán)牙模塊(15),則所述第二平臺(tái)(2)還包括第二藍(lán)牙模塊(25);若所述第一平臺(tái)包括第二W1-Fi模塊(16),則所述第二平臺(tái)(2)還包括第二 W1-Fi模塊(26);其中,所述第一 USB模塊(14)和第二 USB模塊(24)用于在第一平臺(tái)(I)與第二平臺(tái)(2)之間建立USB連接,所述第一藍(lán)牙模塊(15)和第二藍(lán)牙模塊(25)用于在第一平臺(tái)(I)與第二平臺(tái)(2)之間建立藍(lán)牙連接,所述第一 W1-Fi模塊(16)和第二 W1-Fi模塊(26)用于在第一平臺(tái)(I)與第二平臺(tái)(2)之間建立W1-Fi連接。
8.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,該系統(tǒng)還包括遠(yuǎn)程服務(wù)器(3),所述第一平臺(tái)(I)還包括第一通信模塊(17),所述第二平臺(tái)(2)還包括第二通信模塊(27); 所述遠(yuǎn)程服務(wù)器(3)與所述第一通信模塊(17)和第二通信模塊(27)通過(guò)移動(dòng)通信網(wǎng)絡(luò)連接,從而在第一平臺(tái)(I)與第二平臺(tái)(2)之間建立移動(dòng)通信網(wǎng)絡(luò)連接。
9.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述第一平臺(tái)(I)還包括時(shí)鐘模塊(18),所述時(shí)鐘模塊(18)用于控制所述剪切板獲取模塊(12)間歇地獲取所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信 息。
10.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述第二平臺(tái)(2)還包括檢測(cè)模塊(19),所述檢測(cè)模塊(19)用于檢測(cè)所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息是否發(fā)生變化,若所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息發(fā)生變化,則控制所述剪切板獲取模塊(12)獲取所述第一平臺(tái)(I)的剪切板中的數(shù)據(jù)信息,并根據(jù)所述第一操作系統(tǒng)將所述數(shù)據(jù)信息轉(zhuǎn)化為傳送的數(shù)據(jù)包。
【文檔編號(hào)】H04B5/02GK103761154SQ201410040490
【公開(kāi)日】2014年4月30日 申請(qǐng)日期:2014年1月27日 優(yōu)先權(quán)日:2014年1月27日
【發(fā)明者】姚麗輝 申請(qǐng)人:宇龍計(jì)算機(jī)通信科技(深圳)有限公司