一種WebApp遠(yuǎn)程調(diào)試方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本申請(qǐng)公開(kāi)了一種WebApp遠(yuǎn)程調(diào)試方法及系統(tǒng),包括待調(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè),調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。通過(guò)本申請(qǐng)?zhí)峁┑姆桨?,待調(diào)試設(shè)備如手機(jī)、平板電腦、電視機(jī)和PC機(jī)等,與調(diào)試中心之間利用WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信,即保證了調(diào)試中心對(duì)待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試,而且不需要人工通過(guò)USB線(xiàn)來(lái)連接待調(diào)試設(shè)備和調(diào)試中心,確實(shí)實(shí)現(xiàn)了對(duì)待調(diào)試設(shè)備的遠(yuǎn)程調(diào)試。更重要的是,調(diào)試中心通過(guò)與多臺(tái)待調(diào)試設(shè)備的連接,實(shí)現(xiàn)了對(duì)多臺(tái)待調(diào)試設(shè)備上的WebApp的并行調(diào)試,避免了開(kāi)發(fā)人員在各待調(diào)試設(shè)備間頻繁切換而造成的調(diào)試不便及中斷調(diào)試過(guò)程的情況,從而提高了調(diào)試的效率。
【專(zhuān)利說(shuō)明】—種WebApp遠(yuǎn)程調(diào)試方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及Web網(wǎng)絡(luò)技術(shù),尤指一種WebApp遠(yuǎn)程調(diào)試方法及系統(tǒng)。
【背景技術(shù)】
[0002]越來(lái)越多的基于Web技術(shù)如Javascript,級(jí)聯(lián)樣式表(CSS)及超文本標(biāo)記語(yǔ)言(HTML)等開(kāi)發(fā)的應(yīng)用程序(WebApp),承載和運(yùn)行在各種設(shè)備如手機(jī)、平板電腦、電視機(jī)和PC機(jī)等上。WebApp開(kāi)發(fā)者常常需要在各種設(shè)備上同時(shí)開(kāi)發(fā)同一款WebApp,這樣也就需要對(duì)運(yùn)行在這些設(shè)備上的WebApp進(jìn)行調(diào)試。
【發(fā)明內(nèi)容】
[0003]為了解決上述技術(shù)問(wèn)題,本申請(qǐng)?zhí)峁┝艘环NWebApp遠(yuǎn)程調(diào)試方法及系統(tǒng),能夠自動(dòng)地、高效地實(shí)現(xiàn)WebApp遠(yuǎn)程調(diào)試。
[0004]為了達(dá)到本申請(qǐng)目的,本申請(qǐng)?zhí)峁┮环N基于Web技術(shù)開(kāi)發(fā)的應(yīng)用程序WebApp遠(yuǎn)程調(diào)試方法,包括:待調(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè);
[0005]調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。
[0006]所述待調(diào)試設(shè)備與調(diào)試中心間,利用Web套接字WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信。
[0007]所述待調(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè)包括:
[0008]所述待調(diào)試設(shè)備上的WebApp基于所述wifi自動(dòng)尋址調(diào)試中心的調(diào)試服務(wù)器;并向調(diào)試服務(wù)器發(fā)送注冊(cè)信息。
[0009]所述調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試包括:
[0010]所述調(diào)試中心的調(diào)試控制臺(tái)通過(guò)其調(diào)試服務(wù)器上預(yù)先設(shè)置的可調(diào)試設(shè)備信息,選擇需要調(diào)試的WebApp ;
[0011]調(diào)試控制臺(tái)基于WebKit調(diào)試協(xié)議,對(duì)需要調(diào)試的待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試;
[0012]各待調(diào)試設(shè)備上的WebApp經(jīng)由調(diào)試服務(wù)器與調(diào)試控制臺(tái)之間交互調(diào)試信息以實(shí)現(xiàn)并行調(diào)試。
[0013]所述并行調(diào)試包括:
[0014]所述調(diào)試服務(wù)器路由來(lái)自調(diào)試控制臺(tái)的調(diào)試指令,將調(diào)試控制臺(tái)發(fā)出的調(diào)試指令同時(shí)路由給各需要調(diào)試的待調(diào)試設(shè)備,并同時(shí)接收來(lái)自各被調(diào)試設(shè)備返回的調(diào)試結(jié)果給調(diào)試控制臺(tái)。
[0015]本申請(qǐng)還提供一種WebApp遠(yuǎn)程調(diào)試系統(tǒng),包括一臺(tái)或一臺(tái)以上待調(diào)試設(shè)備,調(diào)試中心;其中,
[0016]待調(diào)試設(shè)備,用于基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè);
[0017]調(diào)試中心,用于并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。
[0018]所述調(diào)試中心包括調(diào)試控制臺(tái)和調(diào)試服務(wù)器,其中,
[0019]調(diào)試控制臺(tái),基于WebSocket網(wǎng)絡(luò)通信協(xié)議,經(jīng)由調(diào)試服務(wù)器與遠(yuǎn)程待調(diào)試設(shè)備中的WebApp進(jìn)行交互,用于通過(guò)調(diào)試服務(wù)器選擇需要調(diào)試的WebApp ;基于WebSocket網(wǎng)絡(luò)通信協(xié)議,向調(diào)試服務(wù)器發(fā)送調(diào)試指令;基于WebKit調(diào)試協(xié)議,對(duì)待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試;
[0020]調(diào)試服務(wù)器,用于基于WebSocket網(wǎng)絡(luò)通信協(xié)議,路由來(lái)自調(diào)試控制臺(tái)的調(diào)試指令,將調(diào)試控制臺(tái)發(fā)出的調(diào)試指令同時(shí)路由給需要調(diào)試的待調(diào)試設(shè)備,并同時(shí)接收來(lái)自各被調(diào)試設(shè)備返回的調(diào)試結(jié)果后返回給調(diào)試控制臺(tái)。
[0021]所述待測(cè)設(shè)備中的WebApp的運(yùn)行環(huán)境為基于WebKit構(gòu)建的,并在WebKit中植入遠(yuǎn)程調(diào)試的代理,該遠(yuǎn)程調(diào)試的代理作為WebSocket客戶(hù)端;
[0022]所述待調(diào)試設(shè)備,具體用于接收來(lái)自調(diào)試服務(wù)器的調(diào)試指令,對(duì)WebApp進(jìn)行調(diào)試并返回調(diào)試結(jié)果。
[0023]所述調(diào)試服務(wù)器為WebSocket服務(wù)端,所述調(diào)試控制臺(tái)為WebSocket客戶(hù)端;
[0024]所述待調(diào)試設(shè)備和調(diào)試控制臺(tái)均作為所述WebSocket服務(wù)端的WebSocket客戶(hù)端,與調(diào)試服務(wù)器相連。
[0025]所述待調(diào)試設(shè)備與調(diào)試中心間利用WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信。
[0026]本申請(qǐng)?zhí)峁┑姆桨赴ù{(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè),調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。通過(guò)本申請(qǐng)?zhí)峁┑姆桨福{(diào)試設(shè)備如手機(jī)、平板電腦、電視機(jī)和PC機(jī)等,與調(diào)試中心之間利用WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信,即保證了調(diào)試中心對(duì)待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試,而且不需要人工通過(guò)USB線(xiàn)來(lái)連接待調(diào)試設(shè)備和調(diào)試中心,確實(shí)實(shí)現(xiàn)了對(duì)待調(diào)試設(shè)備的遠(yuǎn)程調(diào)試。更重要的是,調(diào)試中心通過(guò)與多臺(tái)待調(diào)試設(shè)備的連接,實(shí)現(xiàn)了對(duì)多臺(tái)待調(diào)試設(shè)備上的WebApp的并行調(diào)試,避免了開(kāi)發(fā)人員在各待調(diào)試設(shè)備間頻繁切換而造成的調(diào)試不便及中斷調(diào)試過(guò)程的情況,從而提高了調(diào)試的效率。
[0027]本申請(qǐng)的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書(shū)中闡述,并且,部分地從說(shuō)明書(shū)中變得顯而易見(jiàn),或者通過(guò)實(shí)施本申請(qǐng)而了解。本申請(qǐng)的目的和其他優(yōu)點(diǎn)可通過(guò)在說(shuō)明書(shū)、權(quán)利要求書(shū)以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0028]附圖用來(lái)提供對(duì)本申請(qǐng)技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說(shuō)明書(shū)的一部分,與本申請(qǐng)的實(shí)施例一起用于解釋本申請(qǐng)的技術(shù)方案,并不構(gòu)成對(duì)本申請(qǐng)技術(shù)方案的限制。
[0029]圖1為本申請(qǐng)WebApp遠(yuǎn)程調(diào)試方法的流程示意圖;
[0030]圖2為本申請(qǐng)WebApp遠(yuǎn)程調(diào)試系統(tǒng)的組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0031 ] 為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本申請(qǐng)的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
[0032]在本申請(qǐng)一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0033]內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性?xún)?nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
[0034]計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類(lèi)型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPR0M)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤(pán)只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(pán)(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤(pán)存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪(fǎng)問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
[0035]在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0036]目前,WebApp遠(yuǎn)程調(diào)試方式大致包括以下幾種:
[0037]基于火狐操作系統(tǒng)(firefox os)的WebApp遠(yuǎn)程調(diào)試。firefox os提供了遠(yuǎn)程調(diào)試的功能,大致為:將需要調(diào)試的設(shè)備通過(guò)USB連接到裝有firefox瀏覽器的PC機(jī)(即調(diào)試中心)上,再通過(guò)firefox瀏覽器中的開(kāi)發(fā)者工具對(duì)所連接的設(shè)備中的WebApp進(jìn)行遠(yuǎn)程調(diào)試。
[0038]基于安卓操作系統(tǒng)(Android os)的WebApp遠(yuǎn)程調(diào)試。Android版本的Chrome瀏覽器提供了遠(yuǎn)程調(diào)試功能,大致為:將需要調(diào)試的設(shè)備通過(guò)USB連接到裝有Chrome瀏覽器的PC機(jī)(即調(diào)試中心)上,再通過(guò)Chrome瀏覽器中的開(kāi)發(fā)者工具對(duì)Android設(shè)備上Chrome瀏覽器中運(yùn)行的WebApp進(jìn)行遠(yuǎn)程調(diào)試。
[0039]基于蘋(píng)果操作系統(tǒng)(1S)的WebApp遠(yuǎn)程調(diào)試。1S設(shè)備上的Safari瀏覽器提供了遠(yuǎn)程調(diào)試功能,大致為:將需要調(diào)試的設(shè)備通過(guò)USB連接到裝有Safari瀏覽器的PC機(jī)(即調(diào)試中心)上,再通過(guò)Safari瀏覽器中的開(kāi)發(fā)者工具對(duì)1S設(shè)備上Safari瀏覽器中運(yùn)行的WebApp進(jìn)行遠(yuǎn)程調(diào)試。
[0040]在目前的WebApp遠(yuǎn)程調(diào)試方式中,一方面,無(wú)論是基于firefox os,或是基于android os,還是基于1S的WebApp遠(yuǎn)程調(diào)試,都需要人工通過(guò)USB線(xiàn)來(lái)連接待調(diào)試設(shè)備和調(diào)試中心,這樣,限制了調(diào)試中心和待調(diào)試設(shè)備間的物理距離,而且造成了對(duì)某些待調(diào)試設(shè)備(如電視機(jī))的調(diào)試的不方便。另一方面,現(xiàn)有WebApp調(diào)試方式都只能對(duì)特定的設(shè)備進(jìn)行遠(yuǎn)程調(diào)試,即只能在特定時(shí)刻選擇特定的設(shè)備進(jìn)行單一調(diào)試。這樣,當(dāng)開(kāi)發(fā)人員需要同時(shí)調(diào)試多臺(tái)設(shè)備時(shí),需要在各待調(diào)試設(shè)備間頻繁切換,造成了不便地同時(shí)也會(huì)中斷正在進(jìn)行中的調(diào)試過(guò)程,降低了調(diào)試的效率。
[0041]圖1為本申請(qǐng)WebApp遠(yuǎn)程調(diào)試方法的流程示意圖,如圖1所示,包括:
[0042]步驟100:待調(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè)。
[0043]本申請(qǐng)中,待調(diào)試設(shè)備如手機(jī)、平板電腦、電視機(jī)和PC機(jī)等,與調(diào)試中心之間可以利用Web套接字(WebSocket)網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信。其中,WebSocket是HTML5的標(biāo)準(zhǔn)應(yīng)用程序接口(API),用于提供客戶(hù)端與服務(wù)端之間的雙向網(wǎng)絡(luò)通信能力。WebKit是運(yùn)行WebApp的開(kāi)源引擎,比如1S和Android os的WebApp的運(yùn)行環(huán)境都是基于WebKit構(gòu)建。WebKit調(diào)試協(xié)議是WebKit將內(nèi)部的調(diào)試能力定義為標(biāo)準(zhǔn)的協(xié)議,基于WebKit調(diào)試協(xié)議,外部的第三方工具如調(diào)試IDE就能對(duì)WebKit上運(yùn)行的WebApp進(jìn)行調(diào)試。
[0044]調(diào)試中心如調(diào)試集成開(kāi)發(fā)環(huán)境(IDE,integrated development environment),是開(kāi)發(fā)者用于調(diào)試WebApp的開(kāi)發(fā)工具,一般運(yùn)行在開(kāi)發(fā)者的開(kāi)發(fā)PC機(jī)上。調(diào)試中心包括調(diào)試控制臺(tái)和調(diào)試服務(wù)器,其中,調(diào)試控制臺(tái)是用于調(diào)試的控制面板,基于WebSocket網(wǎng)絡(luò)通信協(xié)議,經(jīng)由調(diào)試服務(wù)器與遠(yuǎn)程待調(diào)試設(shè)備中的WebApp進(jìn)行交互;調(diào)試服務(wù)器,用于基于WebSocket網(wǎng)絡(luò)通信協(xié)議,搭建調(diào)試控制臺(tái)與遠(yuǎn)程待調(diào)試設(shè)備中的WebApp之間的橋梁和路由,以實(shí)現(xiàn)一個(gè)調(diào)試控制臺(tái)同時(shí)與多臺(tái)待調(diào)試設(shè)備中的WebApp進(jìn)行交互。在待調(diào)試設(shè)備上的WebApp的運(yùn)行環(huán)境是基于WebKit構(gòu)建的,并在WebKit中植入遠(yuǎn)程調(diào)試的代理,該遠(yuǎn)程調(diào)試的代理作為WebSocket客戶(hù)端,與調(diào)試中心中的調(diào)試服務(wù)器相連接,并經(jīng)由調(diào)試服務(wù)器基于WebKit調(diào)試協(xié)議接收并響應(yīng)來(lái)自調(diào)試控制臺(tái)的調(diào)試指令。
[0045]其中,待調(diào)試設(shè)備上的WebApp的運(yùn)行環(huán)境是基于WebKit構(gòu)建的,并在WebKit中植入遠(yuǎn)程調(diào)試的代理可以是,在WebKit內(nèi)通過(guò)其內(nèi)置的WebSocket能力植入一個(gè)WebSocket客戶(hù)端,具體實(shí)現(xiàn)屬于本領(lǐng)域技術(shù)人員的慣用技術(shù)手段,這里不再贅述。這樣,使得待調(diào)試設(shè)備作為WebSocket客戶(hù)端,與遠(yuǎn)程的調(diào)試服務(wù)器保持通信。當(dāng)作為WebSocket客戶(hù)端的待調(diào)試設(shè)備接收到基于WebKit調(diào)試協(xié)議的指令時(shí),將指令傳入WebKit內(nèi)核,內(nèi)核處理后得到返回值,并通過(guò)該WebSocket客戶(hù)端將返回值返回給遠(yuǎn)程的調(diào)試服務(wù)器,這里對(duì)調(diào)試指令的處理并不是不發(fā)明保護(hù)的內(nèi)容,可以采用現(xiàn)有公知的方法實(shí)現(xiàn)。這里強(qiáng)調(diào)的是,待調(diào)試設(shè)備作為WebSocket客戶(hù)端,通過(guò)WebScket服務(wù)器與調(diào)試控制臺(tái)進(jìn)行調(diào)試信息的交互,以完成對(duì)WebApp的調(diào)試。
[0046]本步驟包括:當(dāng)需要進(jìn)行調(diào)試而啟動(dòng)調(diào)試中心時(shí),即在PC端啟動(dòng)調(diào)試IDE(包括調(diào)試服務(wù)器和調(diào)試控制臺(tái)),待調(diào)試設(shè)備上的WebApp會(huì)基于wifi自動(dòng)尋址調(diào)試中心的調(diào)試服務(wù)器;并向調(diào)試服務(wù)器發(fā)送注冊(cè)信息。其中,自動(dòng)尋址及注冊(cè)的具體實(shí)現(xiàn)屬于本領(lǐng)域技術(shù)人員的慣用技術(shù)手段,并不用于限定本發(fā)明的保護(hù)范圍,這里不再贅述。本步驟中,由于待調(diào)試設(shè)備上的WebApp與調(diào)試中心之間通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信,確實(shí)實(shí)現(xiàn)了遠(yuǎn)程調(diào)試,也實(shí)現(xiàn)了一臺(tái)調(diào)試IDE同時(shí)支持對(duì)多臺(tái)待調(diào)試設(shè)備的WebApp的調(diào)試。
[0047]步驟101:調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。
[0048]調(diào)試控制臺(tái)通過(guò)調(diào)試服務(wù)器上預(yù)先設(shè)置的可調(diào)試設(shè)備信息(其中包括哪些設(shè)備是待調(diào)試設(shè)備,哪些待調(diào)試設(shè)備的WebApp是需要調(diào)試的等),選擇需要調(diào)試的WebApp ;調(diào)試控制臺(tái)基于WebKit調(diào)試協(xié)議,對(duì)需要調(diào)試的待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試;多臺(tái)待調(diào)試設(shè)備上的WebApp經(jīng)由調(diào)試服務(wù)器與調(diào)試控制臺(tái)之間交互調(diào)試信息,實(shí)現(xiàn)并行調(diào)試。而且,調(diào)試控制臺(tái)通過(guò)設(shè)置調(diào)試對(duì)象即哪些待調(diào)試設(shè)備,可以隨意選擇或切換對(duì)已連接待調(diào)試設(shè)備中的WebApp進(jìn)行調(diào)試。
[0049]其中,并行調(diào)試的實(shí)現(xiàn)具體包括:調(diào)試服務(wù)器路由來(lái)自調(diào)試控制臺(tái)的調(diào)試指令,將調(diào)試控制臺(tái)發(fā)出的調(diào)試指令同時(shí)路由給多臺(tái)需要調(diào)試的設(shè)備,并同時(shí)接收來(lái)自多臺(tái)被調(diào)試設(shè)備返回的調(diào)試結(jié)果。調(diào)試服務(wù)器路由調(diào)試指令的具體實(shí)現(xiàn)屬于本領(lǐng)域技術(shù)人員的慣用技術(shù)手段,這里強(qiáng)調(diào)的是,本申請(qǐng)方法通過(guò)調(diào)試服務(wù)器及其路由功能,實(shí)現(xiàn)了對(duì)多臺(tái)待調(diào)試設(shè)備上的WebApp的并行調(diào)試,避免了開(kāi)發(fā)人員在各待調(diào)試設(shè)備間頻繁切換而造成的調(diào)試不便及中斷調(diào)試過(guò)程的情況,從而提高了調(diào)試的效率。
[0050]通過(guò)本申請(qǐng)方法可見(jiàn),待調(diào)試設(shè)備如手機(jī)、平板電腦、電視機(jī)和PC機(jī)等,與調(diào)試中心之間利用WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信,即保證了調(diào)試中心對(duì)待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試,而且不需要人工通過(guò)USB線(xiàn)來(lái)連接待調(diào)試設(shè)備和調(diào)試中心,確實(shí)實(shí)現(xiàn)了對(duì)待調(diào)試設(shè)備的遠(yuǎn)程調(diào)試。更重要的是,調(diào)試中心通過(guò)與多臺(tái)待調(diào)試設(shè)備的連接,實(shí)現(xiàn)了對(duì)多臺(tái)待調(diào)試設(shè)備上的WebApp的并行調(diào)試,避免了開(kāi)發(fā)人員在各待調(diào)試設(shè)備間頻繁切換而造成的調(diào)試不便及中斷調(diào)試過(guò)程的情況,從而提高了調(diào)試的效率。
[0051]圖2為本申請(qǐng)WebApp遠(yuǎn)程調(diào)試系統(tǒng)的組成結(jié)構(gòu)示意圖,如圖2所示,包括一臺(tái)或一臺(tái)以上待調(diào)試設(shè)備,調(diào)試中心;其中,
[0052]待調(diào)試設(shè)備,用于基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè);將調(diào)試結(jié)果返回給調(diào)試中心。在待調(diào)試設(shè)備中有待調(diào)試的WebApp,WebApp的運(yùn)行環(huán)境是基于WebKit構(gòu)建的,并在WebKit中植入遠(yuǎn)程調(diào)試的代理,該遠(yuǎn)程調(diào)試的代理作為WebSocket客戶(hù)端;
[0053]調(diào)試中心,用于并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。調(diào)試中心包括調(diào)試控制臺(tái)和調(diào)試服務(wù)器,其中,
[0054]調(diào)試控制臺(tái),用于對(duì)WebApp進(jìn)行并行調(diào)試,基于WebSocket網(wǎng)絡(luò)通信協(xié)議,經(jīng)由調(diào)試服務(wù)器與遠(yuǎn)程待調(diào)試設(shè)備中的WebApp進(jìn)行交互,即,調(diào)試控制臺(tái),用于通過(guò)調(diào)試服務(wù)器選擇需要調(diào)試的WebApp ;基于WebKit調(diào)試協(xié)議,對(duì)待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試;多臺(tái)待調(diào)試設(shè)備上的WebApp經(jīng)由調(diào)試服務(wù)器與調(diào)試控制臺(tái)之間交互調(diào)試信息。
[0055]具體地,基于WebSocket網(wǎng)絡(luò)通信協(xié)議,向調(diào)試服務(wù)器發(fā)送調(diào)試指令。
[0056]調(diào)試服務(wù)器,用于基于WebSocket網(wǎng)絡(luò)通信協(xié)議,搭建調(diào)試控制臺(tái)與遠(yuǎn)程待調(diào)試設(shè)備中的WebApp之間的橋梁和路由,即路由來(lái)自調(diào)試控制臺(tái)的調(diào)試指令,將調(diào)試控制臺(tái)發(fā)出的調(diào)試指令同時(shí)路由給多臺(tái)需要調(diào)試的設(shè)備,并同時(shí)接收來(lái)自多臺(tái)被調(diào)試設(shè)備返回的調(diào)試結(jié)果后返回給調(diào)試控制臺(tái),以實(shí)現(xiàn)一個(gè)調(diào)試控制臺(tái)同時(shí)與多臺(tái)待調(diào)試設(shè)備中的WebApp進(jìn)行交互。也即是,調(diào)試服務(wù)器作為一個(gè)WebSocket服務(wù)端,遠(yuǎn)程待調(diào)試設(shè)備和調(diào)試控制臺(tái)都作為該WebSocket服務(wù)端的WebSocket客戶(hù)端,與調(diào)試服務(wù)器相連,從而實(shí)現(xiàn)彼此間的通?目。
[0057]待調(diào)試設(shè)備,具體用于接收來(lái)自調(diào)試服務(wù)器的調(diào)試指令,對(duì)WebApp進(jìn)行調(diào)試并返回調(diào)試結(jié)果。
[0058]待調(diào)試設(shè)備與調(diào)試中心之間利用WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信。
[0059]本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本申請(qǐng)實(shí)施例所提供的裝置的各組成部分,以及方法中的各步驟,它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上??蛇x地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn)。從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本申請(qǐng)不限制于任何特定的硬件和軟件結(jié)合。
[0060]雖然本申請(qǐng)所揭露的實(shí)施方式如上,但所述的內(nèi)容僅為便于理解本申請(qǐng)而采用的實(shí)施方式,并非用以限定本申請(qǐng)。任何本申請(qǐng)所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本申請(qǐng)所揭露的精神和范圍的前提下,可以在實(shí)施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本申請(qǐng)的專(zhuān)利保護(hù)范圍,仍須以所附的權(quán)利要求書(shū)所界定的范圍為準(zhǔn)。
【權(quán)利要求】
1.一種基于Web技術(shù)開(kāi)發(fā)的應(yīng)用程序WebApp遠(yuǎn)程調(diào)試方法,其特征在于,包括:待調(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè); 調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。
2.根據(jù)權(quán)利要求1所述的WebApp遠(yuǎn)程調(diào)試方法,其特征在于,所述待調(diào)試設(shè)備與調(diào)試中心間,利用Web套接字WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信。
3.根據(jù)權(quán)利要求2所述的WebApp遠(yuǎn)程調(diào)試方法,其特征在于,所述待調(diào)試設(shè)備基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè)包括: 所述待調(diào)試設(shè)備上的WebApp基于所述wifi自動(dòng)尋址調(diào)試中心的調(diào)試服務(wù)器;并向調(diào)試服務(wù)器發(fā)送注冊(cè)信息。
4.根據(jù)權(quán)利要求2所述的WebApp遠(yuǎn)程調(diào)試方法,其特征在于,所述調(diào)試中心并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試包括: 所述調(diào)試中心的調(diào)試控制臺(tái)通過(guò)其調(diào)試服務(wù)器上預(yù)先設(shè)置的可調(diào)試設(shè)備信息,選擇需要調(diào)試的WebApp ; 調(diào)試控制臺(tái)基于WebKit調(diào)試協(xié)議,對(duì)需要調(diào)試的待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試; 各待調(diào)試設(shè)備上的WebApp經(jīng)由調(diào)試服務(wù)器與調(diào)試控制臺(tái)之間交互調(diào)試信息以實(shí)現(xiàn)并行調(diào)試。
5.根據(jù)權(quán)利要求4所述的WebApp遠(yuǎn)程調(diào)試方法,其特征在于,所述并行調(diào)試包括: 所述調(diào)試服務(wù)器路由來(lái)自調(diào)試控制臺(tái)的調(diào)試指令,將調(diào)試控制臺(tái)發(fā)出的調(diào)試指令同時(shí)路由給各需要調(diào)試的待調(diào)試設(shè)備,并同時(shí)接收來(lái)自各被調(diào)試設(shè)備返回的調(diào)試結(jié)果給調(diào)試控制臺(tái)。
6.一種WebApp遠(yuǎn)程調(diào)試系統(tǒng),其特征在于,包括一臺(tái)或一臺(tái)以上待調(diào)試設(shè)備,調(diào)試中心;其中, 待調(diào)試設(shè)備,用于基于無(wú)線(xiàn)網(wǎng)絡(luò)自動(dòng)尋找調(diào)試中心并注冊(cè); 調(diào)試中心,用于并行對(duì)注冊(cè)的各待測(cè)設(shè)備中需要調(diào)試的WebApp進(jìn)行調(diào)試。
7.根據(jù)權(quán)利要求6所述的WebApp遠(yuǎn)程調(diào)試系統(tǒng),其特征在于,所述調(diào)試中心包括調(diào)試控制臺(tái)和調(diào)試服務(wù)器,其中, 調(diào)試控制臺(tái),基于WebSocket網(wǎng)絡(luò)通信協(xié)議,經(jīng)由調(diào)試服務(wù)器與遠(yuǎn)程待調(diào)試設(shè)備中的WebApp進(jìn)行交互,用于通過(guò)調(diào)試服務(wù)器選擇需要調(diào)試的WebApp ;基于WebSocket網(wǎng)絡(luò)通信協(xié)議,向調(diào)試服務(wù)器發(fā)送調(diào)試指令;基于WebKit調(diào)試協(xié)議,對(duì)待調(diào)試設(shè)備上的WebApp進(jìn)行調(diào)試; 調(diào)試服務(wù)器,用于基于WebSocket網(wǎng)絡(luò)通信協(xié)議,路由來(lái)自調(diào)試控制臺(tái)的調(diào)試指令,將調(diào)試控制臺(tái)發(fā)出的調(diào)試指令同時(shí)路由給需要調(diào)試的待調(diào)試設(shè)備,并同時(shí)接收來(lái)自各被調(diào)試設(shè)備返回的調(diào)試結(jié)果后返回給調(diào)試控制臺(tái)。
8.根據(jù)權(quán)利要求7所述的WebApp遠(yuǎn)程調(diào)試系統(tǒng),其特征在于,所述待測(cè)設(shè)備中的WebApp的運(yùn)行環(huán)境為基于WebKit構(gòu)建的,并在WebKit中植入遠(yuǎn)程調(diào)試的代理,該遠(yuǎn)程調(diào)試的代理作為WebSocket客戶(hù)端; 所述待調(diào)試設(shè)備,具體用于接收來(lái)自調(diào)試服務(wù)器的調(diào)試指令,對(duì)WebApp進(jìn)行調(diào)試并返回調(diào)試結(jié)果。
9.根據(jù)權(quán)利要求8所述的WebApp遠(yuǎn)程調(diào)試系統(tǒng),其特征在于,所述調(diào)試服務(wù)器為WebSocket服務(wù)端,所述調(diào)試控制臺(tái)為WebSocket客戶(hù)端; 所述待調(diào)試設(shè)備和調(diào)試控制臺(tái)均作為所述WebSocket服務(wù)端的WebSocket客戶(hù)端,與調(diào)試服務(wù)器相連。
10.根據(jù)權(quán)利要求6?9任一項(xiàng)所述的WebApp遠(yuǎn)程調(diào)試系統(tǒng),其特征在于,所述待調(diào)試設(shè)備與調(diào)試中心間利用WebSocket網(wǎng)絡(luò)通信協(xié)議和WebKit調(diào)試協(xié)議聯(lián)系,并通過(guò)Wifi無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)通信。
【文檔編號(hào)】G06F11/36GK104298591SQ201310303539
【公開(kāi)日】2015年1月21日 申請(qǐng)日期:2013年7月18日 優(yōu)先權(quán)日:2013年7月18日
【發(fā)明者】袁志俊, 禹?yè)P(yáng)帆 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司