一種客戶端軟件的升級(jí)方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及客戶端軟件升級(jí)技術(shù)領(lǐng)域,特別是涉及一種客戶端軟件的升級(jí)方法和系統(tǒng)。
【背景技術(shù)】
[0002]在C/S架構(gòu)中,客戶端軟件的升級(jí)與服務(wù)器密切相關(guān)。客戶端通常包括升級(jí)模塊和應(yīng)用模塊,升級(jí)模塊存儲(chǔ)升級(jí)程序和版本號(hào),應(yīng)用模塊存儲(chǔ)應(yīng)用程序。圖1為現(xiàn)有的客戶端軟件的升級(jí)方法的流程圖。如圖1所示,該方法包括:
[0003]步驟101:升級(jí)模塊啟動(dòng)自身的升級(jí)程序,并查詢服務(wù)器存儲(chǔ)的最新版本號(hào)和升級(jí)包下載地址;
[0004]步驟102:升級(jí)模塊判斷自身存儲(chǔ)的版本號(hào)是否與最新版本號(hào)相同,是則依次執(zhí)行步驟103和106,否則,依次執(zhí)行步驟104、105、103和106 ;
[0005]步驟103:升級(jí)模塊啟動(dòng)應(yīng)用模塊的工作,然后停止升級(jí)程序的工作;
[0006]步驟104:升級(jí)模塊根據(jù)升級(jí)包下載地址,從服務(wù)器下載升級(jí)包;
[0007]步驟105:升級(jí)模塊用升級(jí)包中最新版本的應(yīng)用程序替換應(yīng)用模塊中的應(yīng)用程序,并用最新版本號(hào)替換自身存儲(chǔ)的版本號(hào);
[0008]步驟106:應(yīng)用模塊運(yùn)行應(yīng)用程序。
[0009]可見,現(xiàn)有的客戶端軟件的升級(jí)方法只涉及應(yīng)用程序的升級(jí),升級(jí)程序則一直保持不變。隨著客戶端軟件應(yīng)用程序的不斷升級(jí),其復(fù)雜程度越來越高,最初設(shè)計(jì)的升級(jí)程序有可能會(huì)滿足不了應(yīng)用程序的升級(jí)需求,這將嚴(yán)重影響該客戶端軟件的客戶體驗(yàn)和發(fā)展前旦
-5^ O
【發(fā)明內(nèi)容】
[0010]本發(fā)明所要解決的技術(shù)問題是提供一種客戶端軟件的升級(jí)方法和系統(tǒng),既能對(duì)應(yīng)用程序進(jìn)行升級(jí),又能對(duì)升級(jí)程序進(jìn)行升級(jí)。
[0011]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種客戶端軟件的升級(jí)方法,所述客戶端包括升級(jí)模塊和應(yīng)用模塊;該方法包括:
[0012]升級(jí)模塊啟動(dòng)自身的升級(jí)程序并查詢服務(wù)器存儲(chǔ)的最新版本號(hào)和升級(jí)包下載地址;
[0013]所述升級(jí)模塊判斷自身存儲(chǔ)的版本號(hào)與所述最新版本號(hào)是否相同,是則啟動(dòng)所述應(yīng)用模塊的工作,然后停止所述升級(jí)程序的工作,否則:
[0014]所述升級(jí)模塊根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載升級(jí)包;
[0015]所述升級(jí)模塊判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序,是則用所述最新版本的應(yīng)用程序替換所述應(yīng)用模塊中的應(yīng)用程序,并用所述最新版本號(hào)替換自身存儲(chǔ)的所述版本號(hào);否則:所述升級(jí)模塊啟動(dòng)所述應(yīng)用模塊的工作,然后停止所述升級(jí)程序的工作;所述應(yīng)用模塊判斷所述升級(jí)包中是否包括最新版本的升級(jí)程序,是則用所述最新版本的升級(jí)程序替換所述升級(jí)模塊中的升級(jí)程序。
[0016]本發(fā)明的有益效果是:本發(fā)明中,服務(wù)器所存儲(chǔ)的升級(jí)包既可以包括最新版本的應(yīng)用程序,又可以包括最新版本的升級(jí)程序,還可以二者兼有。當(dāng)升級(jí)包包括最新版本的應(yīng)用程序時(shí),升級(jí)模塊可用該最新版本的應(yīng)用程序來替換應(yīng)用模塊中的應(yīng)用程序,從而實(shí)現(xiàn)應(yīng)用程序的升級(jí);當(dāng)升級(jí)包中包含最新版本的升級(jí)程序時(shí),在升級(jí)模塊停止升級(jí)程序的工作后,應(yīng)用模塊可以用最新版本的升級(jí)程序替換升級(jí)模塊中的升級(jí)程序,從而實(shí)現(xiàn)升級(jí)程序的升級(jí)??梢姡景l(fā)明既能對(duì)應(yīng)用程序進(jìn)行升級(jí),又能對(duì)升級(jí)程序進(jìn)行升級(jí),從而保證了用戶體驗(yàn)的連續(xù)性,延長了客戶端軟件的生命周期,并使客戶端軟件具有更好的發(fā)展前景。
[0017]在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn):
[0018]進(jìn)一步,所述升級(jí)模塊判斷自身存儲(chǔ)的版本號(hào)與所述最新版本號(hào)不相同之后,在其判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序之前,還包括:所述升級(jí)模塊根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載強(qiáng)制升級(jí)標(biāo)志;則
[0019]所述升級(jí)模塊判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序的方法包括:所述升級(jí)模塊對(duì)所述升級(jí)包進(jìn)行校驗(yàn),判斷所述升級(jí)包是否為正確的升級(jí)包,是則判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序,否則:
[0020]所述升級(jí)模塊判斷所述強(qiáng)制升級(jí)標(biāo)志是否為強(qiáng)制升級(jí),是則提示升級(jí)包下載錯(cuò)誤,并返回啟動(dòng)自身的升級(jí)程序的步驟,否則,提示升級(jí)包下載錯(cuò)誤,停止判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序,啟動(dòng)所述應(yīng)用模塊的工作,然后停止所述升級(jí)程序的工作。
[0021]進(jìn)一步,服務(wù)器存儲(chǔ)的升級(jí)包為壓縮升級(jí)包;則所述升級(jí)模塊根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載的升級(jí)包為所述壓縮升級(jí)包;
[0022]所述升級(jí)模塊根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載所述壓縮升級(jí)包之后,在判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序之前,還包括:所述升級(jí)模塊對(duì)所述壓縮升級(jí)包進(jìn)行解壓縮,得到解壓縮的升級(jí)包;則
[0023]所述升級(jí)模塊判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序的方法為:所述升級(jí)模塊判斷所述解壓縮的升級(jí)包中是否包括最新版本的應(yīng)用程序;
[0024]所述應(yīng)用模塊判斷所述升級(jí)包中是否包括最新版本的升級(jí)程序的方法為:所述應(yīng)用模塊判斷所述解壓縮的升級(jí)包中是否包括最新版本的升級(jí)程序。
[0025]進(jìn)一步,服務(wù)器存儲(chǔ)的升級(jí)包為加密升級(jí)包;則所述升級(jí)模塊根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載的升級(jí)包為所述加密升級(jí)包;
[0026]所述升級(jí)模塊根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載所述加密升級(jí)包之后,在判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序之前,還包括:所述升級(jí)模塊對(duì)所述加密升級(jí)包進(jìn)行解密,得到解密的升級(jí)包;則
[0027]所述升級(jí)模塊判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序的方法為:所述升級(jí)模塊判斷所述解密的升級(jí)包中是否包括最新版本的應(yīng)用程序;
[0028]所述應(yīng)用模塊判斷所述升級(jí)包中是否包括最新版本的升級(jí)程序的方法為:所述應(yīng)用模塊判斷所述解密的升級(jí)包中是否包括最新版本的升級(jí)程序。
[0029]另外,本發(fā)明還提供了一種客戶端軟件的升級(jí)系統(tǒng),該系統(tǒng)包括升級(jí)模塊和應(yīng)用模塊;所述升級(jí)模塊存儲(chǔ)升級(jí)程序和版本號(hào),所述應(yīng)用模塊存儲(chǔ)應(yīng)用程序;
[0030]所述升級(jí)模塊用于,啟動(dòng)自身的升級(jí)程序并查詢服務(wù)器存儲(chǔ)的最新版本號(hào)和升級(jí)包下載地址;判斷自身存儲(chǔ)的版本號(hào)與所述最新版本號(hào)是否相同,是則啟動(dòng)所述應(yīng)用模塊的工作,然后停止所述升級(jí)程序的工作,否則:根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載升級(jí)包;判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序,是則用所述最新版本的應(yīng)用程序替換所述應(yīng)用模塊中的應(yīng)用程序,并用所述最新版本號(hào)替換自身存儲(chǔ)的所述版本號(hào);否則,啟動(dòng)所述應(yīng)用模塊的工作,然后停止所述升級(jí)程序的工作;
[0031]所述應(yīng)用模塊用于,判斷所述升級(jí)包中是否包括最新版本的升級(jí)程序,是則用所述最新版本的升級(jí)程序替換所述升級(jí)模塊中的升級(jí)程序。
[0032]進(jìn)一步,所述升級(jí)模塊還用于:根據(jù)所述升級(jí)包下載地址,從所述服務(wù)器下載強(qiáng)制升級(jí)標(biāo)志;對(duì)所述升級(jí)包進(jìn)行校驗(yàn),判斷所述升級(jí)包是否為正確的升級(jí)包,是則判斷所述升級(jí)包中是否包括最新版本的應(yīng)用程序,否則:判斷所述強(qiáng)制升級(jí)標(biāo)志是否為強(qiáng)制升級(jí),是則提示升級(jí)包