一種Android系統中升級包的處理方法、裝置和設備的制作方法
【專利摘要】本申請提供了一種Android系統中升級包的處理方法、裝置和設備,該方法包括:獲取當前Android系統的空中下載技術OTA包和目標Target包;判斷所述OTA包和目標Target包是否滿足合并條件,如果是,則將所述OTA包和目標Target包按照預設規則合并為合并包;將所述合并包上傳至升級服務器。采用本申請實施例的方法、裝置或設備,可以占用較少的網絡資源就實現上傳,從而提升了上傳效率,同時也降低上傳過程中的出錯幾率,降低升級服務器端的管理難度。
【專利說明】-種Android系統中升級包的處理方法、裝置和設備
【技術領域】
[0001] 本申請涉及軟件領域,特別涉及一種Android系統中升級包的處理方法、裝置和 設備。
【背景技術】
[0002] Android(安卓)系統是Google (谷歌)公司開發的基于Linux的開源移動操作平 臺,該平臺由操作系統、中間件、用戶界面和應用軟件組成。目前Android系統主要應用在 手機、平板電腦、電視機等智能設備上。一般智能設備在上市之后,漸漸會出一些Android 系統的升級版本,因為任何智能設備的系統都有可能出現BUG和需要改進的地方,所以由 升級版本解決這些問題。升級版本可以采用google谷歌公司開發的android系統版本制 作工具和軟件進行制作。一般情況下,升級可以有整個版本升級和差分升級兩種方式供用 戶選擇。
[0003] 其中,空中下載技術(0ΤΑ)包,就是用于用戶的智能設備的整個版本升級的升級 包。而差分升級需要用到差分包,就是系統的當前版本與升級版本之間差異化部分內容的 軟件包。差分包可以采用目標(Target)包進行制作。
[0004] 發明人在研究過程中發現,在將0ΤΑ包和Target包上傳至升級服務器以供用戶下 載的過程中,由于網絡情況的不穩定性,會使得上傳過著中出錯幾率較大,并且也會占用較 多的網絡資源來完成上傳過程,上傳效率比較低。
【發明內容】
[0005] 本申請所要解決的技術問題是提供一種Android系統中升級包的處理方法,用以 解決現有技術中占用較多的網絡資源而上傳效率比較的問題,同時也降低上傳過程中的出 錯幾率。
[0006] 本申請還提供了一種Android系統中升級包的處理裝置和設備,用以保證上述方 法在實際中的實現及應用。
[0007] 為了解決上述問題,本申請公開了一種Android系統中升級包的處理方法,包括:
[0008] 獲取當前Android系統的空中下載技術0ΤΑ包和目標Target包;
[0009] 判斷所述0ΤΑ包和目標Target包是否滿足合并條件,如果是,則將所述0ΤΑ包和 目標Target包按照預設規則合并為合并包;
[0010] 將所述合并包上傳至升級服務器。
[0011] 可選的,所述將所述0ΤΑ包和目標Target包按照預設規則合并為合并包,包括:
[0012] 檢測所述0ΤΑ包和目標Target包中重復的數據內容;
[0013] 刪除所述0ΤΑ包或目標Target包中的重復的數據內容;
[0014] 將剩余的數據內容確定為合并包。
[0015] 可選的,所述判斷所述0ΤΑ包和目標Target包是否滿足合并條件,為:
[0016] 判斷所述0ΤΑ包和目標Target包是否有效。
[0017] 可選的,還包括:
[0018] 將所述合并包進行壓縮;
[0019] 則所述將所述合并包上傳至F0TA的服務器端,具體為:將壓縮后的合并包上傳至 升級服務器。
[0020] 可選的,還包括:
[0021] 對所述合并包進行簽名;
[0022] 則所述將所述合并包上傳至F0TA的服務器端,具體為:將所述簽名后的合并包上 傳至升級服務器。
[0023] 本申請還提供了一種Android系統中升級包的處理裝置,包括:
[0024] 獲取模塊,用于獲取當前Android系統的空中下載技術0ΤΑ包和目標Target包;
[0025] 判斷模塊,用于判斷所述0ΤΑ包和目標Target包是否滿足合并條件;
[0026] 合并模塊,用于在所述判斷模塊的結果為是的情況下,將所述0ΤΑ包和目標 Target包按照預設規則合并為合并包;
[0027] 上傳模塊,用于將所述合并包上傳至升級服務器。
[0028] 可選的,所述合并模塊包括:
[0029] 檢測子模塊,用于檢測所述0ΤΑ包和目標Target包中重復的數據內容;
[0030] 刪除子模塊,用于刪除所述0ΤΑ包或目標Target包中的重復的數據內容;
[0031] 確定子模塊,用于將剩余的數據內容確定為合并包。
[0032] 可選的,所述判斷模塊具體用于:判斷所述0ΤΑ包和目標Target包是否有效。
[0033] 可選的,還包括:
[0034] 壓縮模塊,用于將所述合并包進行壓縮;
[0035] 則所述上傳模塊具體用于:將壓縮后的合并包上傳至升級服務器。
[0036] 可選的,還包括:
[0037] 簽名模塊,用于對所述合并包進行簽名;
[0038] 則所述上傳模塊具體用于:將簽名后的合并包上傳至升級服務器。
[0039] 本申請還提供了一種設備,包括:前述的任一項裝置。
[0040] 與現有技術相比,本申請包括以下優點:
[0041] 在本申請中,當制作出0ΤΑ包和目標Target包之后,會在0ΤΑ包和Target包滿足 合并條件的情況下,將所述0ΤΑ包和目標Target包按照預設規則合并為合并包,再上傳至 升級服務器。因為合并包只有一個,且數據量比0ΤΑ包和Target包的數據量要小很多,因 此,可以減少在上傳過程中的出錯幾率,并且可以占用較少的網絡資源就實現上傳,從而提 升上傳效率。
【專利附圖】
【附圖說明】
[0042] 為了更清楚地說明本申請實施例中的技術方案,下面將對實施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實施例,對于 本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其 他的附圖。
[0043] 圖1是本申請的一種Android系統中升級包的處理方法實施例的流程圖;
[0044] 圖2是本申請的一種Android系統中升級包的處理方法的應用場景的架構圖;
[0045] 圖3是本申請的一種Android系統中升級包的處理裝置實施例的結構框圖。
【具體實施方式】
[0046] 下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基于 本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他 實施例,都屬于本申請保護的范圍。
[0047] 本申請可用于眾多通用或專用的計算裝置環境或配置中。例如:個人計算機、服務 器計算機、手持設備或便攜式設備、平板型設備、多處理器裝置、包括以上任何裝置或設備 的分布式計算環境等等。
[0048] 本申請可以在由計算機執行的計算機可執行指令的一般上下文中描述,例如程序 模塊。一般地,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、對象、組 件、數據結構等等。也可以在分布式計算環境中實踐本申請,在這些分布式計算環境中,由 通過通信網絡而被連接的遠程處理設備來執行任務。在分布式計算環境中,程序模塊可以 位于包括存儲設備在內的本地和遠程計算機存儲介質中。
[0049] 參考圖1,示出了本申請一種Android系統中升級包的處理方法實施例的流程圖, 可以包括以下步驟:
[0050] 步驟101 :獲取當前Android系統的0ΤΑ包和Target包。
[0051] 首先,在制作智能設備中的andriod系統版本時,可以利用智能設備廠商提供的 BSP包以及andriod系統的基本系統信息包,硬件驅動等信息,并使用android制作工具制 作出0ΤΑ包以及target包。在實施例中,在制作出0ΤΑ包和target包之后,首先獲取到這 兩個包。
[0052] 步驟102 :判斷所述0ΤΑ包和Target包是否滿足合并條件,如果是,則進入步驟 103。
[0053] 對步驟101中獲取到的0ΤΑ包和Target包判斷其是否滿足合并條件,例如判斷 0ΤΑ包和Target包是否有效,如果有效,則說明滿足合并條件。具體的,因為android系統 是基于文件系統的,可以在獲取到0ΤΑ包和Target包之后,判斷在文件系統下的文件目錄 中這兩個包是否存在即可。
[0054] 可以理解的是,如果這兩個包不滿足合并條件,即這兩個包無效,則不執行后續步 驟。
[0055] 步驟103 :將所述0ΤΑ包和目標Target包按照預設規則合并為合并包。
[0056] 因為在0ΤΑ包和Target包中會有一些重復的內容,例如升級包中都會包含的 android系統的基本信息等,因此,可以將0ΤΑ包和Target包中兩份重復的內容刪除一份。 具體的,將所述0ΤΑ包和Target包按照預設規則合并為合并包,可以包括:
[0057] 步驟A1 :檢測所述0ΤΑ包和Target包中重復的數據內容。
[0058] 先比對0ΤΑ包和Target包,檢測出0ΤΑ包和Target包中重復的數據內容。
[0059] 步驟A2 :刪除0ΤΑ包或Target包中的重復的數據內容。
[0060] 將兩份重復的數據內容選擇一份進行刪除。
[0061] 步驟A3 :將剩余的數據內容確定為合并包。
[0062] 將剩余的數據內容確定為一個合并包。該合并包中包括一份0ΤΑ包和Target包重 復的數據內容(記為Α),0ΤΑ包中除了重復的數據內容之外的數據(記為A1),以及Target 包中除了重復的數據內容之外的數據(記為A2)。
[0063] 可以理解的是,為了方便升級服務器在接收到合并包之后能夠區別出哪些數據內 容為0ΤΑ包的,哪些數據內容為Target包的,可以在合并包的數據內容中加上標識,或者和 升級服務器進行約定,等等。
[0064] 步驟104 :將所述合并包上傳至升級服務器。
[0065] 再將刪除了一份重復的數據內容的合并包上傳至升級服務器,例如移動終端的空 中下載技術F0TA的服務器端。服務器接收到這兩個包之后,其中的0ΤΑ包可以直接供用戶 下載進行整個系統版本的升級,而Target包就可以由升級服務器來制作出差分包,也可以 供用戶下載進行差分升級。
[0066] 參考圖2所示,是本申請實施例在實際應用中的應用場景的框架圖。
[0067] 在不同的實施例中,在將合并包上傳至升級服務器之前,還可以包括步驟:
[0068] 步驟11 :將所述合并包進行壓縮。
[0069] 則所述將所述合并包上傳至升級服務器,具體可以為:將壓縮后的合并包上傳至 升級服務器。
[0070] 將合并包進行壓縮之后再傳送,就更能節省網絡資源。
[0071] 在不同的實施例中,在將合并包上傳至升級服務器之前,還可以包括步驟:
[0072] 步驟22 :對所述合并包進行簽名。
[0073] 則所述將所述合并包上傳至升級服務器,具體可以為:將所述簽名后的合并包上 傳至升級服務器。
[0074] 對合并包采用簽名工具進行簽名之后,可以防止合并包被偽造,從而可以提升合 并包的安全性。
[0075] 采用本發明實施例,假設0ΤΑ包和Target包都是200M,那么刪除重復內容后可能 只有200M多一點,這樣的合并包可以占用較少的網絡資源就實現上傳,從而提升了上傳效 率,同時也降低上傳過程中的出錯幾率,降低升級服務器端的管理難度。進一步的,通過壓 縮或者簽名的方式,還可以更大程度的節約網絡資源,并且提升合并包的安全性。
[0076] 對于前述的方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是 本領域技術人員應該知悉,本申請并不受所描述的動作順序的限制,因為依據本申請,某些 步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述 的實施例均屬于優選實施例,所涉及的動作和模塊并不一定是本申請所必須的。
[0077] 與上述本申請一種Android系統中升級包的處理方法實施例所提供的方法相對 應,參見圖3,本申請還提供了 Android系統中升級包的處理裝置,在本實施例中,可以包 括:
[0078] 獲取模塊301,用于獲取當前Android系統的空中下載技術0ΤΑ包和目標Target 包。
[0079] 判斷模塊302,用于判斷所述0ΤΑ包和目標Target包是否滿足合并條件。
[0080] 所述判斷模塊302具體可以用于:判斷所述0ΤΑ包和目標Target包是否有效。
[0081] 合并模塊303,用于在所述判斷模塊的結果為是的情況下,將所述OTA包和目標 Target包按照預設規則合并為合并包。
[0082] 所述合并模塊303具體可以包括:
[0083] 檢測子模塊,用于檢測所述0ΤΑ包和目標Target包中重復的數據內容;刪除子模 塊,用于刪除所述0ΤΑ包或目標Target包中的重復的數據內容;以及,確定子模塊,用于將 剩余的數據內容確定為合并包。
[0084] 上傳模塊304,用于將所述合并包上傳至升級服務器。
[0085] 在不同的實施例中,可選的,所述裝置還包括:
[0086] 壓縮模塊305,用于將所述合并包進行壓縮;
[0087] 則所述上傳模塊304具體可以用于:將壓縮后的合并包上傳至升級服務器。
[0088] 在不同的實施例中,可選的,所述裝置還包括:
[0089] 簽名模塊306,用于對所述合并包進行簽名;
[0090] 則所述上傳模塊304具體可以用于:將簽名后的合并包上傳至升級服務器。
[0091] 采用本發明實施例,假設0ΤΑ包和Target包都是200M,那么刪除重復內容后可能 只有200M多一點,這樣的合并包可以占用較少的網絡資源就實現上傳,從而提升了上傳效 率,同時也降低上傳過程中的出錯幾率,降低升級服務器端的管理難度。進一步的,通過壓 縮或者簽名的方式,還可以更大程度的節約網絡資源,并且提升合并包的安全性。
[0092] 需要說明的是,本說明書中的各個實施例均采用遞進的方式描述,每個實施例重 點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。 對于裝置類實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參 見方法實施例的部分說明即可。
[0093] 最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將 一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作 之間存在任何這種實際的關系或者順序。而且,術語"包括"、"包含"或者其任何其他變體 意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括 那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或 者設備所固有的要素。在沒有更多限制的情況下,由語句"包括一個……"限定的要素,并 不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
[0094] 以上對本申請所提供的一種Android系統中升級包的處理方法、裝置和設備進行 了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例 的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領域的一般技術人員, 依據本申請的思想,在【具體實施方式】及應用范圍上均會有改變之處,綜上所述,本說明書內 容不應理解為對本申請的限制。
【權利要求】
1. 一種Android系統中升級包的處理方法,其特征在于,包括: 獲取當前Android系統的空中下載技術0TA包和目標Target包; 判斷所述0TA包和目標Target包是否滿足合并條件,如果是,則將所述0TA包和目標 Target包按照預設規則合并為合并包; 將所述合并包上傳至升級服務器。
2. 根據權利要求1所述的方法,其特征在于,所述將所述0TA包和目標Target包按照 預設規則合并為合并包,包括: 檢測所述0TA包和目標Target包中重復的數據內容; 刪除所述0TA包或目標Target包中的重復的數據內容; 將剩余的數據內容確定為合并包。
3. 根據權利要求1所述的方法,其特征在于,所述判斷所述0TA包和目標Target包是 否滿足合并條件,為: 判斷所述0TA包和目標Target包是否有效。
4. 根據權利要求1所述的方法,其特征在于,還包括: 將所述合并包進行壓縮; 則所述將所述合并包上傳至F0TA的服務器端,具體為:將壓縮后的合并包上傳至升級 服務器。
5. 根據權利要求1所述的方法,其特征在于,還包括: 對所述合并包進行簽名; 則所述將所述合并包上傳至F0TA的服務器端,具體為:將所述簽名后的合并包上傳至 升級服務器。
6. -種Android系統中升級包的處理裝置,其特征在于,包括: 獲取模塊,用于獲取當前Android系統的空中下載技術0TA包和目標Target包; 判斷模塊,用于判斷所述0TA包和目標Target包是否滿足合并條件; 合并模塊,用于在所述判斷模塊的結果為是的情況下,將所述0TA包和目標Target包 按照預設規則合并為合并包; 上傳模塊,用于將所述合并包上傳至升級服務器。
7. 根據權利要求6所述的裝置,其特征在于,所述合并模塊包括: 檢測子模塊,用于檢測所述0TA包和目標Target包中重復的數據內容; 刪除子模塊,用于刪除所述0TA包或目標Target包中的重復的數據內容; 確定子模塊,用于將剩余的數據內容確定為合并包。
8. 根據權利要求6所述的裝置,其特征在于,所述判斷模塊具體用于:判斷所述0TA包 和目標Target包是否有效。
9. 根據權利要求6所述的裝置,其特征在于,還包括: 壓縮模塊,用于將所述合并包進行壓縮; 則所述上傳模塊具體用于:將壓縮后的合并包上傳至升級服務器。
10. -種設備,其特征在于,包括:權利要求6?9任一項所述的裝置。
【文檔編號】H04L29/08GK104049998SQ201410276977
【公開日】2014年9月17日 申請日期:2014年6月19日 優先權日:2014年6月19日
【發明者】朱春雷, 王繼爭, 張巍華, 陳偉, 劉中洲, 李曉萍 申請人:中科創達軟件股份有限公司