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