本發(fā)明涉及升級技術(shù),尤其涉及一種系統(tǒng)升級方法及終端。
背景技術(shù):
本申請發(fā)明人在實現(xiàn)本申請實施例技術(shù)方案的過程中,至少發(fā)現(xiàn)相關(guān)技術(shù)中存在如下技術(shù)問題:
隨著智能終端的普及,對智能終端如手機進行系統(tǒng)升級是用戶生活中常常會遇到的事情,具體的一種場景為:碰到操作系統(tǒng)大版本的FOTA升級的場景,對于這種場景如何來處理?例如將火狐V1.3系統(tǒng)升級到火狐V2.0系統(tǒng),火狐V2.0系統(tǒng)相比較于之前的系統(tǒng),其FOTA差分包比較大,如果按照現(xiàn)有技術(shù)中安卓(Android)常用的做法,是將FOTA差分包復(fù)制到手機的緩存(cache)分區(qū)中進行存儲,然后在cache分區(qū)進行升級操作。火狐V2.0系統(tǒng)相比于之前的系統(tǒng),往往存在FOTA差分包比較大的情況,甚至?xí)^cache分區(qū)的大小,由于cache分區(qū)的存儲空間不夠容納FOTA差分包,則必然直接導(dǎo)致FOTA升級失敗。然而,相關(guān)技術(shù)中,對于這個問題,并未提供有效的解決方案。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明實施例希望提供一種系統(tǒng)升級方法及終端,至少解決了現(xiàn)有技術(shù)存在的問題。
本發(fā)明實施例的技術(shù)方案是這樣實現(xiàn)的:
本發(fā)明實施例的一種系統(tǒng)升級方法,所述方法包括:
讀取升級包的目標(biāo)存儲分區(qū),所述目標(biāo)存儲分區(qū)為非緩存cache分區(qū);
檢測所述升級包的存儲容量是否小于所述目標(biāo)存儲分區(qū),得到判斷結(jié)果;
所述判斷結(jié)果為所述升級包的存儲容量小于所述目標(biāo)存儲分區(qū)時,將所述 升級包下載存儲至所述目標(biāo)存儲分區(qū);
檢測到所述升級包下載存儲結(jié)束,系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理。
上述方案中,所述目標(biāo)存儲分區(qū)包括至少一個待下載存儲分區(qū);
所述讀取升級包的目標(biāo)存儲分區(qū),包括:
獲取優(yōu)先級信息;
根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第一優(yōu)先級的待下載存儲分區(qū),并將所述第一優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū)。
上述方案中,所述判斷結(jié)果為所述升級包的存儲容量小于所述目標(biāo)存儲分區(qū)時,將所述升級包下載存儲至所述目標(biāo)存儲分區(qū),包括:
所述升級包的存儲容量小于所述第一優(yōu)先級的待下載存儲分區(qū)時,將所述升級包下載存儲至所述第一優(yōu)先級的待下載存儲分區(qū)。
上述方案中,所述系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理,包括:
所述系統(tǒng)重啟并進入recovery模式,掛載所述第一優(yōu)先級的待下載存儲分區(qū),從所述第一優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
上述方案中,所述方法還包括:
檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第一優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
上述方案中,所述方法還包括:
所述目標(biāo)存儲分區(qū)為所述第一優(yōu)先級的待下載存儲分區(qū)時,所述判斷結(jié)果為所述升級包的存儲容量大于所述第一優(yōu)先級的待下載存儲分區(qū),根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第二優(yōu)先級的待下載存儲分區(qū),并將所述第二優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū);
所述將所述升級包下載存儲至所述目標(biāo)存儲分區(qū),包括:
將所述升級包下載存儲至所述第二優(yōu)先級的待下載存儲分區(qū)。
上述方案中,所述系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理,包括:
所述系統(tǒng)重啟并進入recovery模式,掛載所述第二優(yōu)先級的待下載存儲分區(qū),從所述第二優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
上述方案中,所述方法還包括:
檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第二優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
本發(fā)明實施例的一種終端,所述終端包括:
讀取單元,用于讀取升級包的目標(biāo)存儲分區(qū),所述目標(biāo)存儲分區(qū)為非緩存cache分區(qū);
第一檢測單元,用于檢測所述升級包的存儲容量是否小于所述目標(biāo)存儲分區(qū),得到判斷結(jié)果;
下載單元,用于所述判斷結(jié)果為所述升級包的存儲容量小于所述目標(biāo)存儲分區(qū)時,將所述升級包下載存儲至所述目標(biāo)存儲分區(qū);
第一處理單元,用于檢測到所述升級包下載存儲結(jié)束,系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理。
上述方案中,所述目標(biāo)存儲分區(qū)包括至少一個待下載存儲分區(qū);
所述讀取單元,進一步用于獲取優(yōu)先級信息,根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第一優(yōu)先級的待下載存儲分區(qū),并將所述第一優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū)。
上述方案中,所述下載單元,進一步用于所述升級包的存儲容量小于所述第一優(yōu)先級的待下載存儲分區(qū)時,將所述升級包下載存儲至所述第一優(yōu)先級的待下載存儲分區(qū)。
上述方案中,所述第一處理單元,進一步用于所述系統(tǒng)重啟并進入recovery模式,掛載所述第一優(yōu)先級的待下載存儲分區(qū),從所述第一優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
上述方案中,所述第一處理單元,進一步用于檢測到所述系統(tǒng)升級處理結(jié) 束,在所述recovery模式下刪除存儲于所述第一優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
上述方案中,所述讀取單元,進一步用于所述目標(biāo)存儲分區(qū)為所述第一優(yōu)先級的待下載存儲分區(qū)時,所述判斷結(jié)果為所述升級包的存儲容量大于所述第一優(yōu)先級的待下載存儲分區(qū),根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第二優(yōu)先級的待下載存儲分區(qū),并將所述第二優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū);
所述下載單元,進一步用于將所述升級包下載存儲至所述第二優(yōu)先級的待下載存儲分區(qū)。
上述方案中,所述第一處理單元,進一步用于所述系統(tǒng)重啟并進入recovery模式,掛載所述第二優(yōu)先級的待下載存儲分區(qū),從所述第二優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
上述方案中,所述第一處理單元,進一步用于檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第二優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
本發(fā)明實施例的一種系統(tǒng)升級方法,所述方法包括:讀取升級包的目標(biāo)存儲分區(qū),所述目標(biāo)存儲分區(qū)為非緩存cache分區(qū);檢測所述升級包的存儲容量是否小于所述目標(biāo)存儲分區(qū),得到判斷結(jié)果;所述判斷結(jié)果為所述升級包的存儲容量小于所述目標(biāo)存儲分區(qū)時,將所述升級包下載存儲至所述目標(biāo)存儲分區(qū);檢測到所述升級包下載存儲結(jié)束,系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理。
采用本發(fā)明實施例,對非緩存cache分區(qū)這種存儲空間比較大的區(qū)域作為目標(biāo)存儲分區(qū),在由于版本差異升級所需的升級包存儲容量比較大的情況下,也可以順利實現(xiàn)升級處理服務(wù),從而智能終端的升級提供更多便利。
附圖說明
圖1為本發(fā)明方法實施例一的實現(xiàn)流程示意圖;
圖2為本發(fā)明方法實施例二的實現(xiàn)流程示意圖;
圖3為本發(fā)明方法實施例三的實現(xiàn)流程示意圖;
圖4為本發(fā)明終端實施例一的組成結(jié)構(gòu)示意圖;
圖5為應(yīng)用本發(fā)明實施例的一應(yīng)用場景的示意圖;
圖6為應(yīng)用本發(fā)明實施例的另一應(yīng)用場景的示意圖。
具體實施方式
下面結(jié)合附圖對技術(shù)方案的實施作進一步的詳細描述。
方法實施例一:
本發(fā)明實施例的一種系統(tǒng)升級方法,如圖1所示,所述方法包括:
步驟101、讀取升級包的目標(biāo)存儲分區(qū),所述目標(biāo)存儲分區(qū)為非緩存cache分區(qū);
步驟102、檢測所述升級包的存儲容量是否小于所述目標(biāo)存儲分區(qū),得到判斷結(jié)果;
步驟103、所述判斷結(jié)果為所述升級包的存儲容量小于所述目標(biāo)存儲分區(qū)時,將所述升級包下載存儲至所述目標(biāo)存儲分區(qū);
步驟104、檢測到所述升級包下載存儲結(jié)束,系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理。
方法實施例二:
基于方法實施例一,本發(fā)明實施例的一種系統(tǒng)升級方法,所述目標(biāo)存儲分區(qū)包括至少一個待下載存儲分區(qū);如圖2所示,所述讀取升級包的目標(biāo)存儲分區(qū),包括:
步驟201、獲取優(yōu)先級信息;
步驟202、根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第一優(yōu)先級的待下載存儲分區(qū),并將所述第一優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū)。
在本實施例一實施方式中,所述判斷結(jié)果為所述升級包的存儲容量小于所 述目標(biāo)存儲分區(qū)時,將所述升級包下載存儲至所述目標(biāo)存儲分區(qū),包括:所述升級包的存儲容量小于所述第一優(yōu)先級的待下載存儲分區(qū)時,將所述升級包下載存儲至所述第一優(yōu)先級的待下載存儲分區(qū)。
在本實施例一實施方式中,所述系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理,包括:所述系統(tǒng)重啟并進入recovery模式,掛載所述第一優(yōu)先級的待下載存儲分區(qū),從所述第一優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
在本實施例一實施方式中,所述方法還包括:檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第一優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
方法實施例三:
基于方法實施例一,本發(fā)明實施例的一種系統(tǒng)升級方法,所述目標(biāo)存儲分區(qū)包括至少一個待下載存儲分區(qū),所述目標(biāo)存儲分區(qū)為所述第一優(yōu)先級的待下載存儲分區(qū)時,所述判斷結(jié)果為所述升級包的存儲容量大于所述第一優(yōu)先級的待下載存儲分區(qū),如圖3所示,所述讀取升級包的目標(biāo)存儲分區(qū),包括:
步驟301、獲取優(yōu)先級信息;
步驟302、根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第二優(yōu)先級的待下載存儲分區(qū),并將所述第二優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū)。
在本實施例一實施方式中,所述將所述升級包下載存儲至所述目標(biāo)存儲分區(qū),包括:將所述升級包下載存儲至所述第二優(yōu)先級的待下載存儲分區(qū)。
在本實施例一實施方式中,所述系統(tǒng)重啟并進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理,包括:所述系統(tǒng)重啟并進入recovery模式,掛載所述第二優(yōu)先級的待下載存儲分區(qū),從所述第二優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
在本實施例一實施方式中,所述方法還包括:檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第二優(yōu)先級的待下載存儲分區(qū)中的 所述升級包。
這里需要指出的是,上述第一模式可以為recovery模式,上述第一優(yōu)先級的待下載存儲分區(qū)可以為用戶數(shù)據(jù)(userdata)分區(qū)這種終端內(nèi)置的用戶分區(qū),(后續(xù)userdata分區(qū)也簡稱為用戶分區(qū)),上述第二優(yōu)先級的待下載存儲分區(qū)可以為SD卡或其他外置存儲卡的區(qū)域。
這里需要指出的是,目標(biāo)存儲分區(qū)的類型至少包括:終端內(nèi)置的用戶分區(qū)、外置存儲卡中的至少一種。相應(yīng)的,升級包也可以區(qū)別于上述將升級包完整的存儲于至少一個待下載存儲分區(qū)中任意一個區(qū)域的實施例,是將升級包按照預(yù)設(shè)的比例得到的部分內(nèi)容分別存儲于至少一個待下載存儲分區(qū)中的多個區(qū)域中,總和構(gòu)成一個完整的升級包,在后續(xù)進入recovery模式時需要先后或同時掛載這些存儲有升級包部分內(nèi)容的多個區(qū)域,以便從中讀取升級包部分內(nèi)容,按照預(yù)設(shè)裝配條件重新組裝成一個完整的升級包,之后,根據(jù)完整的升級包進行升級處理。
而上述將升級包完整的存儲于至少一個待下載存儲分區(qū)中任意一個區(qū)域的實施例,如何確定優(yōu)先存儲的區(qū)域,是按照上述優(yōu)先級信息來確定的,按照優(yōu)先級信息中的存儲分區(qū)優(yōu)先級順序,分別將升級包的存儲容量與至少一個待下載存儲分區(qū)中的一個區(qū)域進行比對,直至找到合適的一個待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū),來存儲升級包完整的內(nèi)容,在后續(xù)進入recovery模式時需要掛載這個存儲有升級包完整內(nèi)容的一個區(qū)域,以便從中讀取升級包完整的內(nèi)容,之后,根據(jù)完整的升級包進行升級處理。
終端實施例一:
本發(fā)明實施例的一種終端,如圖4所示,所述終端包括:
讀取單元11,用于讀取升級包的目標(biāo)存儲分區(qū),所述目標(biāo)存儲分區(qū)為非緩存cache分區(qū);第一檢測單元12,用于檢測所述升級包的存儲容量是否小于所述目標(biāo)存儲分區(qū),得到判斷結(jié)果;下載單元13,用于所述判斷結(jié)果為所述升級包的存儲容量小于所述目標(biāo)存儲分區(qū)時,將所述升級包下載存儲至所述目標(biāo)存儲分區(qū);第一處理單元14,用于檢測到所述升級包下載存儲結(jié)束,系統(tǒng)重啟并 進入第一模式,從所述目標(biāo)存儲分區(qū)提取所述升級包進行系統(tǒng)升級處理。
在本實施例一實施方式中,所述目標(biāo)存儲分區(qū)包括至少一個待下載存儲分區(qū);所述讀取單元,進一步用于獲取優(yōu)先級信息,根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第一優(yōu)先級的待下載存儲分區(qū),并將所述第一優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū)。
在本實施例一實施方式中,所述下載單元,進一步用于所述升級包的存儲容量小于所述第一優(yōu)先級的待下載存儲分區(qū)時,將所述升級包下載存儲至所述第一優(yōu)先級的待下載存儲分區(qū)。
在本實施例一實施方式中,所述第一處理單元,進一步用于所述系統(tǒng)重啟并進入recovery模式,掛載所述第一優(yōu)先級的待下載存儲分區(qū),從所述第一優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
在本實施例一實施方式中,所述第一處理單元,進一步用于檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第一優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
在本實施例一實施方式中,所述讀取單元,進一步用于所述目標(biāo)存儲分區(qū)為所述第一優(yōu)先級的待下載存儲分區(qū)時,所述判斷結(jié)果為所述升級包的存儲容量大于所述第一優(yōu)先級的待下載存儲分區(qū),根據(jù)所述優(yōu)先級信息從所述至少一個待下載存儲分區(qū)中選取作為第二優(yōu)先級的待下載存儲分區(qū),并將所述第二優(yōu)先級的待下載存儲分區(qū)作為所述目標(biāo)存儲分區(qū);
所述下載單元,進一步用于將所述升級包下載存儲至所述第二優(yōu)先級的待下載存儲分區(qū)。
在本實施例一實施方式中,所述第一處理單元,進一步用于所述系統(tǒng)重啟并進入recovery模式,掛載所述第二優(yōu)先級的待下載存儲分區(qū),從所述第二優(yōu)先級的待下載存儲分區(qū)中讀取所述升級包進行系統(tǒng)升級處理。
在本實施例一實施方式中,所述第一處理單元,進一步用于檢測到所述系統(tǒng)升級處理結(jié)束,在所述recovery模式下刪除存儲于所述第二優(yōu)先級的待下載存儲分區(qū)中的所述升級包。
以下采用具體應(yīng)用場景對上述本發(fā)明實施例進行說明如下:
本應(yīng)用場景采用本發(fā)明實施例具體為一種FOTA升級的方案,對于這個應(yīng)用場景,以終端為智能手機為例,采用現(xiàn)有Android的FOTA升級技術(shù),是在手機要進行FOTA升級時,先將FOTA差分包下載下來,然后復(fù)制到手機的cache分區(qū);手機自動重啟到recovery模式下,對cache分區(qū)的FOTA差分包進行處理,進行FOTA升級。
采用現(xiàn)有Android的FOTA升級技術(shù)所存在的問題是:因為cache分區(qū)用戶是不可見的,所以通常cache分區(qū)開的比較小,當(dāng)操作系統(tǒng)大版本升級時,其FOTA差分包大小肯定會大于cache分區(qū)的大小,從而導(dǎo)致手機無法進行大版本的FOTA升級,如果解析升級包失敗,則直接導(dǎo)致升級失敗。目前需要解決的問題是能夠正確存儲升級包,以避免升級失敗,可見,從存儲的區(qū)域能正確解析出升級包是非常重要的,這里需要指出的是,解析獲得升級包的重要性還在于,在確定他人是否侵權(quán)時,由于采用userdata分區(qū)或SD卡這種外置存儲區(qū)域,二者都是可見的分區(qū),就可以通過讀取對方手機的內(nèi)置或外置存儲區(qū)域中的分區(qū)信息和FOTA的差分包大小,通過解析升級的log信息來判斷對方手機是否已侵權(quán)。
對應(yīng)上述問題,本應(yīng)用場景采用本發(fā)明實施例,即便當(dāng)FOTA差分包比較大的情況,手機仍然可以正確存儲,正確解析FOTA差分包,從而避免升級失敗,還能帶來幫助確權(quán)等一系列效果。
應(yīng)用場景一:
手機的用戶數(shù)據(jù)userdata分區(qū),是用戶可見的分區(qū),該分區(qū)一般稱之為用戶空間,其剩余大小表示用戶可用于拍照、下載歌曲等用戶操作的空間大小。一般手機該userdata分區(qū)空間都會比較大,會是cache分區(qū)的5-8倍大小,可以作為目標(biāo)存儲區(qū)域使用。FOTA升級步驟如下:
步驟401、通過FOTA應(yīng)用下載FOTA差分包到userdata分區(qū);
步驟402、當(dāng)FOTA差分包下載完后,手機自動重啟進入recovery模式;
步驟403、在recovery模式下,掛載userdatata分區(qū);
步驟404、在recovery模式下,讀取userdata分區(qū)里的FOTA差分包后,進行FOTA升級操作;
步驟405、當(dāng)FOTA升級操作完后,在recovery模式下刪除userdata分區(qū)里的FOTA差分包。
步驟406、手機自動重啟。
應(yīng)用場景二、
上述應(yīng)用場景一僅僅以userdata分區(qū)為例,外置SD卡(或稱sdcard)當(dāng)然也可以作為目標(biāo)存儲區(qū)域使用。如果用戶的userdata分區(qū)剩余空間不足的話,用戶插入的外置sdcard如何還有剩余空間,就將FOTA差分包下載到sdcard上,在recovery模式下,掛載sdcard分區(qū),讀取sdcard分區(qū)里的FOTA差分包進行FOTA升級。如圖5所示,本應(yīng)用場景二既包括userdata分區(qū),又包括外置SD,都可以作為目標(biāo)存儲區(qū)域的情況,F(xiàn)OTA升級流程如下:
步驟501、通過FOTA應(yīng)用程序獲取FOTA服務(wù)器的差分包大小為A;
步驟502、獲取手機userdata的剩余空間大小為B;
步驟503、比較A和B的大小,如果A<B,則執(zhí)行步驟504;如果A>B,則執(zhí)行步驟505;
步驟504、將差分包下載存儲到userdata分區(qū);之后,轉(zhuǎn)入步驟509;
步驟505、獲取外置sdcard的剩余空間大小為C;
步驟506、比較A和C的大?。蝗绻鸄<C,則執(zhí)行步驟507;如果A>C,則執(zhí)行步驟508;
步驟507、將差分包下載存儲到sdcard里;
步驟508、提示用戶刪除不用的數(shù)據(jù),或者插入另外一張剩余空間比A大的sdcard;
步驟509、當(dāng)下載存儲完差分包后,手機重啟進入recovery模式。
應(yīng)用場景三:
本應(yīng)用場景三的userdata分區(qū)及外置SD卡(或稱sdcard)都可以作為目標(biāo)存儲區(qū)域使用。如果用戶的userdata分區(qū)剩余空間不足的話,用戶插入的外置 sdcard如何還有剩余空間,就將FOTA差分包下載到sdcard上,在recovery模式下,掛載sdcard分區(qū),讀取sdcard分區(qū)里的FOTA差分包進行FOTA升級。如圖6所示,本應(yīng)用場景既包括userdata分區(qū),又包括外置SD,都可以作為目標(biāo)存儲區(qū)域的情況,recovery模式下的流程,包括:
步驟601、recorey模式下加載userdata分區(qū);
步驟602、判斷userdata分區(qū)里是否有FOTA差分包,如果是,則執(zhí)行步驟605;否則,執(zhí)行步驟603;
步驟603、userdata分區(qū)里沒有FOTA差分包,加載sdcard分區(qū);
步驟604、判斷sdcard分區(qū)是否有FOTA差分包,sdcard分區(qū)有FOTA差分包時,執(zhí)行步驟605;
步驟605、有FOTA差分包的情況下,傳遞正確的差分包文件路徑,進行FOTA的升級處理;
步驟606、手機FOTA升級成功后,自動刪除FOTA升級對應(yīng)的FOTA差分包。
這里需要指出的是,還有一種具體應(yīng)用場景,是將大的FOTA差分包,拆分成一個個小的FOTA差分包,這樣采用Android原生的FOTA升級方案進行多次升級,也能達到一定目的,用戶需要多次下載和升級。
本應(yīng)用場景采用本發(fā)明實施例所能達到的有益效果為:
對于手機固件升級時升級包比較大的情況,比如采用FOTA的軟件版本升級遇到的針對較大的FOTA差分包的情況,可以利用用戶的有效存儲空間來進行FOTA升級。而且,同樣兼容Android原生的FOTA升級方案,且可以與Android原生的FOTA升級方案同時疊加使用,在使用效果上更好。應(yīng)用本發(fā)明實施例到P821A20手機上,已經(jīng)實現(xiàn)了火狐系統(tǒng)大版本的FOTA升級,從火狐的V1.3系統(tǒng)升級到V2.0系統(tǒng)。
以下對本文涉及的縮略語說明如下:
MB:MByte,兆字節(jié);
GB:Gigabyte,吉字節(jié);
FOTA:Firmware Over-the-Air移動終端空中下載軟件升級技術(shù);
本發(fā)明實施例所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明實施例的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。這樣,本發(fā)明實施例不限制于任何特定的硬件和軟件結(jié)合。
相應(yīng)的,本發(fā)明實施例還提供一種計算機存儲介質(zhì),其中存儲有計算機程序,該計算機程序用于執(zhí)行本發(fā)明實施例的系統(tǒng)升級方法。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。