一種差分升級方法、服務(wù)端及終端的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通訊領(lǐng)域,特別是一種差分升級方法、服務(wù)端及終端。
【背景技術(shù)】
[0002]目前對終端系統(tǒng)的差分升級方法主要是將目標(biāo)版本的系統(tǒng)文件與源版本的系統(tǒng)文件進行差分比對,得到差分升級數(shù)據(jù),之后利用差分升級數(shù)據(jù)直接對終端系統(tǒng)進行版本升級。
[0003]然而,這種現(xiàn)有的差分升級方法是以終端的整個系統(tǒng)作為升級粒度,因此會帶來下述問題:
[0004]對于像android這類開源系統(tǒng)平臺,用戶往往為了個性化需求而去獲取手機Root權(quán)限以修改系統(tǒng)上的文件(這也是為什么市面上會存在各種基于android版本衍生的手機系統(tǒng))。在進行差分升級前,終端首先會對系統(tǒng)文件進行校驗,若發(fā)現(xiàn)用戶終端當(dāng)前的版本文件與原始版本文件存在差異,則差分升級無法執(zhí)行。此外,若差分升級過程中有一部分?jǐn)?shù)據(jù)升級失敗,則會導(dǎo)致整個系統(tǒng)的版本升級失敗。
[0005]因此,如何提高差分升級的成功率,是當(dāng)前亟需解決的問題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明要解決的技術(shù)問題是提供一種差分升級方法、服務(wù)端及終端,能夠以系統(tǒng)中的子模塊作為新的升級粒度進行獨立的差分升級。
[0007]為解決上述技術(shù)問題,本發(fā)明的實施例提供一種差分升級方法,應(yīng)用于服務(wù)端,包括:
[0008]確定系統(tǒng)中需要升級的子模塊的差分升級包;其中,系統(tǒng)的子模塊之間不具備耦合度,且每個子模塊均能夠進行獨立升級;
[0009]將所述差分升級包發(fā)送至終端,使得所述終端能夠根據(jù)所述差分升級包升級其系統(tǒng)中對應(yīng)的子模塊。
[0010]其中,確定系統(tǒng)中需要升級的子模塊的差分升級包的步驟后還包括:
[0011]對必須升級成功的子模塊的差分升級包進行標(biāo)記,使得所述終端能夠根據(jù)具有標(biāo)記的差分升級包優(yōu)先升級其系統(tǒng)中對應(yīng)的必須升級成功的子模塊。
[0012]其中,確定系統(tǒng)中需要升級的子模塊的差分升級包的步驟包括:
[0013]確定源版本系統(tǒng)升級目標(biāo)版本系統(tǒng)的差分升級數(shù)據(jù);
[0014]將所述差分升級數(shù)據(jù)按照系統(tǒng)的子模塊進行分包處理,得到需要升級的子模塊的差分升級包。
[0015]其中,確定系統(tǒng)中需要升級的子模塊的差分升級包的步驟包括:
[0016]獲取終端發(fā)送的其系統(tǒng)中各個子模塊的版本信息;所述子模塊的版本信息與系統(tǒng)的版本信息不同;
[0017]根據(jù)獲取到的子模塊的版本信息確定出終端需要升級的子模塊以及需要升級的子模塊的差分升級包。
[0018]此外,本發(fā)明的實施例還提供一種差分升級方法,應(yīng)用于終端,包括:
[0019]獲取由服務(wù)端發(fā)送的系統(tǒng)中需要升級的子模塊的差分升級包;其中,系統(tǒng)的子模塊之間不具備耦合度,且每個子模塊均能夠進行獨立升級;
[0020]根據(jù)所述差分升級包升級系統(tǒng)中對應(yīng)的子模塊。
[0021]其中,根據(jù)所述差分升級包升級系統(tǒng)中對應(yīng)的子模塊的步驟包括:
[0022]從獲取到的所有差分升級包中確定出具有標(biāo)記的差分升級包;
[0023]先使用具有標(biāo)記的差分升級包升級本地系統(tǒng)中對應(yīng)的子模塊,之后再使用其余的差分?jǐn)?shù)據(jù)包升級系統(tǒng)中其它需要升級的子模塊。
[0024]其中,若使用具有標(biāo)記的差分升級包未能成功升級系統(tǒng)中對應(yīng)的子模塊,則放棄執(zhí)行再使用其余的差分?jǐn)?shù)據(jù)包進行升級的步驟。
[0025]其中,所述差分升級方法還包括:
[0026]更新成功升級的子模塊的版本信息;所述子模塊的版本信息與系統(tǒng)的版本信息不同;
[0027]向所述服務(wù)端反饋升級結(jié)果。
[0028]其中,獲取由服務(wù)端發(fā)送的系統(tǒng)中需要升級的子模塊的差分升級包的步驟包括:
[0029]向所述服務(wù)端發(fā)送系統(tǒng)中各個子模塊的版本信息,從而使得所述服務(wù)端能夠根據(jù)該發(fā)送的子模塊的版本信息確定出終端需要升級的子模塊以及終端需要升級的子模塊的差分升級數(shù)據(jù),并將該需要升級的子模塊的差分升級數(shù)據(jù)發(fā)送至終端。
[0030]此外,本發(fā)明的實施例還提供一種服務(wù)端,包括:
[0031]確定模塊,用于確定系統(tǒng)中需要升級的子模塊的差分升級包;其中,系統(tǒng)的子模塊之間不具備耦合度,且每個子模塊均能夠進行獨立升級;
[0032]第一發(fā)送模塊,用于將所述差分升級包發(fā)送至終端,使得所述終端能夠根據(jù)所述差分升級包升級其系統(tǒng)中對應(yīng)的子模塊。
[0033]其中,所述服務(wù)端還包括:
[0034]標(biāo)記模塊,用于,在所述確定模塊確定系統(tǒng)中需要升級的子模塊的差分升級包后,對必須升級成功的子模塊的差分升級包進行標(biāo)記,使得所述終端能夠根據(jù)具有標(biāo)記的差分升級包優(yōu)先升級其系統(tǒng)中對應(yīng)的必須升級成功的子模塊。
[0035]其中,所述確定模塊包括:
[0036]第一確定子模塊,用于確定源版本系統(tǒng)升級目標(biāo)版本系統(tǒng)的差分升級數(shù)據(jù);
[0037]分包子模塊,將所述差分升級數(shù)據(jù)按照系統(tǒng)的子模塊進行分包處理,得到需要升級的子模塊的差分升級包。
[0038]其中,所述確定模塊包括:
[0039]獲取子模塊,用于獲取終端發(fā)送的其系統(tǒng)中各個子模塊的版本信息;所述子模塊的版本信息與系統(tǒng)的版本信息不同;
[0040]第二確定子模塊,用于根據(jù)獲取到的子模塊的版本信息確定出終端需要升級的子模塊以及需要升級的子模塊的差分升級包。
[0041]此外,本發(fā)明的實施例還提供一種終端,包括:
[0042]第一獲取模塊,用于獲取由服務(wù)端發(fā)送的系統(tǒng)中需要升級的子模塊的差分升級包;其中,系統(tǒng)的子模塊之間不具備耦合度,且每個子模塊均能夠進行獨立升級;
[0043]升級模塊,用于根據(jù)所述差分升級包升級系統(tǒng)中對應(yīng)的子模塊。
[0044]其中,所述升級模塊包括:
[0045]第三確定子模塊,用于從獲取到的所有差分升級包中確定出具有標(biāo)記的差分升級包;
[0046]升級子模塊,用于先使用具有標(biāo)記的差分升級包升級本地系統(tǒng)中對應(yīng)的子模塊,之后再使用其余的差分?jǐn)?shù)據(jù)包升級系統(tǒng)中其它需要升級的子模塊。
[0047]其中,若所述升級子模塊使用具有標(biāo)記的差分升級包未能成功升級系統(tǒng)中對應(yīng)的子模塊,則放棄再使用其余的差分?jǐn)?shù)據(jù)包進行升級。
[0048]其中,所述終端,還包括:
[0049]更新模塊,用于更新成功升級的子模塊的版本信息;所述子模塊的版本信息與系統(tǒng)的版本信息不同;
[0050]反饋模塊,用于向所述服務(wù)端反饋升級結(jié)果。
[0051]其中,所述獲取模塊具體向所述服務(wù)端發(fā)送系統(tǒng)中各個子模塊的版本信息,從而使得所述服務(wù)端能夠根據(jù)該發(fā)送的子模塊的版本信息確定出終端需要升級的子模塊以及終端需要升級的子模塊的差分升級數(shù)據(jù),并將該需要升級的子模塊的差分升級數(shù)據(jù)發(fā)送至終端。
[0052]本發(fā)明的上述技術(shù)方案的有益效果如下:
[0053]本發(fā)明的方案系統(tǒng)劃分成多個子模塊,并以子模塊作為新的升級粒度進行獨立的差分升級,從而提高差分升級的容錯度以及升級程度。
【附圖說明】
[0054]圖1為本發(fā)明的應(yīng)用于服務(wù)端的差分升級方法的步驟示意圖;
[0055]圖2為本發(fā)明的應(yīng)用于終端的差分升級方法的步驟示意圖;
[0056]圖3和圖4為本發(fā)明實施例的對終端系統(tǒng)劃分成不同子模塊的結(jié)構(gòu)示意圖;
[0057]圖5為本發(fā)明的服務(wù)端的結(jié)構(gòu)示意圖;
[0058]圖6為本發(fā)明的終端的結(jié)構(gòu)意圖。
【具體實施方式】
[0059]為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例進行詳細(xì)描述。
[0060]針對現(xiàn)有的差分升級方法的升級粒度過大,導(dǎo)致成功率不高的問題,本發(fā)明提供一種新的差分升級方法,將系統(tǒng)劃分成多個子模塊,并以子模塊作為新的升級粒度進行獨立的差分升級。
[0061]其中,如圖1所示,應(yīng)用于服務(wù)端側(cè)的差分升級方法包括:
[0062]步驟11,確定系統(tǒng)中需要升級的子模塊的差分升級包;其中,系統(tǒng)的子模塊之間不具備耦合度,且每個子模塊均能夠進行獨立升級;
[0063]步驟12,將所述差分升級包發(fā)送至終端,使得所述終端能夠根據(jù)所述差分升級包升級其系統(tǒng)中對應(yīng)的子模塊。
[0064]與之對應(yīng)的,如圖2所示,應(yīng)用于終端側(cè)差分升級方法包括