本發(fā)明涉及一種移動(dòng)通信和互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)更新方法、客戶端及服務(wù)端。
背景技術(shù):
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,打車軟件的普及,人們的打車習(xí)慣已經(jīng)被深刻地改變。在打車應(yīng)用中,每次打車時(shí)用戶都需要查看一些基礎(chǔ)數(shù)據(jù),例如,基礎(chǔ)數(shù)據(jù)可以為定價(jià)數(shù)據(jù),其中該定價(jià)數(shù)據(jù)可以包括不同的城市、不同的租賃時(shí)間以及不同的車型對(duì)應(yīng)的打車價(jià)格。再例如,基礎(chǔ)數(shù)據(jù)還可以為文案介紹,其中該文案介紹可以包括車型的界定以及對(duì)租賃時(shí)間的界定等。
在相關(guān)的現(xiàn)有技術(shù)中,每次客戶發(fā)起打車請(qǐng)求時(shí),服務(wù)器返回給客戶端的數(shù)據(jù)中都包含所有的基礎(chǔ)數(shù)據(jù)。但是,當(dāng)這些基礎(chǔ)數(shù)據(jù)沒有發(fā)生改動(dòng)時(shí),由于這些基礎(chǔ)數(shù)據(jù)的數(shù)據(jù)量較大,因此,不僅浪費(fèi)了客戶端的數(shù)據(jù)流量,而且也會(huì)導(dǎo)致客戶端的反應(yīng)時(shí)間變長(zhǎng),用戶的體驗(yàn)較差。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)以上技術(shù)不足,本發(fā)明提供了一種數(shù)據(jù)更新方法、及相應(yīng)的服務(wù)端、客戶端。本發(fā)明技術(shù)方案大大降低了客戶端和服務(wù)端的通信數(shù)據(jù)流量,也提高了客戶端的反應(yīng)速度。
本發(fā)明是這樣實(shí)現(xiàn)的:一種數(shù)據(jù)更新方法,包括:
服務(wù)端接收客戶端發(fā)來的數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端的本地?cái)?shù)據(jù)的版本號(hào);
服務(wù)端判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身存儲(chǔ)的最新數(shù)據(jù)的版本號(hào)是否相同,如果相同,服務(wù)端向客戶端發(fā)送數(shù)據(jù)未改變的通知信息;
如果不同,服務(wù)端向客戶端發(fā)送更新數(shù)據(jù)包,使得客戶端對(duì)本地?cái)?shù)據(jù)進(jìn)行更新。
進(jìn)一步地,服務(wù)端在判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身存儲(chǔ)的最新數(shù)據(jù)的版本號(hào)不同后,根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)獲取客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與自身存儲(chǔ)的最新數(shù)據(jù)進(jìn)行比對(duì),得出更新數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
進(jìn)一步地,所述數(shù)據(jù)未改變的通知信息為304狀態(tài)碼。
進(jìn)一步地,所述客戶端的本地?cái)?shù)據(jù)、服務(wù)端的最新數(shù)據(jù)包括如下項(xiàng)目?jī)?nèi)容:不同的租車方案對(duì)應(yīng)的定價(jià)信息、對(duì)租車方案的介紹信息。
本發(fā)明還公開了一種數(shù)據(jù)更新方法,包括:
客戶端向服務(wù)端發(fā)送數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端本地?cái)?shù)據(jù)的版本號(hào),使得服務(wù)端判斷客戶端本地?cái)?shù)據(jù)的版本號(hào)與服務(wù)端中最新數(shù)據(jù)的版本號(hào)是否相同;
如果相同,客戶端接收服務(wù)端發(fā)來的數(shù)據(jù)未改變的通知信息;
如果不同,客戶端接收服務(wù)端發(fā)來的更新數(shù)據(jù)包;
客戶端根據(jù)更新數(shù)據(jù)包對(duì)本地?cái)?shù)據(jù)以及本地?cái)?shù)據(jù)的版本號(hào)進(jìn)行更新。
進(jìn)一步地,服務(wù)端在判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身存儲(chǔ)的最新數(shù)據(jù)的版本號(hào)不同后,根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)獲取客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與自身存儲(chǔ)的最新數(shù)據(jù)進(jìn)行比對(duì),得出更新數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
進(jìn)一步地,所述數(shù)據(jù)未改變的通知信息為304狀態(tài)碼。
進(jìn)一步地,所述本地?cái)?shù)據(jù)、最新數(shù)據(jù)包括如下項(xiàng)目?jī)?nèi)容:不同的租車方案對(duì)應(yīng)的定價(jià)信息、對(duì)租車方案的介紹信息。
本發(fā)明還公開了一種服務(wù)端,包括:
存儲(chǔ)單元,用于存儲(chǔ)最新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào);
接收單元,用于接收客戶端發(fā)來的數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端的本地?cái)?shù)據(jù)的版本號(hào);
比對(duì)單元,用于比對(duì)客戶端的本地?cái)?shù)據(jù)的版本號(hào)和服務(wù)端中最新數(shù)據(jù)的版本號(hào)是否相同,并將判斷結(jié)果發(fā)送至處理單元;
處理單元,用于根據(jù)數(shù)據(jù)更新請(qǐng)求以及存儲(chǔ)單元中的最新數(shù)據(jù)、最新數(shù)據(jù)的版本號(hào),生成更新數(shù)據(jù)包,或者生成數(shù)據(jù)未改變的通知信息;
發(fā)送單元,用于將更新數(shù)據(jù)包或者數(shù)據(jù)未改變的通知信息發(fā)送至客戶端。
進(jìn)一步地,所述存儲(chǔ)單元還用于存儲(chǔ)客戶端的本地?cái)?shù)據(jù)及對(duì)應(yīng)的版本號(hào),所述處理單元具體用于根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)獲取存儲(chǔ)單元中客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與存儲(chǔ)單元中最新數(shù)據(jù)進(jìn)行比對(duì),得出更新數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
進(jìn)一步地,所述數(shù)據(jù)未改變的通知信息為304狀態(tài)碼。
進(jìn)一步地,所述本地?cái)?shù)據(jù)、最新數(shù)據(jù)包括如下項(xiàng)目?jī)?nèi)容:不同的租車方案對(duì)應(yīng)的定價(jià)信息、對(duì)租車方案的介紹信息。
本發(fā)明還公開了一種客戶端,包括:
存儲(chǔ)單元,用于存儲(chǔ)客戶端的本地?cái)?shù)據(jù)及本地?cái)?shù)據(jù)的版本號(hào);
發(fā)送單元,用于向服務(wù)端發(fā)送數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端本地?cái)?shù)據(jù)的版本號(hào);
接收單元,用于接收服務(wù)端發(fā)來的數(shù)據(jù)更新包或者數(shù)據(jù)未改變的通知信息;
更新單元,用于根據(jù)數(shù)據(jù)更新包對(duì)客戶端的本地?cái)?shù)據(jù)以及本地?cái)?shù)據(jù)的版本號(hào)進(jìn)行更新。
進(jìn)一步地,所述更新數(shù)據(jù)包的生成過程如下:服務(wù)端在判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身存儲(chǔ)的最新數(shù)據(jù)的版本號(hào)不同后,根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)獲取客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與自身存儲(chǔ)的最新數(shù)據(jù)進(jìn)行比對(duì),得出更新數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
進(jìn)一步地,所述數(shù)據(jù)未改變的通知信息為304狀態(tài)碼。
進(jìn)一步地,所述本地?cái)?shù)據(jù)、最新數(shù)據(jù)包括如下項(xiàng)目?jī)?nèi)容:不同的租車方案對(duì)應(yīng)的定價(jià)信息、對(duì)租車方案的介紹信息。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果如下:本發(fā)明的技術(shù)方案將基礎(chǔ)數(shù)據(jù)保存到客戶端的本地內(nèi)存上并且基礎(chǔ)數(shù)據(jù)包含與其對(duì)應(yīng)的數(shù)據(jù)版本號(hào)。當(dāng)用戶需要查看本地?cái)?shù)據(jù)是否為最新數(shù)據(jù)時(shí),只需將本地?cái)?shù)據(jù)版本號(hào)發(fā)送給服務(wù)端即可,服務(wù)端也只需判斷本地?cái)?shù)據(jù)版本號(hào)與更新數(shù)據(jù)版本號(hào)是否相同,即可判斷本地?cái)?shù)據(jù)與更新數(shù)據(jù)是否相同。若相同,則只需要發(fā)送一條通知消息至客戶端;若不同,則向客戶端僅發(fā)送更新數(shù)據(jù),而不是全部的基礎(chǔ)數(shù)據(jù)。
本發(fā)明技術(shù)方案大大降低了客戶端與服務(wù)端之間不必要的數(shù)據(jù)通信,降低了客戶端的數(shù)據(jù)流量的使用量,同時(shí)提高了客戶端和服務(wù)端的工作效率。
附圖說明
圖1為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)更新方法的流程示意圖;
圖2為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)更新方法的流程示意圖;
圖3為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)更新方法的流程示意圖;
圖4為本發(fā)明實(shí)施例中服務(wù)端的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例中客戶端的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明所要解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實(shí)施例提供的一種數(shù)據(jù)更新方法,如圖1所示,包括:
S101:服務(wù)端接收客戶端發(fā)來的數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端的本地?cái)?shù)據(jù)的版本號(hào);
S102:服務(wù)端判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身存儲(chǔ)的最新數(shù)據(jù)的版本號(hào)是否相同;若相同,進(jìn)入步驟S103,否則,進(jìn)入步驟S104;
S103:服務(wù)端向客戶端發(fā)送數(shù)據(jù)未改變的通知信息;
S104:服務(wù)端向客戶端發(fā)送更新數(shù)據(jù)包,使得客戶端對(duì)本地?cái)?shù)據(jù)進(jìn)行更新。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供一種客戶端側(cè)的數(shù)據(jù)更新方法,如圖2所示,包括:
S201:客戶端向服務(wù)端發(fā)送數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端本地?cái)?shù)據(jù)的版本號(hào),使得服務(wù)端判斷客戶端本地?cái)?shù)據(jù)的版本號(hào)與服務(wù)端中最新數(shù)據(jù)的版本號(hào)是否相同,若相同,則進(jìn)入步驟S202,否則,進(jìn)入步驟S203;
S202:客戶端接收服務(wù)端發(fā)來的數(shù)據(jù)未改變的通知信息;
S203:客戶端接收服務(wù)端發(fā)來的更新數(shù)據(jù)包,客戶端根據(jù)更新數(shù)據(jù)包對(duì)本地?cái)?shù)據(jù)以及本地?cái)?shù)據(jù)的版本號(hào)進(jìn)行更新。
本發(fā)明實(shí)施例提供的一種數(shù)據(jù)更新方法,由客戶端向服務(wù)端發(fā)送數(shù)據(jù)更新請(qǐng)求,其中攜帶客戶端的本地?cái)?shù)據(jù)的版本號(hào)。服務(wù)端將客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身數(shù)據(jù)庫(kù)中最新數(shù)據(jù)的版本號(hào)進(jìn)行對(duì)比,若一致,則說明客戶端的本地?cái)?shù)據(jù)是最新的,若不一致,則說明客戶端的本地?cái)?shù)據(jù)需要進(jìn)行更新,此時(shí),服務(wù)端向客戶端發(fā)送更新數(shù)據(jù)包,使得客戶端根據(jù)更新數(shù)據(jù)包對(duì)本地?cái)?shù)據(jù)及相應(yīng)的版本號(hào)進(jìn)行更新。
本發(fā)明技術(shù)方案采用數(shù)據(jù)版本號(hào)代替數(shù)據(jù)內(nèi)容,大大降低了客戶端與服務(wù)端之間不必要的數(shù)據(jù)通信,降低了客戶端的數(shù)據(jù)流量的使用量,同時(shí)提高了客戶端和服務(wù)端的工作效率。
為了使本領(lǐng)域技術(shù)人員能更清楚地理解本發(fā)明實(shí)施例提供的技術(shù)方案,下面通過具體的實(shí)施例,對(duì)本發(fā)明提供的一種數(shù)據(jù)更新方法進(jìn)行詳細(xì)說明,如圖3所示,該方法包括:
S301:客戶端向服務(wù)端發(fā)送數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端的本地?cái)?shù)據(jù)的版本號(hào)。
客戶端為耦合于用戶移動(dòng)終端中的應(yīng)用程序,移動(dòng)終端為手機(jī)或平板電腦等電子設(shè)備。移動(dòng)終端的內(nèi)存中加載有本地?cái)?shù)據(jù)及對(duì)應(yīng)的版本號(hào),示例性地,所述本地?cái)?shù)據(jù)包括如下項(xiàng)目?jī)?nèi)容:不同的租車方案對(duì)應(yīng)的定價(jià)信息(例如北京、豪華車型、日租:1000元/天,上海、經(jīng)濟(jì)車型、月租:5000元/月等)、對(duì)租車方案的介紹信息(例如對(duì)車型等級(jí)的界定、對(duì)租賃時(shí)間的界定)等。
作為應(yīng)用程序的客戶端,調(diào)用移動(dòng)終端內(nèi)存中的本地?cái)?shù)據(jù)的版本號(hào),并生成數(shù)據(jù)更新請(qǐng)求,并將數(shù)據(jù)更新請(qǐng)求發(fā)送至服務(wù)端,所述數(shù)據(jù)更新請(qǐng)求中攜帶有客戶端的身份標(biāo)識(shí)以及本地?cái)?shù)據(jù)的版本號(hào)。
S302:服務(wù)端判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與自身存儲(chǔ)的最新數(shù)據(jù)的版本號(hào)是否相同,若相同,進(jìn)入步驟S303,否則,進(jìn)入步驟S304。
服務(wù)端數(shù)據(jù)庫(kù)中存儲(chǔ)有以往的基礎(chǔ)數(shù)據(jù),包括已經(jīng)發(fā)送給客戶端的數(shù)據(jù)內(nèi)容以及相對(duì)應(yīng)的版本號(hào)。當(dāng)基礎(chǔ)數(shù)據(jù)有更新時(shí),例如對(duì)租車價(jià)格有調(diào)整或者車型有增加或變動(dòng)或者租賃時(shí)間有調(diào)整時(shí),服務(wù)端中的基礎(chǔ)數(shù)據(jù)內(nèi)容會(huì)更新,相應(yīng)的數(shù)據(jù)版本號(hào)也會(huì)更新。
服務(wù)端將接收到的來自客戶端的本地?cái)?shù)據(jù)的版本號(hào)與當(dāng)前的最新數(shù)據(jù)的版本號(hào)進(jìn)行比對(duì),若相同,則說明客戶端的本地?cái)?shù)據(jù)是最新的,若不同,則說明客戶端的本地?cái)?shù)據(jù)需要進(jìn)行更新。
S303:服務(wù)端生成數(shù)據(jù)未改變的通知信息,并發(fā)送至客戶端。
當(dāng)服務(wù)端判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與當(dāng)前最新數(shù)據(jù)的版本號(hào)相同時(shí),只需要通知客戶端數(shù)據(jù)未改變即可。示例性地,數(shù)據(jù)未改變的通知信息為304狀態(tài)碼。
S304:服務(wù)端生成更新數(shù)據(jù)包,并將更新數(shù)據(jù)包發(fā)送至客戶端,客戶端根據(jù)更新數(shù)據(jù)包對(duì)本地?cái)?shù)據(jù)及本地?cái)?shù)據(jù)的版本號(hào)進(jìn)行更新。
當(dāng)服務(wù)端判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)與當(dāng)前最新數(shù)據(jù)的版本號(hào)不同時(shí),服務(wù)端根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)從數(shù)據(jù)庫(kù)中獲取相應(yīng)的客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與自身存儲(chǔ)的最新數(shù)據(jù)進(jìn)行比對(duì),找出最新數(shù)據(jù)中的更新數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
服務(wù)端將更新數(shù)據(jù)包發(fā)送至客戶端,客戶端根據(jù)更新數(shù)據(jù)包對(duì)本地?cái)?shù)據(jù)的內(nèi)容以及相應(yīng)的版本號(hào)進(jìn)行更新??蛻舳烁潞蟮谋镜?cái)?shù)據(jù)、版本號(hào)與服務(wù)端中最新數(shù)據(jù)和版本號(hào)相同。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還公開了一種服務(wù)端,如圖4所示,包括:
存儲(chǔ)單元41,用于存儲(chǔ)基礎(chǔ)數(shù)據(jù),包括已經(jīng)發(fā)送給客戶端的數(shù)據(jù)內(nèi)容以及相對(duì)應(yīng)的版本號(hào)和最新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào),已經(jīng)發(fā)送給客戶端的數(shù)據(jù)內(nèi)容以及相對(duì)應(yīng)的版本號(hào)可能與最新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)相同或不同。
存儲(chǔ)單元41可通過服務(wù)器中的數(shù)據(jù)庫(kù)來實(shí)現(xiàn),實(shí)體裝置上表現(xiàn)為存儲(chǔ)器。
接收單元42,用于接收客戶端發(fā)來的數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求包括客戶端的本地?cái)?shù)據(jù)的版本號(hào)。
示例性地,所述接收單元42與發(fā)送單元45可集成為服務(wù)器中的收發(fā)模塊,通過無線電通訊網(wǎng)絡(luò)(如GSM網(wǎng)、CDMA網(wǎng))與客戶端進(jìn)行數(shù)據(jù)通信。
比對(duì)單元43,用于比對(duì)客戶端的本地?cái)?shù)據(jù)的版本號(hào)和服務(wù)端中最新數(shù)據(jù)的版本號(hào)是否相同,并將判斷結(jié)果發(fā)送至處理單元44。
通過判斷客戶端的本地?cái)?shù)據(jù)的版本號(hào)和服務(wù)端中最新數(shù)據(jù)的版本號(hào)是否相同來判斷客戶端的本地?cái)?shù)據(jù)與服務(wù)端中的最新數(shù)據(jù)的內(nèi)容是否相同。采用數(shù)據(jù)版本號(hào)來代替大量數(shù)據(jù)的傳遞,減少服務(wù)端的工作量,提高服務(wù)端的工作效率。判斷結(jié)果包括本地?cái)?shù)據(jù)版本號(hào)和更新數(shù)據(jù)版本號(hào)相同和不同。
處理單元44,用于根據(jù)數(shù)據(jù)更新請(qǐng)求以及存儲(chǔ)單元中的最新數(shù)據(jù)、最新數(shù)據(jù)的版本號(hào),生成更新數(shù)據(jù)包,或者生成數(shù)據(jù)未改變的通知信息。
所述處理單元44具體用于根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)獲取存儲(chǔ)單元41中客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與存儲(chǔ)單元41中最新數(shù)據(jù)進(jìn)行比對(duì),得到最新數(shù)據(jù)中更新的數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
發(fā)送單元45,用于將更新數(shù)據(jù)包或者數(shù)據(jù)未改變的通知信息發(fā)送至客戶端。
若客戶端中的本地?cái)?shù)據(jù)與服務(wù)端中的最新數(shù)據(jù)相同,則發(fā)送單元45向客戶端發(fā)送數(shù)據(jù)未改變的通知信息,示例性地,該通知消息為304狀態(tài)碼;若客戶端中的本地?cái)?shù)據(jù)與服務(wù)端中的最新數(shù)據(jù)不同,則發(fā)送單元45向客戶端發(fā)送更新數(shù)據(jù)包。
所述本地?cái)?shù)據(jù)與最新數(shù)據(jù)有可能相同,也可能不同,示例性地,所述本地?cái)?shù)據(jù)和最新數(shù)據(jù)包括如下項(xiàng)目?jī)?nèi)容:不同的租車方案對(duì)應(yīng)的定價(jià)信息(例如北京、豪華車型、日租:1000元/天,上海、經(jīng)濟(jì)車型、月租:5000元/月等)、對(duì)租車方案的介紹信息(例如對(duì)車型等級(jí)的界定、對(duì)租賃時(shí)間的界定)等。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供了一種客戶端,所述客戶端為耦合于手機(jī)中的應(yīng)用程序,如圖5所示,包括:
存儲(chǔ)單元51,用于存儲(chǔ)客戶端的本地?cái)?shù)據(jù)及本地?cái)?shù)據(jù)的版本號(hào)。
示例性地,存儲(chǔ)單元51為手機(jī)內(nèi)存,可以包括至少一種類型的存儲(chǔ)介質(zhì),包括卡型存儲(chǔ)器(例如SD或DX存儲(chǔ)器等等)、隨機(jī)訪問存儲(chǔ)器(RAM)等。
數(shù)據(jù)更新請(qǐng)求生成單元52,用于調(diào)用存儲(chǔ)單元51中的本地?cái)?shù)據(jù)的版本號(hào),并生成數(shù)據(jù)更新請(qǐng)求,所述數(shù)據(jù)更新請(qǐng)求攜帶有身份標(biāo)識(shí)信息和客戶端的本地?cái)?shù)據(jù)的版本號(hào)。
發(fā)送單元53,用于向服務(wù)端發(fā)送數(shù)據(jù)更新請(qǐng)求。
示例性地,所述發(fā)送單元53與接收單元54集合成手機(jī)中的收發(fā)模塊,該收發(fā)模塊通常包括一個(gè)或多個(gè)組件,其允許客戶端調(diào)用移動(dòng)終端與無線通信系統(tǒng)或網(wǎng)絡(luò)之間的無線電通信。例如收發(fā)模塊可以包括移動(dòng)通信單元、無線互聯(lián)網(wǎng)單元和短程通信單元的任意一種或任意幾種的組合。其中,
移動(dòng)通信單元將無線電信號(hào)發(fā)送到基站(例如,接入點(diǎn)、節(jié)點(diǎn)B等等)、服務(wù)端從其接收無線電信號(hào)。這樣的無線電信號(hào)可以包括語音通話信號(hào)、視頻通話信號(hào)、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類型的數(shù)據(jù)。
無線互聯(lián)網(wǎng)單元支持移動(dòng)終端的無線互聯(lián)網(wǎng)接入。該單元可以內(nèi)部或外部地耦接到移動(dòng)終端。該單元所涉及的無線互聯(lián)網(wǎng)接入技術(shù)可以包括WLAN(無線LAN)(Wi-Fi)、Wibro(無線寬帶)、Wimax(全球微波互聯(lián)接入)、HSDPA(高速下行鏈路分組接入)等等。
短程通信模塊是用于支持短程通信的模塊。短程通信技術(shù)的一些示例包括藍(lán)牙TM、射頻識(shí)別(RFID)、紅外數(shù)據(jù)協(xié)會(huì)(IrDA)、超寬帶(UWB)、紫蜂TM等等。
接收單元54,用于接收服務(wù)端發(fā)來的數(shù)據(jù)更新包或者數(shù)據(jù)未改變的通知信息。
當(dāng)存儲(chǔ)單元51中的本地?cái)?shù)據(jù)與服務(wù)端中的最新數(shù)據(jù)相同時(shí),接收服務(wù)端發(fā)來的數(shù)據(jù)未改變的通知信息,示例性地,該通知信息為304狀態(tài)碼。當(dāng)當(dāng)存儲(chǔ)單元51中的本地?cái)?shù)據(jù)與服務(wù)端中的最新數(shù)據(jù)不同時(shí),接收服務(wù)端發(fā)來的更新數(shù)據(jù)包。所述更新數(shù)據(jù)包由服務(wù)端根據(jù)客戶端的本地?cái)?shù)據(jù)的版本號(hào)獲取其中的客戶端的本地?cái)?shù)據(jù),將客戶端的本地?cái)?shù)據(jù)與最新數(shù)據(jù)進(jìn)行比對(duì),得到最新數(shù)據(jù)中更新的數(shù)據(jù),并生成更新數(shù)據(jù)包,所述更新數(shù)據(jù)包包括更新數(shù)據(jù)及最新數(shù)據(jù)的版本號(hào)。
更新單元55,用于根據(jù)數(shù)據(jù)更新包對(duì)客戶端的本地?cái)?shù)據(jù)以及本地?cái)?shù)據(jù)的版本號(hào)進(jìn)行更新。
客戶端接收到服務(wù)端發(fā)來的更新數(shù)據(jù)包后,更新單元54根據(jù)更新數(shù)據(jù)包對(duì)內(nèi)存中的本地?cái)?shù)據(jù)及相應(yīng)的版本號(hào)進(jìn)行更新,更新后,手機(jī)內(nèi)存中本地?cái)?shù)據(jù)及版本號(hào)與服務(wù)端中最新數(shù)據(jù)及版本號(hào)相同。
本發(fā)明技術(shù)方案,將數(shù)據(jù)量大且更新頻次低的基礎(chǔ)數(shù)據(jù)加載到客戶端本地,并且每次由數(shù)據(jù)版本號(hào)代替數(shù)據(jù)內(nèi)容來進(jìn)行比對(duì),當(dāng)客戶端的本地?cái)?shù)據(jù)與服務(wù)端的最新數(shù)據(jù)版本號(hào)一致時(shí),則服務(wù)端只需要向客戶端返回一條通知信息即可,只有在本地?cái)?shù)據(jù)與最新數(shù)據(jù)的版本號(hào)不一致時(shí),服務(wù)端才向客戶端反饋更新數(shù)據(jù)。這樣就大大降低了客戶端與服務(wù)端之間的數(shù)據(jù)交互量,節(jié)省了移動(dòng)終端的數(shù)據(jù)流量,并且服務(wù)端也不需要比對(duì)所有的數(shù)據(jù)內(nèi)容,而只需要比對(duì)數(shù)據(jù)版本號(hào)即可,大大提高了服務(wù)端和客戶端的運(yùn)行效率,提高了用戶的體驗(yàn)度。
在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的打車系統(tǒng)服務(wù)器中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。