本發(fā)明涉及移動(dòng)通信技術(shù)領(lǐng)域,具體的,涉及一種ota升級(jí)方法,以及應(yīng)用該方法的裝置。
背景技術(shù):
空中下載(overtheair,ota)技術(shù)是通過移動(dòng)通信的空中接口對(duì)客戶識(shí)別模塊(subscriberidentitymodule,sim)卡數(shù)據(jù)及應(yīng)用進(jìn)行遠(yuǎn)程管理的技術(shù)。ota升級(jí)是指android系統(tǒng)提供的標(biāo)準(zhǔn)軟件升級(jí)方式,可以無損失升級(jí)系統(tǒng),終端(如手機(jī)、平板電腦等)可以通過網(wǎng)絡(luò)(包括wifi、3g、4g等)自動(dòng)下載升級(jí)包、自動(dòng)升級(jí)。
現(xiàn)有的終端升級(jí)方式有利用下載差分升級(jí)包的方式進(jìn)行升級(jí),此類方案中,可以一次返回多個(gè)差分升級(jí)包到終端,終端逐個(gè)下載升級(jí)。每個(gè)差分升級(jí)包代表一次完整的升級(jí),并且每個(gè)差分升級(jí)包對(duì)應(yīng)唯一一個(gè)系統(tǒng)版本的版本號(hào)。
由于終端存儲(chǔ)空間有限,當(dāng)升級(jí)包大小大于終端剩余存儲(chǔ)空間時(shí),終端不能下載一個(gè)完整升級(jí)包到本地,往往會(huì)導(dǎo)致終端的系統(tǒng)升級(jí)失敗。用戶往往在內(nèi)存空間不足的情況下需要?jiǎng)h除終端中的其他文件后再進(jìn)行升級(jí)或直接放棄升級(jí),這種情況會(huì)給用戶帶來不愉快的體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的主要目的是提供一種防止升級(jí)包過大而導(dǎo)致升級(jí)失敗的ota升級(jí)方法。
本發(fā)明的另一目的是提供一種防止升級(jí)包過大而導(dǎo)致升級(jí)失敗的ota升級(jí)裝置。
為了實(shí)現(xiàn)上述主要目的,本發(fā)明提供的ota升級(jí)方法應(yīng)用于ota服務(wù)器,該方法包括:接收終端所發(fā)送的升級(jí)請(qǐng)求信息,根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息;若目標(biāo)系統(tǒng)版本中存在有多個(gè)升級(jí)包,則以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包,其中,多個(gè)升級(jí)包屬于同一系統(tǒng)版本;獲取終端所發(fā)送的升級(jí)結(jié)果,對(duì)升級(jí)結(jié)果進(jìn)行驗(yàn)證并向終端發(fā)送結(jié)果反饋信息。
由上述方案可見,本發(fā)明通過判斷目標(biāo)系統(tǒng)版本是否包括多個(gè)升級(jí)包,若包括多個(gè)升級(jí)包,則將目標(biāo)系統(tǒng)版本的所有升級(jí)包以預(yù)設(shè)關(guān)聯(lián)方式逐一發(fā)送至終端,使終端在存儲(chǔ)空間較小的情況下仍能夠完成較大系統(tǒng)版本的升級(jí),從而確保終端系統(tǒng)升級(jí)的成功。此外,下發(fā)的多個(gè)升級(jí)包屬于同一系統(tǒng)版本且每兩個(gè)升級(jí)包之間不存在相同的升級(jí)內(nèi)容,不會(huì)造成終端下載重復(fù)的升級(jí)內(nèi)容,造成內(nèi)存空間資源的浪費(fèi)。
進(jìn)一步的方案中,根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息,包括:根據(jù)升級(jí)請(qǐng)求信息判斷終端的剩余內(nèi)存信息;判斷終端剩余內(nèi)存的大小是否小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小,若是,根據(jù)剩余內(nèi)存信息將目標(biāo)系統(tǒng)版本的完整升級(jí)包拆解成多個(gè)預(yù)設(shè)大小的升級(jí)包。
由此可見,在獲得終端的升級(jí)請(qǐng)求信息后,根據(jù)升級(jí)請(qǐng)求信息對(duì)終端剩余內(nèi)存空間進(jìn)行判斷,根據(jù)剩余內(nèi)存的大小決定需要下發(fā)升級(jí)包的大小,若剩余空間足夠接收完整升級(jí)包并完成升級(jí),則可直接發(fā)送完整升級(jí)包,若剩余空間無法接收完整的大升級(jí)包,則將完整升級(jí)包拆解成多個(gè)小的升級(jí)包,用于下發(fā)至終端,升級(jí)包的大小可由系統(tǒng)開發(fā)人員進(jìn)行設(shè)定,也可以由服務(wù)器進(jìn)行自動(dòng)調(diào)整。
進(jìn)一步的方案中,以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包,包括:若獲取到終端所發(fā)送的前一升級(jí)包升級(jí)完成的確認(rèn)信息,則向終端發(fā)送下一升級(jí)包。
由此可見,將完整的升級(jí)包拆解成多個(gè)小升級(jí)包時(shí),為了保證終端有足夠的內(nèi)存空間進(jìn)行系統(tǒng)版本的升級(jí),需要在前一升級(jí)包完成升級(jí)后再進(jìn)行下一升級(jí)包的發(fā)送升級(jí),因此,需通過獲取終端的確認(rèn)信息進(jìn)行確認(rèn),確保升級(jí)步驟的正常運(yùn)作。
進(jìn)一步的方案中,以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包,還包括:獲取到確認(rèn)信息后,向終端發(fā)送升級(jí)包刪除指令并獲取終端所發(fā)送的刪除完成信息。
由此可見,為了確保終端有足夠的內(nèi)存空間進(jìn)行目標(biāo)系統(tǒng)版本的升級(jí),在前一升級(jí)包完成升級(jí)后,服務(wù)器在下發(fā)下一升級(jí)包前,先發(fā)送升級(jí)包刪除指令將前一升級(jí)包刪除,為下一升級(jí)包的下載騰出存儲(chǔ)空間,確保升級(jí)正常進(jìn)行。
進(jìn)一步的方案中,在以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包前,ota升級(jí)方法還包括:向終端發(fā)送升級(jí)提示信息,并獲取終端發(fā)送的升級(jí)確認(rèn)信息。
由此可見,在向終端發(fā)送目標(biāo)系統(tǒng)版本的升級(jí)包前,需先由終端確認(rèn)需要升級(jí)的目標(biāo)系統(tǒng)版本。在向終端發(fā)送的升級(jí)提示信息中包括所有可升級(jí)的系統(tǒng)版本號(hào),用戶可選擇需要的版本作為目標(biāo)系統(tǒng)版本,并向服務(wù)器確認(rèn)。
為了實(shí)現(xiàn)上述另一目的,本發(fā)明提供的ota升級(jí)裝置應(yīng)用于ota服務(wù)器,該裝置包括:請(qǐng)求處理模塊,用于接收終端所發(fā)送的升級(jí)請(qǐng)求信息,根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息;升級(jí)包處理模塊,用于若目標(biāo)系統(tǒng)版本中存在有多個(gè)升級(jí)包,則以預(yù)設(shè)關(guān)聯(lián)方式向所述終端逐一發(fā)送所有所述升級(jí)包,其中,多個(gè)所述升級(jí)包屬于同一系統(tǒng)版本;升級(jí)驗(yàn)證模塊,用于獲取終端所發(fā)送的升級(jí)結(jié)果,對(duì)升級(jí)結(jié)果進(jìn)行驗(yàn)證并向終端發(fā)送結(jié)果反饋信息。
由上述方案可見,本發(fā)明通過判斷目標(biāo)系統(tǒng)版本是否包括多個(gè)升級(jí)包,若包括多個(gè)升級(jí)包,則將目標(biāo)系統(tǒng)版本的所有升級(jí)包以預(yù)設(shè)關(guān)聯(lián)方式逐一發(fā)送至終端,使終端在存儲(chǔ)空間較小的情況下仍能夠完成較大系統(tǒng)版本的升級(jí),從而確保終端系統(tǒng)升級(jí)的成功。此外,下發(fā)的多個(gè)升級(jí)包屬于同一系統(tǒng)版本且每兩個(gè)升級(jí)包之間不存在相同的升級(jí)內(nèi)容,不會(huì)造成終端下載重復(fù)的升級(jí)內(nèi)容,造成內(nèi)存空間資源的浪費(fèi)。
附圖說明
圖1是本發(fā)明ota升級(jí)方法實(shí)施例的流程圖。
圖2是本發(fā)明ota升級(jí)方法實(shí)施例中根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息步驟的流程圖。
圖3是本發(fā)明ota升級(jí)裝置實(shí)施例的結(jié)構(gòu)框圖。
以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。
具體實(shí)施方式
本發(fā)明的ota升級(jí)方法應(yīng)用于ota服務(wù)器,實(shí)現(xiàn)將較大的系統(tǒng)版本的完整升級(jí)包拆解成多個(gè)較小的升級(jí)包,確保內(nèi)存剩余空間較小的終端進(jìn)行系統(tǒng)版本升級(jí)的成功率。本發(fā)明ota升級(jí)裝置用于實(shí)現(xiàn)本發(fā)明ota升級(jí)方法。
ota升級(jí)方法實(shí)施例:
如圖1所示,本實(shí)施例中,需要進(jìn)行ota升級(jí)時(shí),首先執(zhí)行步驟s1,接收終端所發(fā)送的升級(jí)請(qǐng)求信息,根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息。
終端需要進(jìn)行系統(tǒng)版本升級(jí)時(shí),可通過向ota服務(wù)器發(fā)送升級(jí)請(qǐng)求信息。其中,升級(jí)請(qǐng)求信息包括:終端的型號(hào)信息以及終端的內(nèi)存信息等。獲取到終端所發(fā)送的升級(jí)請(qǐng)求信息后,可根據(jù)升級(jí)請(qǐng)求信息確認(rèn)終端可進(jìn)行升級(jí)的版本信息。
參見圖2,在根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息時(shí),先執(zhí)行步驟s11,根據(jù)升級(jí)請(qǐng)求信息判斷終端的剩余內(nèi)存信息。由于升級(jí)請(qǐng)求信息中包括終端的內(nèi)存信息,可對(duì)升級(jí)請(qǐng)求信息進(jìn)行信息提取,從而獲得內(nèi)存信息,進(jìn)而獲得終端的剩余內(nèi)存信息。
獲得終端的剩余內(nèi)存信息后,執(zhí)行步驟s12,判斷終端剩余內(nèi)存的大小是否小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小。在判斷時(shí),還需確認(rèn)目標(biāo)系統(tǒng)版本的完整升級(jí)包需占內(nèi)存空間的大小,將終端剩余內(nèi)存的大小與目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小進(jìn)行比較,從而判斷出終端剩余內(nèi)存的大小是否小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小。
若判斷終端剩余內(nèi)存的大小小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小,則執(zhí)行步驟s13,根據(jù)剩余內(nèi)存信息將目標(biāo)系統(tǒng)版本的完整升級(jí)包拆解成多個(gè)預(yù)設(shè)大小的升級(jí)包。拆解形成的升級(jí)包的大小可由系統(tǒng)開發(fā)人員進(jìn)行設(shè)定,也可以由服務(wù)器進(jìn)行自動(dòng)調(diào)整。例如,目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小為500m,在發(fā)布系統(tǒng)版本時(shí),系統(tǒng)開發(fā)人員將完整的升級(jí)包拆解成5個(gè)100m的升級(jí)包,并發(fā)布在服務(wù)器端。又例如,目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小為500m,斷終端剩余內(nèi)存的大小為100m,服務(wù)器可根據(jù)斷終端剩余內(nèi)存的大小將完整升級(jí)包拆解為10個(gè)50m的升級(jí)包。當(dāng)然,在拆解完整升級(jí)包時(shí),得到升級(jí)包的大小可以采用一致的大小,也可以采用不均衡的大小。
確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息后,執(zhí)行步驟s2,向終端發(fā)送升級(jí)提示信息,并獲取終端發(fā)送的升級(jí)確認(rèn)信息。升級(jí)提示信息包括所有可升級(jí)的系統(tǒng)版本的版本號(hào)以及系統(tǒng)版本對(duì)應(yīng)的連接地址,其中,一個(gè)系統(tǒng)版本對(duì)應(yīng)一個(gè)鏈接地址。用戶可根據(jù)升級(jí)提示信息進(jìn)行系統(tǒng)版本的選擇,并通過終端向服務(wù)器發(fā)送升級(jí)確認(rèn)信息,其中,升級(jí)確認(rèn)信息包括需要升級(jí)的目標(biāo)系統(tǒng)版本信息。例如,在終端的顯示界面顯示系統(tǒng)版本的版本號(hào)對(duì)應(yīng)的文字信息,并將該文字信息設(shè)置成帶鏈接地址的虛擬按鍵,用戶通過按壓終端的實(shí)體按鍵或觸碰顯示屏等操作進(jìn)行系統(tǒng)版本的選擇,并選擇完成后通過終端向服務(wù)器發(fā)送升級(jí)確認(rèn)信息。
在獲得終端發(fā)送的升級(jí)確認(rèn)信息后,執(zhí)行步驟s3,判斷目標(biāo)系統(tǒng)版本中是否存在有多個(gè)升級(jí)包。確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息后,可確認(rèn)是否需要將目標(biāo)系統(tǒng)版本的完整升級(jí)包進(jìn)行拆解,若需要拆解,則說明目標(biāo)系統(tǒng)版本存在多個(gè)升級(jí)包。若不需要拆解,則說明目標(biāo)系統(tǒng)版本不存在多個(gè)升級(jí)包。
若判斷目標(biāo)系統(tǒng)版本中存在有多個(gè)升級(jí)包,則執(zhí)行步驟s4,以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包,其中,多個(gè)升級(jí)包屬于同一系統(tǒng)版本且每兩個(gè)升級(jí)包之間不存在相同的升級(jí)內(nèi)容。預(yù)設(shè)關(guān)聯(lián)方式可由系統(tǒng)研發(fā)人員設(shè)定,例如,預(yù)設(shè)關(guān)聯(lián)方式可以是:根據(jù)升級(jí)內(nèi)容的先后順序,對(duì)需要下發(fā)的升級(jí)包進(jìn)行排序,前后的升級(jí)包之間設(shè)有跳轉(zhuǎn)鏈接的代碼,前一升級(jí)包升級(jí)完成后自動(dòng)跳轉(zhuǎn)至下一升級(jí)包的下載地址,進(jìn)行下一升級(jí)包的下載升級(jí)。
本實(shí)施例中,以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包的步驟包括:若獲取到終端所發(fā)送的前一升級(jí)包升級(jí)完成的確認(rèn)信息,則向終端發(fā)送下一升級(jí)包。由于終端內(nèi)存空間不足,需要將升級(jí)包逐個(gè)升級(jí),為了確認(rèn)前一升級(jí)包已升級(jí)完成,終端在完成一個(gè)升級(jí)包的升級(jí)后,自動(dòng)生成升級(jí)完成的確認(rèn)信息,并發(fā)送至服務(wù)器端。服務(wù)器獲取到前一升級(jí)包升級(jí)完成的確認(rèn)信息,即可向終端發(fā)送下一升級(jí)包。
為了確保終端有足夠的內(nèi)存空間進(jìn)行目標(biāo)系統(tǒng)版本的升級(jí),本實(shí)施例中,以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包的步驟還包括:獲取到確認(rèn)信息后,向終端發(fā)送升級(jí)包刪除指令并獲取終端所發(fā)送的刪除完成信息。在前一升級(jí)包完成升級(jí)后,服務(wù)器在下發(fā)下一升級(jí)包前,先發(fā)送升級(jí)包刪除指令將前一升級(jí)包刪除,為下一升級(jí)包的下載騰出存儲(chǔ)空間,確保升級(jí)正常進(jìn)行。
若判斷目標(biāo)系統(tǒng)版本中沒有存在多個(gè)升級(jí)包,則執(zhí)行步驟s5,向終端發(fā)送目標(biāo)系統(tǒng)版本的完整升級(jí)包。若目標(biāo)系統(tǒng)版本中沒有存在多個(gè)升級(jí)包,則說明終端有足夠的剩余空間下載完整升級(jí)包進(jìn)行系統(tǒng)升級(jí),因此,可直接下發(fā)完整升級(jí)包進(jìn)行升級(jí),提高升級(jí)速率。其中,完整升級(jí)包可以是升級(jí)至目標(biāo)系統(tǒng)版本的完整升級(jí)包,還可以是目標(biāo)系統(tǒng)版本與終端當(dāng)前系統(tǒng)版本之間的差分升級(jí)包。
以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包后或向終端發(fā)送目標(biāo)系統(tǒng)版本的完整升級(jí)包后,執(zhí)行步驟s6,獲取終端所發(fā)送的升級(jí)結(jié)果,對(duì)升級(jí)結(jié)果進(jìn)行驗(yàn)證并向終端發(fā)送結(jié)果反饋信息。在完成目標(biāo)系統(tǒng)版本的升級(jí)后,終端將升級(jí)結(jié)果發(fā)送至服務(wù)器端,服務(wù)器對(duì)升級(jí)結(jié)果進(jìn)行驗(yàn)證,判斷終端是否升級(jí)成功,并將確認(rèn)的結(jié)果反饋至終端。例如,服務(wù)器對(duì)升級(jí)結(jié)果驗(yàn)證后,若判斷終端升級(jí)成功,則向終端發(fā)送升級(jí)成功的反饋信息;若判斷終端升級(jí)失敗,則向終端發(fā)送升級(jí)失敗的反饋信息。用戶可根據(jù)反饋信息采取相應(yīng)的措施。
ota升級(jí)裝置實(shí)施例:
如圖3所示,本發(fā)明的ota升級(jí)裝置應(yīng)用于ota服務(wù)器,ota升級(jí)裝置包括升級(jí)請(qǐng)求處理模塊11、升級(jí)確認(rèn)模塊12、升級(jí)包處理模塊13和升級(jí)驗(yàn)證模塊14。
請(qǐng)求處理模塊11用于接收終端所發(fā)送的升級(jí)請(qǐng)求信息,根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息。終端需要進(jìn)行系統(tǒng)版本升級(jí)時(shí),可通過向ota服務(wù)器發(fā)送升級(jí)請(qǐng)求信息。其中,升級(jí)請(qǐng)求信息包括:終端的型號(hào)信息以及終端的內(nèi)存信息等。獲取到終端所發(fā)送的升級(jí)請(qǐng)求信息后,可根據(jù)升級(jí)請(qǐng)求信息確認(rèn)終端可進(jìn)行升級(jí)的版本信息。
請(qǐng)求處理模塊11根據(jù)升級(jí)請(qǐng)求信息確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息時(shí)包括:根據(jù)升級(jí)請(qǐng)求信息判斷終端的剩余內(nèi)存信息;判斷終端剩余內(nèi)存的大小是否小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小,若是,根據(jù)剩余內(nèi)存信息將目標(biāo)系統(tǒng)版本的完整升級(jí)包拆解成多個(gè)預(yù)設(shè)大小的升級(jí)包。
在請(qǐng)求處理模塊11判斷終端的剩余內(nèi)存信息時(shí),由于升級(jí)請(qǐng)求信息中包括終端的內(nèi)存信息,請(qǐng)求處理模塊11可對(duì)升級(jí)請(qǐng)求信息進(jìn)行信息提取,從而獲得內(nèi)存信息,進(jìn)而獲得終端的剩余內(nèi)存信息。在請(qǐng)求處理模塊11判斷終端剩余內(nèi)存的大小是否小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小時(shí),請(qǐng)求處理模塊11還需確認(rèn)目標(biāo)系統(tǒng)版本的完整升級(jí)包需占內(nèi)存空間的大小,將終端剩余內(nèi)存的大小與目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小進(jìn)行比較,從而判斷出終端剩余內(nèi)存的大小是否小于目標(biāo)系統(tǒng)版本的完整升級(jí)包的大小。請(qǐng)求處理模塊11將目標(biāo)系統(tǒng)版本的完整升級(jí)包拆解成多個(gè)預(yù)設(shè)大小的升級(jí)包時(shí),拆解形成升級(jí)包的大小可由系統(tǒng)開發(fā)人員進(jìn)行設(shè)定,也可以由服務(wù)器進(jìn)行自動(dòng)調(diào)整。
升級(jí)確認(rèn)模塊12用于向終端發(fā)送升級(jí)提示信息,并獲取終端發(fā)送的升級(jí)確認(rèn)信息。升級(jí)提示信息包括所有可升級(jí)的系統(tǒng)版本的版本號(hào)以及系統(tǒng)版本對(duì)應(yīng)的連接地址,其中,一個(gè)系統(tǒng)版本對(duì)應(yīng)一個(gè)鏈接地址。用戶可根據(jù)升級(jí)提示信息進(jìn)行系統(tǒng)版本的選擇,并通過終端向服務(wù)器發(fā)送升級(jí)確認(rèn)信息,其中,升級(jí)確認(rèn)信息包括需要升級(jí)的目標(biāo)系統(tǒng)版本信息。
升級(jí)包處理模塊13用于判斷目標(biāo)系統(tǒng)版本中是否存在有多個(gè)升級(jí)包。確定需要下發(fā)的目標(biāo)系統(tǒng)版本信息后,可確認(rèn)是否需要將目標(biāo)系統(tǒng)版本的完整升級(jí)包進(jìn)行拆解,若需要拆解,則說明目標(biāo)系統(tǒng)版本存在多個(gè)升級(jí)包。若不需要拆解,則說明目標(biāo)系統(tǒng)版本不存在多個(gè)升級(jí)包。
若升級(jí)包處理模塊13判斷目標(biāo)系統(tǒng)版本中存在有多個(gè)升級(jí)包,則以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包,其中,多個(gè)升級(jí)包屬于同一系統(tǒng)版本且每兩個(gè)升級(jí)包之間不存在相同的升級(jí)內(nèi)容。預(yù)設(shè)關(guān)聯(lián)方式可由系統(tǒng)研發(fā)人員設(shè)定,例如,預(yù)設(shè)關(guān)聯(lián)方式可以是:根據(jù)升級(jí)內(nèi)容的先后順序,對(duì)需要下發(fā)的升級(jí)包進(jìn)行排序,前后的升級(jí)包之間設(shè)有跳轉(zhuǎn)鏈接的代碼,前一升級(jí)包升級(jí)完成后自動(dòng)跳轉(zhuǎn)至下一升級(jí)包的下載地址,進(jìn)行下一升級(jí)包的下載升級(jí)。
本實(shí)施例中,升級(jí)包處理模塊13以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包時(shí)包括:若獲取到終端所發(fā)送的前一升級(jí)包升級(jí)完成的確認(rèn)信息,則向終端發(fā)送下一升級(jí)包。由于終端內(nèi)存空間不足,需要將升級(jí)包逐個(gè)升級(jí),為了確認(rèn)前一升級(jí)包已升級(jí)完成,終端在完成一個(gè)升級(jí)包的升級(jí)后,自動(dòng)生成升級(jí)完成的確認(rèn)信息,并發(fā)送至服務(wù)器端。服務(wù)器獲取到前一升級(jí)包升級(jí)完成的確認(rèn)信息,即可向終端發(fā)送下一升級(jí)包。
為了確保終端有足夠的內(nèi)存空間進(jìn)行目標(biāo)系統(tǒng)版本的升級(jí),本實(shí)施例中,升級(jí)包處理模塊13以預(yù)設(shè)關(guān)聯(lián)方式向終端逐一發(fā)送所有升級(jí)包時(shí)還包括:獲取到確認(rèn)信息后,向終端發(fā)送升級(jí)包刪除指令并獲取終端所發(fā)送的刪除完成信息。在前一升級(jí)包完成升級(jí)后,服務(wù)器在下發(fā)下一升級(jí)包前,先發(fā)送升級(jí)包刪除指令將前一升級(jí)包刪除,為下一升級(jí)包的下載騰出存儲(chǔ)空間,確保升級(jí)正常進(jìn)行。
若升級(jí)包處理模塊13判斷目標(biāo)系統(tǒng)版本中沒有存在多個(gè)升級(jí)包,則向終端發(fā)送目標(biāo)系統(tǒng)版本的完整升級(jí)包。若目標(biāo)系統(tǒng)版本中沒有存在多個(gè)升級(jí)包,則說明終端有足夠的剩余空間下載完整升級(jí)包進(jìn)行系統(tǒng)升級(jí),因此,可直接下發(fā)完整升級(jí)包進(jìn)行升級(jí),提高升級(jí)速率。其中,完整升級(jí)包可以是升級(jí)至目標(biāo)系統(tǒng)版本的完整升級(jí)包,還可以是目標(biāo)系統(tǒng)版本與終端當(dāng)前系統(tǒng)版本之間的差分升級(jí)包。
升級(jí)驗(yàn)證模塊14用于獲取終端所發(fā)送的升級(jí)結(jié)果,對(duì)升級(jí)結(jié)果進(jìn)行驗(yàn)證并向終端發(fā)送結(jié)果反饋信息。在完成目標(biāo)系統(tǒng)版本的升級(jí)后,終端將升級(jí)結(jié)果發(fā)送至服務(wù)器端,服務(wù)器對(duì)升級(jí)結(jié)果進(jìn)行驗(yàn)證,判斷終端是否升級(jí)成功,并將確認(rèn)的結(jié)果反饋至終端。例如,服務(wù)器對(duì)升級(jí)結(jié)果驗(yàn)證后,若判斷終端升級(jí)成功,則向終端發(fā)送升級(jí)成功的反饋信息;若判斷終端升級(jí)失敗,則向終端發(fā)送升級(jí)失敗的反饋信息。
由上述可知,本發(fā)明通過判斷目標(biāo)系統(tǒng)版本是否包括多個(gè)升級(jí)包,若包括多個(gè)升級(jí)包,則將目標(biāo)系統(tǒng)版本的所有升級(jí)包以預(yù)設(shè)關(guān)聯(lián)方式逐一發(fā)送至終端,使終端在存儲(chǔ)空間較小的情況下仍能夠完成較大系統(tǒng)版本的升級(jí),從而確保終端系統(tǒng)升級(jí)的成功。此外,下發(fā)的多個(gè)升級(jí)包屬于同一系統(tǒng)版本且每兩個(gè)升級(jí)包之間不存在相同的升級(jí)內(nèi)容,不會(huì)造成終端下載重復(fù)的升級(jí)內(nèi)容,造成內(nèi)存空間資源的浪費(fèi)。此外,本發(fā)明還可通過根據(jù)終端的內(nèi)存空間進(jìn)行升級(jí)包的拆解,將較大的完整升級(jí)包拆解成多個(gè)較小的升級(jí)包,使得終端有足夠的內(nèi)存空間可進(jìn)行系統(tǒng)版本的下載與升級(jí)。
需要說明的是,以上僅為本發(fā)明的優(yōu)選實(shí)施例,但發(fā)明的設(shè)計(jì)構(gòu)思并不局限于此,凡利用此構(gòu)思對(duì)本發(fā)明做出的非實(shí)質(zhì)性修改,也均落入本發(fā)明的保護(hù)范圍之內(nèi)。