況下,本申請中的實施例及實施例中的特征可以相互任意組合。
[0055]圖1為本發(fā)明實施例的服務(wù)器側(cè)進行軟件升級的方法的流程圖,如圖1所示,本實施例的方法包括以下步驟:
[0056]步驟11、服務(wù)器向終端發(fā)送指定應(yīng)用軟件的當(dāng)前最新版本信息;
[0057]步驟12、服務(wù)器接收所述終端發(fā)送的指定應(yīng)用軟件的升級信息文件,解析所述指定應(yīng)用軟件的升級信息文件,生成包括所述終端未升級過的所有功能的升級功能信息文件,將所述升級功能信息文件發(fā)送給所述終端;
[0058]步驟13、服務(wù)器接收所述終端發(fā)送的選定的功能信息,根據(jù)所述選定的功能信息獲取對應(yīng)的升級文件,將所述升級文件打包后發(fā)送給所述終端。
[0059]圖2為本發(fā)明實施例的終端側(cè)進行軟件升級的方法的流程圖,如圖2所示,本實施例的方法包括以下步驟:
[0060]步驟21、終端接收服務(wù)器發(fā)送的指定應(yīng)用軟件的當(dāng)前最新版本信息后,檢查到所述指定應(yīng)用軟件的本地版本為非最新版本或存在未完全升級項,則向所述服務(wù)器發(fā)送所述指定應(yīng)用軟件的升級信息文件;
[0061]步驟22、終端接收所述服務(wù)器發(fā)送的升級功能信息文件,解析出所述升級功能信息文件中包括的功能信息,所述功能信息為根據(jù)所述指定應(yīng)用軟件的升級信息文件生成的包括所述終端未升級過的所有功能的信息;
[0062]步驟23、終端顯示解析出的功能信息,接收到用戶選定的功能信息后,將所述用戶選定的功能信息發(fā)送給所述服務(wù)器;
[0063]步驟24、終端接收所述服務(wù)器發(fā)送的升級文件包,對所述指定應(yīng)用軟件進行升級處理。
[0064]通過本發(fā)明實施例的方法可以解決終端使用者在應(yīng)用軟件的升級過程中不能根據(jù)流量情況控制軟件的升級內(nèi)容和服務(wù)器端差分升級包不易維護的問題。
[0065]一般地,終端應(yīng)用軟件分為兩個部分,一部分是軟件包括的文件01,另一部分是軟件對系統(tǒng)02的操作。
[0066]本實施例中,服務(wù)器把需要安裝的文件01按目錄進行管理,對每個文件,可以根據(jù)建立的時間點取出(如SVN(subvers1n,版本管理工具),可以根據(jù)合入的記錄,取出合入新更改前的文件)。每次發(fā)布版本后,對需要升級的文件進行合入,并在服務(wù)器升級文件信息表(TSl)中記錄,如圖3所示,該文件由許多條記錄組成,每條記錄有四個字段來對升級功能進行編碼,分別是版本編碼0101、功能編碼0102、文件編碼0103和執(zhí)行的腳本0104。文件編碼0103的長度可根據(jù)軟件文件的個數(shù)來確定,如文件格式小于10000個,可采用四位數(shù)字表示(0000?9999);版本編碼0101可以用軟件的外部版本號來標(biāo)識;功能編碼0102用來表示功能升級,可以使用軟件內(nèi)部版本號來區(qū)分。執(zhí)行的腳本0104部分解決是軟件對系02的操作的實現(xiàn),根據(jù)功能升級來還原或更改終端操作系統(tǒng)設(shè)置的功能,在終端升級完文件01部分后執(zhí)行。
[0067]本實施例中,終端設(shè)置有終端軟件升級信息文件03,如圖4所示,用來表示當(dāng)前終端軟件的版本信息以及升級的功能信息。終端軟件升級信息文件03由軟件版本號0301、升級功能編碼0302和是否完全升級項三部分組成。升級功能編碼0302是指當(dāng)前軟件版本的升級的功能,即多個0102編碼組成。
[0068]服務(wù)器收到終端的終端軟件升級信息文件03,并解析后,服務(wù)器返回升級功能信息文件04給終端,包括功能名稱0401、功能描述0402及相關(guān)文件的大小信息0403。
[0069]終端接收到升級功能信息文件04后,以彈出框的形式顯示給軟件用戶,每個功能前有可選擇框、升級功能、升級描述和需要的流量信息給用戶。
[0070]當(dāng)用戶根據(jù)所能承擔(dān)的流量選擇需要的功能后,終端將信息發(fā)送給服務(wù)器,服務(wù)器準(zhǔn)備好要升級的文件,打包后發(fā)送給客戶端,客戶端接收到升級包后,開始軟件的升級。軟件升級執(zhí)行完之后,更改軟件的版本號和終端軟件升級信息文件03。
[0071]下面以一具體實施例對本發(fā)明的技術(shù)方案的實施作進一步的詳細描述。圖5為本發(fā)明實施例的終端與服務(wù)器進行軟件升級的交互過程圖,如圖5所示,包括以下步驟:
[0072]步驟001、在終端設(shè)備中升級檢測模塊,定時向服務(wù)器端發(fā)起最新版本信息查詢,發(fā)送的內(nèi)容為當(dāng)前軟件的版本號。
[0073]步驟002、服務(wù)器收到新版本查詢信息時,返回當(dāng)前最新軟件的版本信息。
[0074]步驟003、終端判斷服務(wù)器最新版本號是否與本地相同,如相同,則轉(zhuǎn)步驟0004,如不相同,則轉(zhuǎn)步驟0005。
[0075]步驟004、終端查看終端軟件升級信息文件03里是否是完全升級項,如果完全升級,則轉(zhuǎn)步驟020 ;如未完全升級,則轉(zhuǎn)步驟005。
[0076]步驟005、終端發(fā)送終端的終端軟件升級信息文件03給服務(wù)器。
[0077]步驟006、服務(wù)器端解析終端軟件升級信息文件03。
[0078]步驟007、服務(wù)器生成升級功能信息文件04。
[0079]步驟008、服務(wù)器發(fā)送升級功能信息文件04給終端。
[0080]步驟009、終端接收升級功能信息文件04。
[0081]步驟010、終端解析服務(wù)器端的升級功能信息文件04。
[0082]步驟011、終端顯示給用戶選擇升級的內(nèi)容,如圖6所示。
[0083]步驟012、終端用戶選擇要升級的功能。
[0084]步驟013、終端發(fā)送用戶選擇的功能給服務(wù)器。
[0085]步驟014、服務(wù)器根據(jù)用戶選擇的功能獲取升級文件。
[0086]步驟015、服務(wù)器打包升級文件,根據(jù)升級的內(nèi)容生成更改系統(tǒng)配置的腳本文件。
[0087]步驟016、服務(wù)器將生成的升級文件給終端。
[0088]步驟017、終端接收到升級包,對應(yīng)用軟件進行升級。
[0089]步驟018、終端升級完成后,修改版本號,更改本地升級的配置文件。
[0090]步驟019、如果升級過程中出現(xiàn)問題,終端則啟動回退功能,否則轉(zhuǎn)步驟020。
[0091]步驟020、退出升級。
[0092]服務(wù)器端生成升級功能分類表的過程如下:
[0093]步驟00701、收到終端發(fā)送來的軟件升級信息文件03 ;
[0094]步驟00702、解析終端軟件升級信息文件03,得到版本號和當(dāng)前的功能號;
[0095]步驟00703、根據(jù)版本號,在軟件功能升級文件信息表找到版本號對應(yīng)的項;
[0096]步驟00704、根據(jù)功能號,在當(dāng)前版本號升級功能里查找沒有升級過的功能;
[0097]步驟00705、如果沒有找到,直接定位到下一個版本號里的第一個功能;如找到,需要找到當(dāng)前版本里面沒有升級的和比當(dāng)前版本新的所有版本里的功能。
[0098]如果當(dāng)前版本號是最新的版本,則需要將大于終端功能號的功能進行整理;如果不是最新版本號,則要對比當(dāng)前版本號新的版本號的功能進行整理;得到需要升級的文件,對升級此功能需要的文件計算其大小;將整理的信息寫入升級信息文件,發(fā)送給終端。
[0099]圖7為本發(fā)明實施例的服務(wù)器的示意圖,如圖7所示,本實施例的服務(wù)器包括:
[0100]第一模塊301,用于向終端發(fā)送指定應(yīng)用軟件的當(dāng)前最新版本信息;
[0101]第二模塊302,用于接收所述終端發(fā)送的指定應(yīng)用軟件的升級信息文件,解析所述指定應(yīng)用軟件的升級信息文件,生成包括所述終端未升級過的所有功能的升級功能信息文件,將所述升級功能信息文件發(fā)送給所述終端;
[0102]第三模塊303,用于接收所述終端發(fā)送的選定的功能信息,根據(jù)所述選定的功能信息獲取對應(yīng)的升級文件,將所述升級文件打包后發(fā)送給所述終端。
[0103]其中,所述第一模塊301,具體可以用于定期主動獲取或者被動接收所述終端發(fā)送的新版本查詢信息,向所述終端發(fā)送當(dāng)前最新應(yīng)用軟件的版本信息。
[0104]其中,所述第二模塊302,解析所述指定應(yīng)用軟件的升級信息文件,生成包括所述終端未升級過的所有功能的升級功能信息文件可以包括:所述服務(wù)器解析所述指定應(yīng)用軟件的升級信息文件,得到版本號和功能號;在軟件功能升級文件信息表中查找到所述版