專利名稱:一種每個(gè)軟件文件都設(shè)定版本號的自動(dòng)升級方法
技術(shù)領(lǐng)域:
本發(fā)明涉及軟件的更新升級技術(shù)領(lǐng)域,特別是涉及每個(gè)軟件文件都設(shè)定版本號的自動(dòng)升級方法。
背景技術(shù):
現(xiàn)在越來越多的軟件都希望具有自動(dòng)升級功能,用戶在使用軟件的過程中,軟件自動(dòng)通過網(wǎng)絡(luò)從指定的服務(wù)器獲得軟件最新版本的信息,并自動(dòng)下載相應(yīng)的升級文件來實(shí)現(xiàn)軟件版本的更新,免去了用戶自己上網(wǎng)檢查和下載軟件的最新版本的麻煩,這是一項(xiàng)很貼心的功能,在一定程度上增加了軟件的易用性和友好度。然而縱觀天空軟件、華軍軟件收錄的所有軟件,99%以上的軟件自動(dòng)升級功能做得都過于粗陋,只有騰訊軟件、360軟件、金山軟件等大型的軟件企業(yè),這個(gè)功能點(diǎn)做得相對完善。
圖1是傳統(tǒng)軟件升級方案,軟件每做一次升級,都要記錄這次和上次有什么不同,修改了些什么,然后將修改的部分制作成一個(gè)升級包,用戶升級時(shí),下載并運(yùn)行這個(gè)升級包即可完成軟件的升級。傳統(tǒng)升級方案的問題
1.如果用戶不是那么活躍,長期沒有升級,一直使用著較低的版本,如版本為1.0,如果目前最高版本為4. 0,這種用戶的升級則需要先升級到2. O再升級到3. 0,再升級至4. O,如果多次升級的過程中某個(gè)軟件文件都有修改,則每個(gè)差異包中都需要包含這個(gè)文件,而只有最終升級包中的那個(gè)文件是有效的,顯然導(dǎo)致了不必要的重復(fù)下載;
2.版本為1.O的用戶可能是I年前甚至2-3年輕的用戶,軟件企業(yè)不容易保存和維護(hù)這么多年前的升級包,況且軟件人才流動(dòng)性又非常大;這種升級方案,給用戶的體驗(yàn)也不好,多次升級,可能還得伴隨多次重啟系統(tǒng),這種升級方案不容易做的完善。3.傳統(tǒng)升級軟件升級的過程中,一般升級不成功會(huì)有一個(gè)回滾操作過程,升級不成功會(huì)使得用戶升級軟件的體驗(yàn)不好。
發(fā)明內(nèi)容
針對上述問題,本發(fā)明公開了一種每個(gè)軟件文件都設(shè)定版本號的自動(dòng)升級方法,該方法至少解決了上述低版本用戶升級到高版本部分升級內(nèi)容重復(fù)下載,使得下載資源浪費(fèi),軟件公司保存和維護(hù)升級包困難,以及軟件升級不成功造成用戶升級體驗(yàn)差的問題。工作原理為,始終在服務(wù)器上部署最新版的軟件文件,不管用戶當(dāng)前使用的軟件是那個(gè)版本,自動(dòng)升級程序工作的過程中,直接對比用戶使用中的軟件和最新版的軟件文件,有不同就升級,新增了哪些文件、刪除了哪些文件,哪些文件的版本號和以前不一樣了,就直接下載、更新、刪除相應(yīng)的軟件文件即可。該方法包括
步驟1:自動(dòng)升級程序從internet網(wǎng)絡(luò)web服務(wù)器上獲取軟件清單文件;
步驟2 自動(dòng)升級程序?qū)@取的軟件清單文件與本地存儲(chǔ)的軟件清單文件進(jìn)行比較,獲取差異息;
步驟3 自動(dòng)升級程序根據(jù)差異信息下載軟件文件升級包,進(jìn)行軟件升級;
其中,軟件清單文件包括各個(gè)軟件文件、其所在的目錄,并用一個(gè)字符串標(biāo)識各個(gè)軟件文件的版本號。進(jìn)一步地,軟件清單文件為xml格式。進(jìn)一步地,當(dāng)本地存儲(chǔ)的軟件清單文件缺失時(shí),自動(dòng)升級程序下載全部軟件文件。進(jìn)一步地,自動(dòng)升級程序?qū)④浖募壈螺d到臨時(shí)目錄,分析該軟件文件是否正在被占用,如果未被占用,從臨時(shí)目錄中拷貝軟件文件升級包到工作目錄,如果正在被占用停止軟件升級。進(jìn)一步地,internet網(wǎng)絡(luò)側(cè)的軟件清單文件和軟件文件升級包部署在相同的web服務(wù)器,通過清單文件的url全路徑就可以分析出軟件文件升級包的下載路徑。進(jìn)一步地,如果獲取差異信息失敗,停止軟件升級。通過上述技術(shù)方案,本發(fā)明至少具有技術(shù)效果
1.根據(jù)差異信息獲取軟件升級包進(jìn)行軟件升級,避免了重復(fù)下載相同軟件升級包,浪費(fèi)下載資源的問題,節(jié)省了軟件升級時(shí)的下載流量,并且,進(jìn)一步提高了軟件升級速度;
2.軟件企業(yè)不需要對維護(hù)很久以前的軟件升級包,只需要維護(hù)最新的軟件升級包即可,使得維護(hù)軟件升級包的操作更簡單易行,軟件升級方案可以做的更加完善,進(jìn)而提高了用戶的軟件升級體驗(yàn);
3.通過本發(fā)明提供的軟件自動(dòng)升級方法進(jìn)行軟件升級,在將軟件文件升級包拷貝到工作目錄之前的任何步驟出現(xiàn)錯(cuò)誤時(shí),軟件升級均停止,從而避免了軟件升級錯(cuò)誤,不需要回滾操作,提高了用戶的使用體驗(yàn)。
圖1是傳統(tǒng)方式的軟件升級方法流程 圖2是本發(fā)明提供的軟件自動(dòng)升級方法的第一原理示意 圖3是本發(fā)明提供的軟件自動(dòng)升級方法的第二原理示意 圖4是本發(fā)明提供的軟件自動(dòng)升級方法的流程 圖5是本發(fā)明提供的軟件自動(dòng)升級方法中軟件文件清單實(shí)例。
權(quán)利要求
1.一種每個(gè)軟件文件都設(shè)定版本號的自動(dòng)升級方法,其特征在于,該方法包括以下步驟 步驟1:自動(dòng)升級程序從internet網(wǎng)絡(luò)web服務(wù)器上獲取軟件清單文件; 步驟2 自動(dòng)升級程序?qū)@取的軟件清單文件與本地存儲(chǔ)的軟件清單文件進(jìn)行比較,獲取差異息; 步驟3 自動(dòng)升級程序根據(jù)差異信息下載軟件文件升級包,進(jìn)行軟件升級; 其中,軟件清單文件包括各個(gè)軟件文件、其所在的目錄,并用一個(gè)字符串標(biāo)識各個(gè)軟件文件的版本號。
2.如權(quán)利要求1所述的軟件自動(dòng)升級方法,其特征在于 軟件清單文件為xml格式。
3.如權(quán)利要求1所述的軟件自動(dòng)升級方法,其特征在于 當(dāng)本地存儲(chǔ)的軟件清單文件缺失時(shí),自動(dòng)升級程序下載全部軟件文件。
4.如權(quán)利要求1所述的軟件自動(dòng)升級方法,其特征在于 自動(dòng)升級程序?qū)④浖募壈螺d到臨時(shí)目錄,分析該軟件文件是否正在被占用,如果未被占用,從臨時(shí)目錄中拷貝軟件文件升級包到工作目錄,如果正在被占用停止軟件升級。
5.如權(quán)利要求1所述的軟件自動(dòng)升級方法,其特征在于 internet網(wǎng)絡(luò)側(cè)的軟件清單文件和軟件文件升級包部署在相同的web服務(wù)器,通過軟件清單文件的url全路徑就可以分析出軟件文件升級包的下載路徑。
6.如權(quán)利要求1所述的軟件自動(dòng)升級方法,其特征在于 如果獲取差異信息失敗,停止軟件升級。
全文摘要
本發(fā)明公開一種每個(gè)軟件文件都設(shè)定版本號的自動(dòng)升級方法,包括自動(dòng)升級程序從internet網(wǎng)絡(luò)web服務(wù)器上獲取軟件清單文件;自動(dòng)升級程序?qū)@取的軟件清單文件與本地存儲(chǔ)的軟件清單文件進(jìn)行比較,獲取差異信息;自動(dòng)升級程序根據(jù)差異信息下載軟件文件升級包,進(jìn)行軟件升級;軟件清單文件包括各個(gè)軟件文件、其所在的目錄,并用一個(gè)字符串標(biāo)識各個(gè)軟件文件的版本號。本發(fā)明實(shí)現(xiàn)了簡單快速升級軟件,提高軟件升級體驗(yàn)的效果。
文檔編號H04L29/08GK103049283SQ20121049222
公開日2013年4月17日 申請日期2012年11月28日 優(yōu)先權(quán)日2012年11月28日
發(fā)明者杜春輝 申請人:鎮(zhèn)江為天下信息服務(wù)有限公司