專利名稱:一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及手機(jī)訪問網(wǎng)絡(luò)的技術(shù),特別是涉及一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法和裝置。
背景技術(shù):
隨著移動(dòng)通訊技術(shù)的發(fā)展,手機(jī)可以分別通過自身的瀏覽器和即時(shí)通訊器訪問網(wǎng)絡(luò)。這里所述通過瀏覽器訪問網(wǎng)絡(luò)通常指通過瀏覽器瀏覽網(wǎng)頁等,而即時(shí)通訊器就是指聊天工具,如QQ聊天工具,通過即時(shí)通訊器訪問網(wǎng)絡(luò)就是通過網(wǎng)絡(luò)接收或發(fā)送攜帶有用戶聊天內(nèi)容的消息,從而實(shí)現(xiàn)與好友之間的即時(shí)通訊。
手機(jī)中的瀏覽器和即時(shí)通訊器通常是獨(dú)立的,并且不能同時(shí)占有網(wǎng)絡(luò)資源。也就是說,當(dāng)需要上網(wǎng)瀏覽網(wǎng)頁時(shí),瀏覽器處理開啟狀態(tài),而即時(shí)通訊器處于關(guān)閉狀態(tài);當(dāng)需要聊天時(shí),即時(shí)通訊器處于開啟狀態(tài),而瀏覽器處于關(guān)閉狀態(tài)。
實(shí)際應(yīng)用中,用戶可能希望同時(shí)瀏覽網(wǎng)頁和聊天,需要手機(jī)中的瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)。為了達(dá)到瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的目的,目前提出一種web即時(shí)通訊的方法,其基本思想是將即時(shí)通訊器web化,即通過網(wǎng)頁進(jìn)行聊天,從而滿足上網(wǎng)和聊天的用戶需求。
但在上述的web即時(shí)通訊的方法中,當(dāng)用戶聊天時(shí),打開的網(wǎng)頁將被用來顯示聊天內(nèi)容,如果用戶需要瀏覽網(wǎng)頁,還需要打開新的網(wǎng)頁進(jìn)行瀏覽。這樣,用戶就需要在不同的網(wǎng)頁之間來回切換,體驗(yàn)效果不好。
此外,由于用戶聊天內(nèi)容顯示在網(wǎng)頁中,需要通過刷新網(wǎng)頁的方式來獲取新的聊天內(nèi)容。刷新網(wǎng)頁一般有手動(dòng)刷新和自動(dòng)刷新兩種方式,手動(dòng)刷新需要由用戶每隔一段時(shí)間后都啟動(dòng)一次對(duì)網(wǎng)頁刷新的過程,實(shí)現(xiàn)起來比較麻煩,用戶體驗(yàn)效果不好;而自動(dòng)刷新則需要手機(jī)中的瀏覽器支持腳本刷新,每隔一小段時(shí)間,由腳本自動(dòng)進(jìn)行刷新。不管是手動(dòng)刷新還是自動(dòng)刷新,都需要將整個(gè)網(wǎng)頁的內(nèi)容全部進(jìn)行更新,傳輸?shù)臄?shù)據(jù)量都比較大,需要占用較多的網(wǎng)絡(luò)資源。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法及裝置,可以在滿足手機(jī)中網(wǎng)絡(luò)資源獨(dú)占性特點(diǎn)的要求下,達(dá)到瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的目的。
為了達(dá)到上述目的,本發(fā)明提出的技術(shù)方案為一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法,預(yù)先為手機(jī)中的瀏覽器和即時(shí)通訊器設(shè)置統(tǒng)一的網(wǎng)絡(luò)通訊模塊,用于手機(jī)與網(wǎng)絡(luò)之間的通訊,該方法為a、瀏覽器和即時(shí)通訊器將產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò)通訊模塊;b、網(wǎng)絡(luò)通訊模塊將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),網(wǎng)絡(luò)再通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包。
上述方案中,預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,所述步驟a和步驟b之間進(jìn)一步包括網(wǎng)絡(luò)通訊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包作為隊(duì)列尾添加到發(fā)送隊(duì)列中;所述步驟b為bx1、網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò);bx2、網(wǎng)絡(luò)通過網(wǎng)絡(luò)通訊模塊返回針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包;bx3、網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭,再執(zhí)行步驟bx1,直至發(fā)送完隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包。
上述方案中,所述網(wǎng)絡(luò)訪問請(qǐng)求包中包括模塊標(biāo)識(shí)信息,所述模塊標(biāo)識(shí)信息用于標(biāo)識(shí)產(chǎn)生該網(wǎng)絡(luò)訪問請(qǐng)求包的模塊,所述步驟a和步驟b之間進(jìn)一步包括網(wǎng)絡(luò)通訊模塊記錄所述模塊標(biāo)識(shí)信息;
所述步驟bx2為網(wǎng)絡(luò)通訊模塊先接收從網(wǎng)絡(luò)返回的針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包,如果事先記錄的模塊標(biāo)識(shí)信息為瀏覽器標(biāo)識(shí)信息,則將返回的網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給瀏覽器;如果事先記錄的模塊標(biāo)識(shí)信息為即時(shí)通訊器,則將返回的網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器。
上述方案中,預(yù)先設(shè)置用于表示網(wǎng)絡(luò)資源是否被獨(dú)占的網(wǎng)絡(luò)狀態(tài)標(biāo)志,步驟bx1所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包之前進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài);步驟bx2所述網(wǎng)絡(luò)通訊模塊接收到網(wǎng)絡(luò)數(shù)據(jù)包之后進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
上述方案中,預(yù)先設(shè)置發(fā)送時(shí)間間隔,每經(jīng)過一個(gè)發(fā)送時(shí)間間隔時(shí),該方法進(jìn)一步包括所述網(wǎng)絡(luò)通訊模塊根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志判斷網(wǎng)絡(luò)資源是否可用,如果可用,則執(zhí)行步驟b;否則,不作處理。
上述方案中,預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,所述步驟a和步驟b之間進(jìn)一步包括網(wǎng)絡(luò)通訊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包作為隊(duì)列尾添加到發(fā)送隊(duì)列中;步驟b所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的方法具體為by1、網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò);by2、網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭,并返回步驟by1,直至發(fā)送完隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包。
上述方案中,如果針對(duì)即時(shí)通訊器返回的網(wǎng)絡(luò)數(shù)據(jù)包的包體中有標(biāo)識(shí)即時(shí)通訊器的參考字段,則步驟b所述通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包的方法為網(wǎng)絡(luò)通訊模塊先解析從網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)包頭確定網(wǎng)絡(luò)數(shù)據(jù)包的類型為文本類型,再判斷包體中是否含有參考字段,如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
上述方案中,所述即時(shí)通訊器產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包攜帶有標(biāo)識(shí)數(shù)據(jù)包序列的串行號(hào),所述網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包也攜帶有相應(yīng)的串行號(hào),則步驟b所述通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包的方法為網(wǎng)絡(luò)通訊模塊先解析從網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包,并判斷是否有串行號(hào),如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
上述方案中,預(yù)先設(shè)置用于表示網(wǎng)絡(luò)資源是否被獨(dú)占的網(wǎng)絡(luò)狀態(tài)標(biāo)志,步驟by1所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包之前進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài);步驟by1和by2之間進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
上述方案中,預(yù)先設(shè)置發(fā)送時(shí)間間隔,每經(jīng)過一個(gè)發(fā)送時(shí)間間隔時(shí),該方法進(jìn)一步包括所述網(wǎng)絡(luò)通訊模塊根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志判斷網(wǎng)絡(luò)資源是否可用,如果可用,則執(zhí)行步驟b;否則,不作處理。
上述方案中,所述即時(shí)通訊器產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包為發(fā)送用戶聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包、請(qǐng)求獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包、或者獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包。
上述方案中,如果即時(shí)通訊器產(chǎn)生請(qǐng)求獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包,并預(yù)先在即時(shí)通訊器中設(shè)置獲取聊天內(nèi)容的時(shí)間間隔,則產(chǎn)生獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包的方法為每經(jīng)過一個(gè)獲取聊天內(nèi)容的時(shí)間間隔,即時(shí)通訊器產(chǎn)生一個(gè)獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包。
上述方案中,如果即時(shí)通訊器產(chǎn)生獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包,并預(yù)先在即時(shí)通訊器中設(shè)置獲取好友列表的時(shí)間間隔,則產(chǎn)生獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包的方法為每經(jīng)過一個(gè)獲取好友列表的時(shí)間間隔,即時(shí)通訊器產(chǎn)生一個(gè)獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包。
上述方案中,所述網(wǎng)絡(luò)訪問數(shù)據(jù)包中攜帶有重發(fā)標(biāo)志,并預(yù)先設(shè)置接收返回的網(wǎng)絡(luò)數(shù)據(jù)包的超時(shí)值,如果網(wǎng)絡(luò)通訊模塊在到達(dá)超時(shí)值時(shí)未接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包,該方法進(jìn)一步包括
所述網(wǎng)絡(luò)通訊模塊將相應(yīng)的網(wǎng)絡(luò)訪問請(qǐng)求包放置在隊(duì)列尾等待重新發(fā)送。
本發(fā)明的另一發(fā)明目的是這樣實(shí)現(xiàn)的一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的裝置,所述裝置為手機(jī),至少包括瀏覽器和即時(shí)通訊器,該裝置進(jìn)一步包括網(wǎng)絡(luò)通訊模塊;其中,所述瀏覽器,用于向網(wǎng)絡(luò)通訊模塊發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包,并接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,實(shí)現(xiàn)瀏覽網(wǎng)頁;所述即時(shí)通訊器,用于向網(wǎng)絡(luò)通訊模塊發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包,并接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,實(shí)現(xiàn)聊天;所述網(wǎng)絡(luò)通訊模塊,用于來自瀏覽器和即時(shí)通訊器的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),并將返回網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)給瀏覽器和即時(shí)通訊器。
綜上所述,本發(fā)明提出一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法和裝置,由于為瀏覽器和即時(shí)通訊器設(shè)置了統(tǒng)一的網(wǎng)絡(luò)通訊模塊,可以統(tǒng)一地發(fā)送網(wǎng)絡(luò)訪問數(shù)據(jù)包,并統(tǒng)一接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,在滿足手機(jī)中網(wǎng)絡(luò)資源獨(dú)占性特點(diǎn)的要求下,達(dá)到瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的目的。
圖1是本發(fā)明的流程圖;圖2是實(shí)施例一的流程圖;圖3是實(shí)施例一中發(fā)送隊(duì)列示意圖;圖4是實(shí)施例二的流程圖;圖5是本發(fā)明手機(jī)裝置內(nèi)部基本結(jié)構(gòu)圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述。
本發(fā)明的基本思想是為手機(jī)中的瀏覽器和即時(shí)通訊器設(shè)置統(tǒng)一的網(wǎng)絡(luò)通訊模塊,所述網(wǎng)絡(luò)通訊模塊負(fù)責(zé)手機(jī)與網(wǎng)絡(luò)之間的通訊。當(dāng)瀏覽器和即時(shí)通訊器需要訪問網(wǎng)絡(luò)時(shí),瀏覽器和即時(shí)通訊器就統(tǒng)一通過網(wǎng)絡(luò)通訊模塊與網(wǎng)絡(luò)進(jìn)行交互,實(shí)現(xiàn)網(wǎng)絡(luò)訪問。
圖1是本發(fā)明的流程圖。如圖1所示,本發(fā)明實(shí)現(xiàn)瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法包括以下步驟步驟101瀏覽器和即時(shí)通訊器將產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò)通訊模塊。
步驟102網(wǎng)絡(luò)通訊模塊將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),網(wǎng)絡(luò)再通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包。
本發(fā)明中,當(dāng)瀏覽器訪問網(wǎng)絡(luò)時(shí),就是將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給某提供網(wǎng)頁的服務(wù)器,實(shí)現(xiàn)手機(jī)瀏覽網(wǎng)頁的目的;而即時(shí)通訊器訪問網(wǎng)絡(luò)時(shí),就是將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給提供聊天服務(wù)的服務(wù)器,實(shí)現(xiàn)與其他進(jìn)行聊天的目的。由于提供網(wǎng)頁的服務(wù)器和提供聊天服務(wù)的服務(wù)器都處于網(wǎng)絡(luò)側(cè),為了描述方便,本發(fā)明將分別與提供網(wǎng)頁的服務(wù)器和提供聊天服務(wù)的服務(wù)器之間的交互直接稱為與網(wǎng)絡(luò)之間的交互,即將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),網(wǎng)絡(luò)再通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包。至于網(wǎng)絡(luò)側(cè)如何實(shí)現(xiàn)與手機(jī)的交互,則屬于現(xiàn)有技術(shù),本發(fā)明不再贅述。
本發(fā)明中,網(wǎng)絡(luò)通訊模塊與網(wǎng)絡(luò)之間的交互有兩種模式一種是同步模式,一種是異步模式。
同步模式的特點(diǎn)是在發(fā)送某網(wǎng)絡(luò)訪問請(qǐng)求包后,網(wǎng)絡(luò)通訊模塊需要接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包之后,才發(fā)送下一個(gè)網(wǎng)絡(luò)訪問請(qǐng)求包。
同步模式具體實(shí)現(xiàn)方法為預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,當(dāng)接收到來自瀏覽器或即時(shí)通訊器的網(wǎng)絡(luò)訪問請(qǐng)求包時(shí),網(wǎng)絡(luò)通訊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包作為隊(duì)列尾添加到發(fā)送隊(duì)列中;此時(shí),所述步驟102具體為bx1、網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò);bx2、網(wǎng)絡(luò)通過網(wǎng)絡(luò)通訊模塊返回針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包;
由于同步模式是等到網(wǎng)絡(luò)數(shù)據(jù)包返回后,才發(fā)送下一個(gè)網(wǎng)絡(luò)訪問請(qǐng)求包,所以,網(wǎng)絡(luò)通訊模塊很容易確定返回的網(wǎng)絡(luò)數(shù)據(jù)包是屬于瀏覽器的,還是屬于即時(shí)通訊器的。比如網(wǎng)絡(luò)訪問請(qǐng)求包中包括模塊標(biāo)識(shí)信息,所述模塊標(biāo)識(shí)信息用于標(biāo)識(shí)產(chǎn)生該網(wǎng)絡(luò)訪問請(qǐng)求包的模塊。
當(dāng)接收到網(wǎng)絡(luò)訪問請(qǐng)求包時(shí),網(wǎng)絡(luò)通訊模塊就將所述模塊標(biāo)識(shí)信息記錄下來,那么,本步驟的方法具體為網(wǎng)絡(luò)通訊模塊先接收從網(wǎng)絡(luò)返回的針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包,如果事先記錄的模塊標(biāo)識(shí)信息為瀏覽器標(biāo)識(shí)信息,則將返回的網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給瀏覽器;如果事先記錄的模塊標(biāo)識(shí)信息為即時(shí)通訊器,則將返回的網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器。
實(shí)際應(yīng)用中,網(wǎng)絡(luò)訪問請(qǐng)求包中也可以不包括模塊標(biāo)識(shí)信息,只要網(wǎng)絡(luò)通訊模塊可以確定接收到的網(wǎng)絡(luò)訪問請(qǐng)求包是瀏覽器還是即時(shí)通訊器產(chǎn)生即可。比如瀏覽器和即時(shí)通訊器是通過調(diào)用函數(shù)的方式將某網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò)通訊模塊,網(wǎng)絡(luò)通訊模塊直接從調(diào)用自身的實(shí)例就可以確定接收到的網(wǎng)絡(luò)訪問請(qǐng)求包是瀏覽器還是即時(shí)通訊器產(chǎn)生如果是瀏覽器的實(shí)例調(diào)用該函數(shù),則確定該網(wǎng)絡(luò)訪問數(shù)據(jù)包由瀏覽器產(chǎn)生,返回的網(wǎng)絡(luò)數(shù)據(jù)包也應(yīng)該發(fā)送給瀏覽器;反之,則應(yīng)用發(fā)送給即時(shí)通訊器。
bx3、網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭,再執(zhí)行步驟bx1,直至發(fā)送完隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包。
異步模式的特點(diǎn)是網(wǎng)絡(luò)通訊模塊在發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求之后,不必等到返回網(wǎng)絡(luò)數(shù)據(jù)包,只要網(wǎng)絡(luò)資源可用,就立即將下一個(gè)網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送出去。
異步模式的實(shí)現(xiàn)方法為預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,當(dāng)接收到來自瀏覽器或即時(shí)通訊器的網(wǎng)絡(luò)訪問請(qǐng)求包時(shí),網(wǎng)絡(luò)通訊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包作為隊(duì)列尾添加到發(fā)送隊(duì)列中;此時(shí),步驟102所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的方法具體為by1、網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò);by2、網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭,并返回步驟by1,直至發(fā)送完隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包。
這里,只敘述了異步模式下發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的方法,而接收返回的網(wǎng)絡(luò)數(shù)據(jù)包與發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求是獨(dú)立的,需要網(wǎng)絡(luò)通訊模塊區(qū)分是發(fā)送給瀏覽器還是即時(shí)通訊器。具體實(shí)現(xiàn)時(shí),可以在即時(shí)通訊器發(fā)送的網(wǎng)絡(luò)訪問請(qǐng)求包中增加一個(gè)即時(shí)通訊器的參考字段,比如在包體的第1個(gè)~第4個(gè)字段寫入特殊的值,以標(biāo)識(shí)該網(wǎng)絡(luò)訪問請(qǐng)求數(shù)據(jù)包由即時(shí)通訊器產(chǎn)生;相應(yīng)地,返回的網(wǎng)絡(luò)數(shù)據(jù)包也可以攜帶相同的參考字段。
另外,聊天過程中發(fā)送的數(shù)據(jù)包一般是文本類型,網(wǎng)絡(luò)通訊模塊可以先判斷數(shù)據(jù)包是否為文本類型,如果不是文本類型,則直接發(fā)送給瀏覽器;如果是文本類型,才需要進(jìn)一步判斷是否包括所述參考字段。
所以,步驟102所述通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包的方法可以為網(wǎng)絡(luò)通訊模塊先解析從網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)包頭確定網(wǎng)絡(luò)數(shù)據(jù)包的類型為文本類型,再判斷包體中是否含有參考字段,如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
實(shí)際應(yīng)用中,由于聊天的過程通常是有順序的,而網(wǎng)頁則沒有順序,所以,也可以不在即時(shí)通訊器發(fā)送的網(wǎng)絡(luò)訪問請(qǐng)求包中增加參考字段,而是攜帶標(biāo)識(shí)數(shù)據(jù)包序列的串行號(hào),返回的網(wǎng)絡(luò)數(shù)據(jù)包也攜帶有相應(yīng)的串行號(hào)。這種情況下,步驟102所述通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包的方法為網(wǎng)絡(luò)通訊模塊先解析從網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包,并判斷是否有串行號(hào),如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
另外,不管是同步模式,還是異步模式,網(wǎng)絡(luò)通訊模塊都只能在網(wǎng)絡(luò)資源可用的情況下,將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送出去,或者接收返回的網(wǎng)絡(luò)數(shù)據(jù)包。實(shí)際應(yīng)用中,檢測(cè)網(wǎng)絡(luò)資源是否可用可以由手機(jī)的底層操作系統(tǒng)檢測(cè),至于如何檢測(cè)則屬于現(xiàn)有技術(shù),本發(fā)明不再詳細(xì)敘述。
為了更好地說明本發(fā)明方案,下面用實(shí)時(shí)例進(jìn)行詳細(xì)描述。
實(shí)施例一本實(shí)施例中,網(wǎng)絡(luò)通訊模塊與網(wǎng)絡(luò)之間的交互采用同步模式;預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,每接收到一個(gè)網(wǎng)絡(luò)訪問請(qǐng)求包時(shí),都將作為隊(duì)列尾添加到隊(duì)列中,其隊(duì)列如圖2所示;本實(shí)施例中,即時(shí)通訊器先產(chǎn)生兩個(gè)網(wǎng)絡(luò)訪問數(shù)據(jù)包,可以表示為IMData1和IMData2,瀏覽器再產(chǎn)生一個(gè)網(wǎng)絡(luò)訪問數(shù)據(jù)包,表示為WebData1;本實(shí)施例中,網(wǎng)絡(luò)訪問請(qǐng)求包中攜帶有模塊標(biāo)識(shí)信息,IMData1和IMData2中的模塊標(biāo)識(shí)信息為IM,表示由即時(shí)通訊器產(chǎn)生;WebData1中的模塊標(biāo)識(shí)信息為WebBrowing,表示由瀏覽器產(chǎn)生。
另外,由于手機(jī)中的網(wǎng)絡(luò)資源具有獨(dú)占性,可以預(yù)先設(shè)置用于表示網(wǎng)絡(luò)資源是否被獨(dú)占的網(wǎng)絡(luò)狀態(tài)標(biāo)志,網(wǎng)絡(luò)通訊模塊根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志就可以確定網(wǎng)絡(luò)是否可用。
圖3是本實(shí)施例的流程圖。如圖3所示,本實(shí)施例實(shí)現(xiàn)瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法包括以下步驟步驟301即時(shí)通訊器和瀏覽器將各自產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包IMData1、IMData2和WebData1發(fā)送給網(wǎng)絡(luò)通訊模塊。
步驟302網(wǎng)絡(luò)通訊模塊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包添加到發(fā)送隊(duì)列中。
在發(fā)送已有的網(wǎng)絡(luò)訪問請(qǐng)求包的過程中,如果網(wǎng)絡(luò)通訊模塊又接收到新的網(wǎng)絡(luò)訪問請(qǐng)求包,仍然將其作為隊(duì)列尾添加到發(fā)送隊(duì)列中。
步驟303網(wǎng)絡(luò)通訊模塊記錄隊(duì)列頭網(wǎng)絡(luò)訪問請(qǐng)求包中攜帶的模塊標(biāo)識(shí)信息,并將網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài)。
步驟304網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送出去。
由于本實(shí)施例采用同步模式,將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送出去以后,網(wǎng)絡(luò)通訊模塊將等待返回的網(wǎng)絡(luò)數(shù)據(jù)包。
步驟305網(wǎng)絡(luò)通訊模塊接收從網(wǎng)絡(luò)返回的針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包。
步驟306網(wǎng)絡(luò)通訊模塊確定事先記錄的模塊標(biāo)識(shí)信息為即時(shí)通訊器,并將返回的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)給即時(shí)通訊器。
步驟307網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭。
步驟308網(wǎng)絡(luò)通訊模塊將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
步驟309網(wǎng)絡(luò)通訊模塊判斷是否已經(jīng)處理完隊(duì)列中所有的網(wǎng)絡(luò)訪問數(shù)據(jù)包,如果已經(jīng)處理完,退出本流程;否則,返回步驟303。
本實(shí)施例設(shè)置了網(wǎng)絡(luò)狀態(tài)標(biāo)志,可以供手機(jī)中的其它功能模塊查詢網(wǎng)絡(luò)資源是否可用,當(dāng)然,如果沒有其他的功能模塊利用網(wǎng)絡(luò)資源,也可以不設(shè)置網(wǎng)絡(luò)狀態(tài)標(biāo)志。
本實(shí)施例中,如果發(fā)送隊(duì)列中存在網(wǎng)絡(luò)訪問請(qǐng)求包,網(wǎng)絡(luò)通訊模塊將自動(dòng)發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能。具體實(shí)現(xiàn)時(shí),可以預(yù)先設(shè)置發(fā)送時(shí)間間隔,每經(jīng)過一個(gè)發(fā)送時(shí)間間隔時(shí),網(wǎng)絡(luò)通訊模塊可以根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志判斷網(wǎng)絡(luò)資源是否可用,如果可用,發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能,即執(zhí)行步驟303;否則,不作處理。
這樣,在網(wǎng)絡(luò)通訊模塊第一次接收到網(wǎng)絡(luò)訪問請(qǐng)求包時(shí),可以在到達(dá)發(fā)送時(shí)間間隔時(shí),自動(dòng)發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能。此后,每發(fā)送一個(gè)網(wǎng)絡(luò)訪問請(qǐng)求包,網(wǎng)絡(luò)通訊模塊都將主動(dòng)檢測(cè)是否已經(jīng)發(fā)送完,如果沒有發(fā)送完,再重復(fù)發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能。
實(shí)施例二本實(shí)施例中,網(wǎng)絡(luò)通訊模塊與網(wǎng)絡(luò)之間的交互采用異步模式,并建立一個(gè)發(fā)送隊(duì)列,其隊(duì)列仍然如圖2所示;本實(shí)施例中,即時(shí)通訊器產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包中包括一個(gè)串行號(hào),返回的網(wǎng)絡(luò)數(shù)據(jù)包也攜帶有相應(yīng)的串行號(hào);另外,本實(shí)施例中,假設(shè)網(wǎng)絡(luò)通訊模塊將隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送出去之后,才接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包。
圖4是本實(shí)施例的流程圖。如圖4所示,本實(shí)施例實(shí)現(xiàn)瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法包括以下步驟步驟401~步驟402與實(shí)施例一中的步驟301~步驟302相同,此處不再贅述。
步驟403網(wǎng)絡(luò)通訊模塊記錄隊(duì)列頭網(wǎng)絡(luò)訪問請(qǐng)求包中攜帶的模塊標(biāo)識(shí)信息,并將網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài)。
步驟404網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送出去。
步驟405網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭。
步驟406網(wǎng)絡(luò)通訊模塊將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
步驟407網(wǎng)絡(luò)通訊模塊判斷出沒有處理完隊(duì)列中所有的網(wǎng)絡(luò)訪問數(shù)據(jù)包,返回步驟403。
與實(shí)施例一相似,本實(shí)施例中,也可以預(yù)先設(shè)置發(fā)送時(shí)間間隔,每經(jīng)過一個(gè)發(fā)送時(shí)間間隔時(shí),網(wǎng)絡(luò)通訊模塊可以根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志判斷網(wǎng)絡(luò)資源是否可用,如果可用,發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能,即執(zhí)行步驟403;否則,不作處理。這樣,在網(wǎng)絡(luò)通訊模塊第一次接收到網(wǎng)絡(luò)訪問請(qǐng)求包時(shí),可以在到達(dá)發(fā)送時(shí)間間隔時(shí),自動(dòng)發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能。此后,每發(fā)送一個(gè)網(wǎng)絡(luò)訪問請(qǐng)求包,網(wǎng)絡(luò)通訊模塊都將主動(dòng)檢測(cè)是否已經(jīng)發(fā)送完,如果沒有發(fā)送完,再重復(fù)發(fā)起發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的功能。
步驟408網(wǎng)絡(luò)通訊模塊接收返回的網(wǎng)絡(luò)數(shù)據(jù)包并解析。
本實(shí)施例中,為了接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,還可以在網(wǎng)絡(luò)通訊模塊中設(shè)置一個(gè)返回隊(duì)列。
當(dāng)準(zhǔn)備接收返回的網(wǎng)絡(luò)數(shù)據(jù)包時(shí),與發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包一樣,網(wǎng)絡(luò)通訊模塊還需要將網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài),并在接收之后,將網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
步驟409~步驟411網(wǎng)絡(luò)通訊根據(jù)解析的結(jié)果判斷網(wǎng)絡(luò)數(shù)據(jù)包是否有串行號(hào),如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
為了敘述方便,本實(shí)施例假設(shè)先將所有的網(wǎng)絡(luò)訪問數(shù)據(jù)包發(fā)送之后,網(wǎng)絡(luò)通訊模塊才接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包。而實(shí)際應(yīng)用中,發(fā)送網(wǎng)絡(luò)訪問數(shù)據(jù)包和接收返回的網(wǎng)絡(luò)數(shù)據(jù)包可能是交錯(cuò)進(jìn)行的。但不管是以哪種方式進(jìn)行,發(fā)送和接收都需要在網(wǎng)絡(luò)資源可用的情況下實(shí)現(xiàn),即先將網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài),再進(jìn)行發(fā)送或接收,然后將網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
不管是實(shí)施例一還是實(shí)施例二,本發(fā)明中所述的網(wǎng)絡(luò)訪問請(qǐng)求包的結(jié)構(gòu)為網(wǎng)絡(luò)地址、請(qǐng)求方法、HTTP包頭參數(shù)列表以及HTTP包體。如果是即時(shí)通訊器產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包,則網(wǎng)絡(luò)訪問請(qǐng)求包的類型還可以分為發(fā)送用戶聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包、請(qǐng)求獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包、或者獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包。
其中,如果是獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包,還可以預(yù)先在即時(shí)通訊器中設(shè)置獲取聊天內(nèi)容的時(shí)間間隔,產(chǎn)生獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包的方法為每經(jīng)過一個(gè)獲取聊天內(nèi)容的時(shí)間間隔,即時(shí)通訊器產(chǎn)生一個(gè)獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包。
如果是獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包,還可以預(yù)先在即時(shí)通訊器中設(shè)置獲取好友列表的時(shí)間間隔,則產(chǎn)生獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包的方法為每經(jīng)過一個(gè)獲取好友列表的時(shí)間間隔,即時(shí)通訊器產(chǎn)生一個(gè)獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包。
至于獲取聊天內(nèi)容的時(shí)間間隔和獲取好友列表的時(shí)間間隔可以由應(yīng)用本發(fā)明方案的用戶自行確定。
另外,實(shí)際應(yīng)用中,如果出現(xiàn)網(wǎng)絡(luò)故障,網(wǎng)絡(luò)通訊模塊可能無法接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包,如果一直等待根本無法接收到的網(wǎng)絡(luò)數(shù)據(jù)包,則可能導(dǎo)致瀏覽網(wǎng)頁或聊天業(yè)務(wù)的中斷。
為了防止網(wǎng)絡(luò)發(fā)生故障,無法接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包,可以先在網(wǎng)絡(luò)訪問數(shù)據(jù)包設(shè)置一個(gè)重發(fā)標(biāo)志,并預(yù)先設(shè)置接收網(wǎng)絡(luò)數(shù)據(jù)包的超時(shí)值。如果網(wǎng)絡(luò)通訊模塊在到達(dá)超時(shí)值時(shí)仍然未接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包,網(wǎng)絡(luò)通訊模塊就可以將相應(yīng)的網(wǎng)絡(luò)訪問請(qǐng)求包放置在隊(duì)列尾等待重新發(fā)送。
進(jìn)一步地,還可以在網(wǎng)絡(luò)訪問數(shù)據(jù)包設(shè)置一個(gè)重發(fā)次數(shù)的字段,并記錄發(fā)送該網(wǎng)絡(luò)訪問數(shù)據(jù)包的次數(shù),當(dāng)?shù)竭_(dá)重發(fā)次數(shù)時(shí),就可以丟棄該網(wǎng)絡(luò)訪問數(shù)據(jù)包,不再重新發(fā)送。
實(shí)際應(yīng)用中,為了使用戶更好地體驗(yàn),還可以為瀏覽器和即時(shí)通訊器設(shè)置統(tǒng)一的用戶界面。比如用戶先通過該用戶界面啟動(dòng)即時(shí)通訊器,輸入用戶ID號(hào)和密碼等信息,由即時(shí)通訊器產(chǎn)生網(wǎng)絡(luò)訪問請(qǐng)求包并通過網(wǎng)絡(luò)通訊模塊發(fā)送出去,實(shí)現(xiàn)聊天登錄。此外,用戶還可以在同一個(gè)用戶界面上點(diǎn)擊鏈接,實(shí)現(xiàn)網(wǎng)頁的瀏覽。
針對(duì)瀏覽器和即時(shí)通訊器訪問網(wǎng)絡(luò)的方法,本發(fā)明還提出一種手機(jī)狀態(tài)。如圖5所示,本發(fā)明提出的手機(jī)至少包括瀏覽器501、即時(shí)通訊器502和網(wǎng)絡(luò)通訊模塊503。
其中,所述瀏覽器501,用于向網(wǎng)絡(luò)通訊模塊503發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包,并接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,實(shí)現(xiàn)瀏覽網(wǎng)頁;所述即時(shí)通訊器502,用于向網(wǎng)絡(luò)通訊模塊503發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包,并接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,實(shí)現(xiàn)聊天;所述網(wǎng)絡(luò)通訊模塊503,用于來自瀏覽器501和即時(shí)通訊器502的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),并將返回網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)給瀏覽器501和即時(shí)通訊器502。
實(shí)際應(yīng)用中,為了方便用戶體驗(yàn)瀏覽器501和即時(shí)通訊器502統(tǒng)一后的效果,還需要為瀏覽器501和即時(shí)通訊器502設(shè)置統(tǒng)一的用戶界面模塊,由用戶界面模塊為用戶提供瀏覽網(wǎng)頁和聊天統(tǒng)一的界面。
應(yīng)用本發(fā)明方案,由于為瀏覽器和即時(shí)通訊器設(shè)置了統(tǒng)一的網(wǎng)絡(luò)通訊模塊,可以統(tǒng)一地發(fā)送網(wǎng)絡(luò)訪問數(shù)據(jù)包,并統(tǒng)一接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,在滿足手機(jī)中網(wǎng)絡(luò)資源獨(dú)占性特點(diǎn)的要求下,達(dá)到瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的目的,以增強(qiáng)用戶的體驗(yàn)效果。
綜上所述,以上僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法,其特征在于,預(yù)先為手機(jī)中的瀏覽器和即時(shí)通訊器設(shè)置統(tǒng)一的網(wǎng)絡(luò)通訊模塊,用于手機(jī)與網(wǎng)絡(luò)之間的通訊,該方法為a、瀏覽器和即時(shí)通訊器將產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò)通訊模塊;b、網(wǎng)絡(luò)通訊模塊將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),網(wǎng)絡(luò)再通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,所述步驟a和步驟b之間進(jìn)一步包括網(wǎng)絡(luò)通訊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包作為隊(duì)列尾添加到發(fā)送隊(duì)列中;所述步驟b為bx1、網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò);bx2、網(wǎng)絡(luò)通過網(wǎng)絡(luò)通訊模塊返回針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包;bx3、網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭,再執(zhí)行步驟bx1,直至發(fā)送完隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述網(wǎng)絡(luò)訪問請(qǐng)求包中包括模塊標(biāo)識(shí)信息,所述模塊標(biāo)識(shí)信息用于標(biāo)識(shí)產(chǎn)生該網(wǎng)絡(luò)訪問請(qǐng)求包的模塊,所述步驟a和步驟b之間進(jìn)一步包括網(wǎng)絡(luò)通訊模塊記錄所述模塊標(biāo)識(shí)信息;所述步驟bx2為網(wǎng)絡(luò)通訊模塊先接收從網(wǎng)絡(luò)返回的針對(duì)隊(duì)列頭的網(wǎng)絡(luò)數(shù)據(jù)包,如果事先記錄的模塊標(biāo)識(shí)信息為瀏覽器標(biāo)識(shí)信息,則將返回的網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給瀏覽器;如果事先記錄的模塊標(biāo)識(shí)信息為即時(shí)通訊器,則將返回的網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,預(yù)先設(shè)置用于表示網(wǎng)絡(luò)資源是否被獨(dú)占的網(wǎng)絡(luò)狀態(tài)標(biāo)志,步驟bx1所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包之前進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài);步驟bx2所述網(wǎng)絡(luò)通訊模塊接收到網(wǎng)絡(luò)數(shù)據(jù)包之后進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,預(yù)先設(shè)置發(fā)送時(shí)間間隔,每經(jīng)過一個(gè)發(fā)送時(shí)間間隔時(shí),該方法進(jìn)一步包括所述網(wǎng)絡(luò)通訊模塊根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志判斷網(wǎng)絡(luò)資源是否可用,如果可用,則執(zhí)行步驟b;否則,不作處理。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,預(yù)先在網(wǎng)絡(luò)通訊模塊中建立一個(gè)發(fā)送隊(duì)列,所述步驟a和步驟b之間進(jìn)一步包括網(wǎng)絡(luò)通訊將接收到的網(wǎng)絡(luò)訪問請(qǐng)求包作為隊(duì)列尾添加到發(fā)送隊(duì)列中;步驟b所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包的方法具體為by1、網(wǎng)絡(luò)通訊模塊將隊(duì)列頭中的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò);by2、網(wǎng)絡(luò)通訊模塊刪除隊(duì)列頭,將隊(duì)列中的下一個(gè)節(jié)點(diǎn)作為隊(duì)列頭,并返回步驟by1,直至發(fā)送完隊(duì)列中所有的網(wǎng)絡(luò)訪問請(qǐng)求包。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,如果針對(duì)即時(shí)通訊器返回的網(wǎng)絡(luò)數(shù)據(jù)包的包體中有標(biāo)識(shí)即時(shí)通訊器的參考字段,則步驟b所述通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包的方法為網(wǎng)絡(luò)通訊模塊先解析從網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)包頭確定網(wǎng)絡(luò)數(shù)據(jù)包的類型為文本類型,再判斷包體中是否含有參考字段,如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述即時(shí)通訊器產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包攜帶有標(biāo)識(shí)數(shù)據(jù)包序列的串行號(hào),所述網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包也攜帶有相應(yīng)的串行號(hào),則步驟b所述通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包的方法為網(wǎng)絡(luò)通訊模塊先解析從網(wǎng)絡(luò)返回的網(wǎng)絡(luò)數(shù)據(jù)包,并判斷是否有串行號(hào),如果有,則將所述網(wǎng)絡(luò)數(shù)據(jù)包發(fā)送給即時(shí)通訊器;否則,發(fā)送給瀏覽器。
9.根據(jù)權(quán)利要求6所述的方法,其特征在于,預(yù)先設(shè)置用于表示網(wǎng)絡(luò)資源是否被獨(dú)占的網(wǎng)絡(luò)狀態(tài)標(biāo)志,步驟by1所述發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包之前進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為忙狀態(tài);步驟by1和by2之間進(jìn)一步包括將所述網(wǎng)絡(luò)狀態(tài)標(biāo)志設(shè)置為空閑狀態(tài)。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,預(yù)先設(shè)置發(fā)送時(shí)間間隔,每經(jīng)過一個(gè)發(fā)送時(shí)間間隔時(shí),該方法進(jìn)一步包括所述網(wǎng)絡(luò)通訊模塊根據(jù)網(wǎng)絡(luò)狀態(tài)標(biāo)志判斷網(wǎng)絡(luò)資源是否可用,如果可用,則執(zhí)行步驟b;否則,不作處理。
11.根據(jù)權(quán)利要求1至10任一項(xiàng)所述的方法,其特征在于,所述即時(shí)通訊器產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包為發(fā)送用戶聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包、請(qǐng)求獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包、或者獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包。
12.根據(jù)權(quán)利要求1至10任一項(xiàng)所述的方法,其特征在于,如果即時(shí)通訊器產(chǎn)生請(qǐng)求獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包,并預(yù)先在即時(shí)通訊器中設(shè)置獲取聊天內(nèi)容的時(shí)間間隔,則產(chǎn)生獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包的方法為每經(jīng)過一個(gè)獲取聊天內(nèi)容的時(shí)間間隔,即時(shí)通訊器產(chǎn)生一個(gè)獲取聊天內(nèi)容的網(wǎng)絡(luò)訪問請(qǐng)求包。
13.根據(jù)權(quán)利要求1至10任一項(xiàng)所述的方法,其特征在于,如果即時(shí)通訊器產(chǎn)生獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包,并預(yù)先在即時(shí)通訊器中設(shè)置獲取好友列表的時(shí)間間隔,則產(chǎn)生獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包的方法為每經(jīng)過一個(gè)獲取好友列表的時(shí)間間隔,即時(shí)通訊器產(chǎn)生一個(gè)獲取好友列表的網(wǎng)絡(luò)訪問請(qǐng)求包。
14.根據(jù)權(quán)利要求2至10任一項(xiàng)所述的方法,其特征在于,所述網(wǎng)絡(luò)訪問數(shù)據(jù)包中攜帶有重發(fā)標(biāo)志,并預(yù)先設(shè)置接收返回的網(wǎng)絡(luò)數(shù)據(jù)包的超時(shí)值,如果網(wǎng)絡(luò)通訊模塊在到達(dá)超時(shí)值時(shí)未接收到返回的網(wǎng)絡(luò)數(shù)據(jù)包,該方法進(jìn)一步包括所述網(wǎng)絡(luò)通訊模塊將相應(yīng)的網(wǎng)絡(luò)訪問請(qǐng)求包放置在隊(duì)列尾等待重新發(fā)送。
15.一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的裝置,所述裝置為手機(jī),至少包括瀏覽器和即時(shí)通訊器,其特征在于,該裝置進(jìn)一步包括網(wǎng)絡(luò)通訊模塊;其中,所述瀏覽器,用于向網(wǎng)絡(luò)通訊模塊發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包,并接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,實(shí)現(xiàn)瀏覽網(wǎng)頁;所述即時(shí)通訊器,用于向網(wǎng)絡(luò)通訊模塊發(fā)送網(wǎng)絡(luò)訪問請(qǐng)求包,并接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,實(shí)現(xiàn)聊天;所述網(wǎng)絡(luò)通訊模塊,用于來自瀏覽器和即時(shí)通訊器的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),并將返回網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)給瀏覽器和即時(shí)通訊器。
全文摘要
本發(fā)明提供一種瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的方法和裝置,具體實(shí)現(xiàn)為預(yù)先為手機(jī)中的瀏覽器和即時(shí)通訊器設(shè)置統(tǒng)一的網(wǎng)絡(luò)通訊模塊,用于手機(jī)與網(wǎng)絡(luò)之間的通訊;當(dāng)需要訪問網(wǎng)絡(luò)時(shí),瀏覽器和即時(shí)通訊器將產(chǎn)生的網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò)通訊模塊;網(wǎng)絡(luò)通訊模塊將網(wǎng)絡(luò)訪問請(qǐng)求包發(fā)送給網(wǎng)絡(luò),網(wǎng)絡(luò)再通過網(wǎng)絡(luò)通訊模塊返回網(wǎng)絡(luò)數(shù)據(jù)包。應(yīng)用本發(fā)明方案,可以統(tǒng)一地發(fā)送網(wǎng)絡(luò)訪問數(shù)據(jù)包,并統(tǒng)一接收返回的網(wǎng)絡(luò)數(shù)據(jù)包,在滿足手機(jī)中網(wǎng)絡(luò)資源獨(dú)占性特點(diǎn)的要求下,達(dá)到瀏覽器和即時(shí)通訊器同時(shí)訪問網(wǎng)絡(luò)的目的。
文檔編號(hào)H04L12/56GK101075955SQ200610168300
公開日2007年11月21日 申請(qǐng)日期2006年12月25日 優(yōu)先權(quán)日2006年12月25日
發(fā)明者紀(jì)宇 申請(qǐng)人:騰訊科技(深圳)有限公司