本發(fā)明涉及移動通信技術(shù)領(lǐng)域,尤其涉及一種升級方法及終端。
背景技術(shù):
隨著互聯(lián)網(wǎng)的迅速發(fā)展以及android系統(tǒng)的廣泛使用,android終端的固件升級越來越重要,目前都是采用谷歌原生的ota升級技術(shù)。
有些廠商引入開源的pkg技術(shù),進(jìn)行補(bǔ)丁升級,并且結(jié)合谷歌ota升級技術(shù)滿足各個客戶的底層升級需求。
以上技術(shù)存在以下幾個問題:
1、pkg技術(shù)理論上可以更新各個分區(qū)中的所有文件,類似文件替換。在客戶使用程中,難免遇到需要將系統(tǒng)的system分區(qū)內(nèi)的某些文件通過pkg技術(shù)進(jìn)行升級,以達(dá)到快速升級的目的。修改了system分區(qū)的文件就會導(dǎo)致ota升級的時候,system分區(qū)中被修改的文件校驗(yàn)失敗,從而導(dǎo)致ota失敗。
2、ota升級每次需要重新制作版本,生成對應(yīng)的ota升級包并發(fā)布,會延長某些緊急系統(tǒng)bug的修復(fù)周期。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:本發(fā)明提供了一種能夠通過補(bǔ)丁升級包對系統(tǒng)進(jìn)行升級,同時不影響系統(tǒng)ota正常升級的方法及終端。
為了解決上述技術(shù)問題,本發(fā)明提供了一種升級方法,包括以下步驟:
通過補(bǔ)丁升級包對系統(tǒng)升級前,在預(yù)設(shè)的備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠校驗(yàn)備份區(qū)的系統(tǒng)文件,以完成系統(tǒng)的ota升級。
本發(fā)明還提供了一種升級終端,包括存儲器、處理器及存儲在存儲器上并可在處理器上運(yùn)行的計算機(jī)程序,所述處理器執(zhí)行所述程序時實(shí)現(xiàn)以下步驟:
通過補(bǔ)丁升級包對系統(tǒng)升級前,在預(yù)設(shè)的備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠校驗(yàn)備份區(qū)的系統(tǒng)文件,以完成系統(tǒng)的ota升級。
本發(fā)明的有益效果為:
本發(fā)明通過補(bǔ)丁升級包對系統(tǒng)升級前,在備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)需要進(jìn)行ota升級時,能夠讀取備份區(qū)中的系統(tǒng)文件,進(jìn)行相應(yīng)的校驗(yàn),以使得系統(tǒng)能夠正常完成ota升級,解決了系統(tǒng)通過補(bǔ)丁升級包升級時,會對系統(tǒng)分區(qū)的系統(tǒng)文件進(jìn)行更改,而導(dǎo)致ota升級失敗的問題;同時解決了若系統(tǒng)只通過ota升級,則存在每一次ota升級時,都需要重新制作版本,所需要的時間較長,不能對系統(tǒng)的一些bug進(jìn)行及時修復(fù),而導(dǎo)致系統(tǒng)存在安全性問題。
附圖說明
圖1為根據(jù)本發(fā)明實(shí)施例的一種升級方法的流程圖;
圖2為根據(jù)本發(fā)明實(shí)施例的一種升級終端的結(jié)構(gòu)示意圖;
標(biāo)號說明:
1、存儲器;2、處理器。
具體實(shí)施方式
為詳細(xì)說明本發(fā)明的技術(shù)內(nèi)容、所實(shí)現(xiàn)目的及效果,以下結(jié)合實(shí)施方式并配合附圖詳予說明。
本發(fā)明最關(guān)鍵的構(gòu)思在于:在系統(tǒng)通過補(bǔ)丁升級包升級前,備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠?qū)浞莸南到y(tǒng)文件進(jìn)行校驗(yàn),以完成正常的ota升級。
請參照圖1,本發(fā)明提供了一種升級方法,包括以下步驟:
通過補(bǔ)丁升級包對系統(tǒng)升級前,在預(yù)設(shè)的備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠校驗(yàn)備份區(qū)的系統(tǒng)文件,以完成系統(tǒng)的ota升級。
從上述描述可知,本發(fā)明通過補(bǔ)丁升級包對系統(tǒng)升級前,在備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)需要進(jìn)行ota升級時,能夠讀取備份區(qū)中的系統(tǒng)文件,進(jìn)行相應(yīng)的校驗(yàn),以使得系統(tǒng)能夠正常完成ota升級,解決了系統(tǒng)通過補(bǔ)丁升級包升級時,會對系統(tǒng)分區(qū)的系統(tǒng)文件進(jìn)行更改,而導(dǎo)致ota升級失敗的問題;同時解決了若系統(tǒng)只通過ota升級,則存在每一次ota升級時,都需要重新制作版本,所需要的時間較長,不能對系統(tǒng)的一些bug進(jìn)行及時修復(fù),而導(dǎo)致系統(tǒng)存在安全性問題。
進(jìn)一步的,“校驗(yàn)備份區(qū)的系統(tǒng)文件”具體為:
獲取系統(tǒng)升級時所需的ota升級包;
獲取所述ota升級包中的哈希值,得到第一哈希值;
獲取所述備份區(qū)的系統(tǒng)文件中的哈希值,得到第二哈希值;
將所述第二哈希值與第一哈希值進(jìn)行校驗(yàn)。
從上述描述可知,通過上述方法能夠保證系統(tǒng)升級時系統(tǒng)文件與ota升級包相匹配,避免系統(tǒng)文件更改后,仍然以更改后的系統(tǒng)文件與獲取得到的ota升級包對系統(tǒng)進(jìn)行升級,使系統(tǒng)升級失敗,而造成系統(tǒng)崩潰的問題。
進(jìn)一步的,所述的一種升級方法,還包括:
所述ota升級包包括系統(tǒng)的當(dāng)前版本與目標(biāo)版本之間的差分文件;
若第二哈希值與第一哈希值檢驗(yàn)成功,則根據(jù)系統(tǒng)備份區(qū)的系統(tǒng)文件與所述差分文件,對系統(tǒng)進(jìn)行升級。
從上述描述可知,通過上述方法,只需要制作系統(tǒng)升級時所需的相應(yīng)的差分文件,而無需制作完整的升級文件,在一定程度上提高了系統(tǒng)升級效率,降低了使用成本。
進(jìn)一步的,所述的一種升級方法,還包括:
系統(tǒng)在ota升級時,校驗(yàn)系統(tǒng)分區(qū)內(nèi)的系統(tǒng)文件,若校驗(yàn)失敗,則對備份區(qū)的系統(tǒng)文件進(jìn)行校驗(yàn)。
從上述描述可知,通過上述方法保證了系統(tǒng)升級速率,同時又保證了系統(tǒng)升級時的穩(wěn)定性及安全性。
進(jìn)一步的,所述的一種升級方法,還包括:
制作系統(tǒng)當(dāng)前版本與目標(biāo)版本之間的差分文件;
并獲取當(dāng)前版本系統(tǒng)文件對應(yīng)的標(biāo)準(zhǔn)哈希值;
根據(jù)所述差分文件和所述標(biāo)準(zhǔn)哈希值,得到ota升級包。
從上述描述可知,通過上述方法只需要制作當(dāng)前版本與目標(biāo)版本之間的差分文件及獲取當(dāng)前版本對應(yīng)的標(biāo)準(zhǔn)哈希值,而無需制作完成的系統(tǒng)升級包,本發(fā)明提高了系統(tǒng)升級的效率,降低了使用成本。
請參照圖2,本發(fā)明提供的一種升級終端,包括存儲器1、處理器2及存儲在存儲器1上并可在處理器2上運(yùn)行的計算機(jī)程序,所述處理器2執(zhí)行所述程序時實(shí)現(xiàn)以下步驟:
通過補(bǔ)丁升級包對系統(tǒng)升級前,在預(yù)設(shè)的備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠校驗(yàn)備份區(qū)的系統(tǒng)文件,以完成系統(tǒng)的ota升級。
進(jìn)一步的,所述的一種升級終端,“校驗(yàn)備份區(qū)的系統(tǒng)文件”具體為:
獲取系統(tǒng)升級時所需的ota升級包;
獲取所述ota升級包中的哈希值,得到第一哈希值;
獲取所述備份區(qū)的系統(tǒng)文件中的哈希值,得到第二哈希值;
將所述第二哈希值與第一哈希值進(jìn)行校驗(yàn)。
進(jìn)一步的,所述的一種升級終端,所述處理器執(zhí)行所述程序時實(shí)現(xiàn)的步驟還包括:
所述ota升級包包括系統(tǒng)的當(dāng)前版本與目標(biāo)版本之間的差分文件;
若第二哈希值與第一哈希值檢驗(yàn)成功,則根據(jù)系統(tǒng)備份區(qū)的系統(tǒng)文件與所述差分文件,對系統(tǒng)進(jìn)行升級。
進(jìn)一步的,所述的一種升級終端,所述處理器執(zhí)行所述程序時實(shí)現(xiàn)的步驟還包括:
系統(tǒng)在ota升級時,校驗(yàn)系統(tǒng)分區(qū)內(nèi)的系統(tǒng)文件,若校驗(yàn)失敗,則對備份區(qū)的系統(tǒng)文件進(jìn)行校驗(yàn)。
進(jìn)一步的,所述的一種升級終端,所述處理器執(zhí)行所述程序時實(shí)現(xiàn)的步驟還包括:
制作系統(tǒng)當(dāng)前版本與目標(biāo)版本之間的差分文件;
并獲取當(dāng)前版本系統(tǒng)文件對應(yīng)的標(biāo)準(zhǔn)哈希值;
根據(jù)所述差分文件和所述標(biāo)準(zhǔn)哈希值,得到ota升級包。
本發(fā)明的實(shí)施例一為:
本發(fā)明提供的一種升級方法,包括以下步驟:
通過補(bǔ)丁升級包對系統(tǒng)升級前,在預(yù)設(shè)的備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠校驗(yàn)備份區(qū)的系統(tǒng)文件,以完成系統(tǒng)的ota升級;
“校驗(yàn)備份區(qū)的系統(tǒng)文件”具體為:
獲取系統(tǒng)升級時所需的ota升級包;
獲取所述ota升級包中的哈希值,得到第一哈希值;
獲取所述備份區(qū)的系統(tǒng)文件中的哈希值,得到第二哈希值;
將所述第二哈希值與第一哈希值進(jìn)行校驗(yàn)。
“校驗(yàn)備份區(qū)的系統(tǒng)文件”之后還包括:
所述ota升級包包括系統(tǒng)的當(dāng)前版本與目標(biāo)版本之間的差分文件;
若第二哈希值與第一哈希值檢驗(yàn)成功,則根據(jù)系統(tǒng)備份區(qū)的系統(tǒng)文件與所述差分文件,對系統(tǒng)進(jìn)行升級。
“獲取系統(tǒng)升級時所需的ota升級包”之前還包括:
制作系統(tǒng)當(dāng)前版本與目標(biāo)版本之間的差分文件;
并獲取當(dāng)前版本系統(tǒng)文件對應(yīng)的標(biāo)準(zhǔn)哈希值;
根據(jù)所述差分文件和所述標(biāo)準(zhǔn)哈希值,得到ota升級包。
請參照圖1,本發(fā)明的實(shí)施例二為:
在通過補(bǔ)丁升級包對系統(tǒng)升級前,先將終端中系統(tǒng)分區(qū)中的系統(tǒng)文件拷貝到預(yù)設(shè)的備份區(qū)進(jìn)行備份,安裝補(bǔ)丁升級包,通過補(bǔ)丁升級過程中會對系統(tǒng)進(jìn)行修改,系統(tǒng)重啟后完成補(bǔ)丁升級;
若系統(tǒng)需要進(jìn)行ota升級時,會對終端的系統(tǒng)分區(qū)的所有系統(tǒng)文件進(jìn)行校驗(yàn),由于系統(tǒng)事先通過補(bǔ)丁升級,故系統(tǒng)文體會校驗(yàn)失敗,此時再從備份區(qū)讀取系統(tǒng)文件進(jìn)行校驗(yàn),校驗(yàn)過程如下:獲取系統(tǒng)升級時所需的ota升級包,獲取系統(tǒng)升級時所需的ota升級包之前還包括制作ota升級包,其制作過程如下:制作系統(tǒng)當(dāng)前版本與目標(biāo)版本之間的差分文件,并獲取當(dāng)前版本系統(tǒng)文件對應(yīng)的標(biāo)準(zhǔn)哈希值,根據(jù)所述差分文件和所述標(biāo)準(zhǔn)哈希值,得到ota升級包;獲取所述ota升級包中的哈希值,得到第一哈希值;獲取所述備份區(qū)的系統(tǒng)文件中的哈希值,得到第二哈希值;將所述第二哈希值與第一哈希值進(jìn)行校驗(yàn)。若哈希值校驗(yàn)成功,則使用備份區(qū)中的系統(tǒng)文件作為舊版本的原始文件與ota升級包對系統(tǒng)進(jìn)行差分升級,以完成系統(tǒng)的ota升級。
請參照圖2,本發(fā)明的實(shí)施例三為:
本發(fā)明提供的一種升級終端,包括存儲器、處理器及存儲在存儲器上并可在處理器上運(yùn)行的計算機(jī)程序,所述處理器執(zhí)行所述程序時實(shí)現(xiàn)以下步驟:
通過補(bǔ)丁升級包對系統(tǒng)升級前,在預(yù)設(shè)的備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)在ota升級時,能夠校驗(yàn)備份區(qū)的系統(tǒng)文件,以完成系統(tǒng)的ota升級;
“校驗(yàn)備份區(qū)的系統(tǒng)文件”具體為:
獲取系統(tǒng)升級時所需的ota升級包;
獲取所述ota升級包中的哈希值,得到第一哈希值;
獲取所述備份區(qū)的系統(tǒng)文件中的哈希值,得到第二哈希值;
將所述第二哈希值與第一哈希值進(jìn)行校驗(yàn)。
“校驗(yàn)備份區(qū)的系統(tǒng)文件”之后還包括:
所述ota升級包包括系統(tǒng)的當(dāng)前版本與目標(biāo)版本之間的差分文件;
若第二哈希值與第一哈希值檢驗(yàn)成功,則根據(jù)系統(tǒng)備份區(qū)的系統(tǒng)文件與所述差分文件,對系統(tǒng)進(jìn)行升級。
“獲取系統(tǒng)升級時所需的ota升級包”之前還包括:
制作系統(tǒng)當(dāng)前版本與目標(biāo)版本之間的差分文件;
并獲取當(dāng)前版本系統(tǒng)文件對應(yīng)的標(biāo)準(zhǔn)哈希值;
根據(jù)所述差分文件和所述標(biāo)準(zhǔn)哈希值,得到ota升級包。
綜上所述,本發(fā)明通過補(bǔ)丁升級包對系統(tǒng)升級前,在備份區(qū)備份系統(tǒng)文件,以使得系統(tǒng)需要進(jìn)行ota升級時,能夠讀取備份區(qū)中的系統(tǒng)文件,進(jìn)行相應(yīng)的校驗(yàn),以使得系統(tǒng)能夠正常完成ota升級,解決了系統(tǒng)通過補(bǔ)丁升級包升級時,會對系統(tǒng)分區(qū)的系統(tǒng)文件進(jìn)行更改,而導(dǎo)致ota升級失敗的問題;同時解決了若系統(tǒng)只通過ota升級,則存在每一次ota升級時,都需要重新制作版本,所需要的時間較長,不能對系統(tǒng)的一些bug進(jìn)行及時修復(fù),而導(dǎo)致系統(tǒng)存在安全性問題。
以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等同變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。