移動終端的應(yīng)用程序更新方法與移動終端的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動終端技術(shù)領(lǐng)域,尤其涉及一種移動終端的應(yīng)用程序更新方法與移動終端。
【背景技術(shù)】
[0002]隨著移動終端設(shè)備的普及,越來越多的移動應(yīng)用(如,微信、支付寶等)應(yīng)運而生,為人們的日常生活提供便利。
[0003]傳統(tǒng)的移動應(yīng)用在安裝時,將應(yīng)用安裝包中的靜態(tài)文件安裝到一個存儲區(qū)域中,由于系統(tǒng)本身的限制,只能讀取這個存儲區(qū)域里面的文件,但不能對這個存儲區(qū)域里面的文件進行更改。
[0004]這種方式導(dǎo)致了在需要更新時,用戶不得不重新下載一個新的完整的應(yīng)用安裝包,并替換舊的應(yīng)用安裝包,使得整個更新過程不夠高效,造成大量冗余文件被反復(fù)下載。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提出一種移動終端的應(yīng)用程序更新方法與移動終端,能夠提高移動終端的應(yīng)用程序的更新效率。
[0006]本發(fā)明實施例提供一種移動終端的應(yīng)用程序更新方法,包括:
[0007]在初次啟動應(yīng)用程序時,為所述應(yīng)用程序分配一個靜態(tài)文件存儲空間,并將所述應(yīng)用程序的安裝包中的靜態(tài)文件復(fù)制到所述靜態(tài)文件存儲空間中進行存儲;
[0008]進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新;
[0009]當(dāng)需要進行更新時,從服務(wù)器中下載最新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件,以完成所述應(yīng)用程序的更新。
[0010]在一種實施方式中,所述進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新,具體包括:
[0011 ]向服務(wù)器發(fā)送索引文件獲取請求,從服務(wù)器中獲取第一索引文件;所述第一索引文件記載了當(dāng)前存儲在所述服務(wù)器中的所述應(yīng)用程序的每個靜態(tài)文件的版本號;
[0012]將所述第一索引文件與存儲在所述移動終端的第二索引文件對比,當(dāng)所述第一索引文件與第二索引文件的內(nèi)容不完全一致時,判定需要進行更新;所述第二索引文件記載了當(dāng)前存儲在移動終端的所述應(yīng)用程序的每個靜態(tài)文件的版本號;
[0013]所述當(dāng)需要進行更新時,從服務(wù)器中下載最新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件,以完成所述應(yīng)用程序的更新,具體包括:
[0014]通過--對比所述第一索引文件與所述第二索引文件中同名的兩個靜態(tài)文件的版本號,查找出需要更新的靜態(tài)文件和/或新增的靜態(tài)文件;
[0015]從所述服務(wù)器中下載需要更新的靜態(tài)文件和/或新增的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件;
[0016]將所述第一索引文件覆蓋所述第二索引文件,以更新所述第二索引文件。
[0017]在另一種實施方式中,所述進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新,具體包括:
[0018]讀取存儲在移動終端的第二索引文件;所述第二索引文件記載了當(dāng)前存儲在所述移動終端的所述應(yīng)用程序的每個靜態(tài)文件的版本號以及所述第二索引文件的內(nèi)容修改時間;
[0019]將所述第二索引文件的內(nèi)容修改時間發(fā)送到服務(wù)器,由所述服務(wù)器將所述第二索引文件的內(nèi)容修改時間與第一索引文件的內(nèi)容修改時間進行對比;所述第一索引文件存儲在所述服務(wù)器中,并記載了當(dāng)前存儲在所述服務(wù)器中的所述應(yīng)用程序的每個靜態(tài)文件的版本號以及所述第一索引文件的內(nèi)容修改時間;
[0020]當(dāng)獲取到所述服務(wù)器返回的內(nèi)容修改時間不一致的信息時,判定需要進行更新;
[0021]所述當(dāng)需要進行更新時,從服務(wù)器中下載最新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件,以完成所述應(yīng)用程序的更新,具體包括:
[0022]當(dāng)需要進行更新時,從服務(wù)器中獲取所述第一索引文件;
[0023]通過一一對比所述第一索引文件與所述第二索引文件中同名的兩個靜態(tài)文件的版本號,查找出需要更新的靜態(tài)文件和/或新增的靜態(tài)文件;
[0024]從所述服務(wù)器中下載需要更新的靜態(tài)文件和/或新增的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件;
[0025]將所述第一索引文件覆蓋所述第二索引文件,以更新所述第二索引文件。
[0026]在另一種實施方式中,所述進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新,具體包括:
[0027]向服務(wù)器發(fā)送修改時間獲取請求,獲取存儲在服務(wù)器中的第一索引文件的內(nèi)容修改時間;所述第一索引文件記載了當(dāng)前存儲在所述服務(wù)器中的所述應(yīng)用程序的每個靜態(tài)文件的版本號以及所述第一索引文件的內(nèi)容修改時間;
[0028]讀取存儲在移動終端的第二索引文件;所述第二索引文件記載了當(dāng)前存儲在所述移動終端的所述應(yīng)用程序的每個靜態(tài)文件的版本號以及所述第二索引文件的內(nèi)容修改時間;
[0029]對比所述第一索引文件的內(nèi)容修改時間與所述第二索引文件的內(nèi)容修改時間,當(dāng)兩者不一致時,判定需要進行更新;
[0030]所述當(dāng)需要進行更新時,從服務(wù)器中下載最新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件,以完成所述應(yīng)用程序的更新,具體包括:
[0031]當(dāng)需要進行更新時,向服務(wù)器發(fā)送索引文件獲取請求,從服務(wù)器中獲取所述第一索引文件;
[0032]通過一一對比所述第一索引文件與所述第二索引文件中同名的兩個靜態(tài)文件的版本號,查找出需要更新的靜態(tài)文件和/或新增的靜態(tài)文件;
[0033]從所述服務(wù)器中下載需要更新的靜態(tài)文件和/或新增的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件;
[0034]將所述第一索引文件覆蓋所述第二索引文件,以更新所述第二索引文件。
[0035]作為更優(yōu)選地,所述版本號為所述靜態(tài)文件的MD5值。
[0036]作為更優(yōu)選地,所述進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新具體是在達到預(yù)設(shè)的聯(lián)網(wǎng)校驗時機時,進行聯(lián)網(wǎng)校驗,判斷是否需要進行更新。
[0037]作為更優(yōu)選地,所述進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新具體是在達到預(yù)設(shè)的聯(lián)網(wǎng)校驗時機時,且當(dāng)前時間距離上次聯(lián)網(wǎng)校驗的時間超過預(yù)設(shè)的時間間隔時,進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新。
[0038]作為更優(yōu)選地,所述聯(lián)網(wǎng)校驗時機為啟動所述應(yīng)用程序時。
[0039]作為更優(yōu)選地,所述移動終端的應(yīng)用程序更新方法還包括:
[0040]判斷是否成功將所述應(yīng)用程序的安裝包中所有的靜態(tài)文件復(fù)制到所述靜態(tài)文件存儲空間中進行存儲;
[0041 ]當(dāng)復(fù)制成功時,記錄一個復(fù)制成功標(biāo)識;
[0042]所述當(dāng)需要進行更新時,從服務(wù)器中下載最新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件,以完成所述應(yīng)用程序的更新,具體包括:
[0043]當(dāng)需要進行更新時,判斷是否存在所述復(fù)制成功標(biāo)識;
[0044]當(dāng)不存在所述復(fù)制成功標(biāo)識時,禁止從服務(wù)器中下載需要更新的靜態(tài)文件到所述靜態(tài)文件存儲空間中;
[0045]當(dāng)存在所述復(fù)制成功標(biāo)識時,從服務(wù)器中下載需要更新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,以完成所述應(yīng)用程序的更新。
[0046]作為更優(yōu)選地,所述移動終端的應(yīng)用程序更新方法,還包括:
[0047]在每次啟動所述應(yīng)用程序時,判斷是否存在所述復(fù)制成功標(biāo)識;
[0048]當(dāng)存在所述復(fù)制成功標(biāo)識時,讀取所述靜態(tài)文件存儲空間中的靜態(tài)文件;
[0049]當(dāng)不存在所述復(fù)制成功標(biāo)識時,讀取所述安裝包中的靜態(tài)文件。
[0050]相應(yīng)地,本發(fā)明還提供一種移動終端,包括:
[0051]存儲空間分配模塊,用于在初次啟動應(yīng)用程序時,為所述應(yīng)用程序分配一個靜態(tài)文件存儲空間,并將所述應(yīng)用程序的安裝包中的靜態(tài)文件復(fù)制到所述靜態(tài)文件存儲空間中進行存儲;
[0052]聯(lián)網(wǎng)校驗?zāi)K,用于進行聯(lián)網(wǎng)校驗,以判斷是否需要進行更新;
[0053]應(yīng)用程序更新模塊,用于當(dāng)需要進行更新時,從服務(wù)器中下載最新的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件,以完成所述應(yīng)用程序的更新。
[0054]在一種實施方式中,所述聯(lián)網(wǎng)校驗?zāi)K具體包括:
[0055]索引文件獲取單元,用于向服務(wù)器發(fā)送索引文件獲取請求,從服務(wù)器中獲取第一索引文件;所述第一索引文件記載了當(dāng)前存儲在所述服務(wù)器中的所述應(yīng)用程序的每個靜態(tài)文件的版本號;
[0056]索引文件對比單元,用于將所述第一索引文件與存儲在所述移動終端的第二索引文件對比,當(dāng)所述第一索引文件與第二索引文件的內(nèi)容不完全一致時,判定需要進行更新;所述第二索引文件記載了當(dāng)前存儲在移動終端的所述應(yīng)用程序的每個靜態(tài)文件的版本號;
[0057]所述應(yīng)用程序更新模塊具體包括:
[0058]版本號對比單元,用于通過一一對比所述第一索引文件與所述第二索引文件中同名的兩個靜態(tài)文件的版本號,查找出需要更新的靜態(tài)文件和/或新增的靜態(tài)文件;
[0059]靜態(tài)文件下載單元,用于從所述服務(wù)器中下載需要更新的靜態(tài)文件和/或新增的靜態(tài)文件到所述靜態(tài)文件存儲空間中,并覆蓋所述靜態(tài)文件存儲空間中的同名的靜態(tài)文件;
[0060]索引文件更新單元,用于將所述第一索引文件覆蓋所述第二索引文件,以更新所述第二索引文件。
[0061 ]在另一種實施方式中,所述聯(lián)網(wǎng)校驗?zāi)K具體包括:
[0062]索引文件讀取單元,用于讀取存儲在移動終端的第二索引文件;所述第二索引文件記載了當(dāng)前存儲在所述移動終端的所述應(yīng)用程序的每個靜態(tài)文件的版本號以及所述第二索引文件的內(nèi)容修改時間;
[0063]修改時間發(fā)送單元,用于將所述第二索引文件的內(nèi)容修改時間發(fā)送到服務(wù)器,由所述服務(wù)器將所述第二索引文件的內(nèi)容修改時間與第一索引文件的內(nèi)容修改時間進行對比;所述第一索引文件存儲在所述服務(wù)器中,并記載了當(dāng)前存儲在所述服務(wù)器中的所述應(yīng)用程序的每個靜態(tài)文件的版本號以及所述第一索弓I文件的內(nèi)容修改時間;
[0064]更新判定單元,用于當(dāng)獲取到所述服務(wù)器返回的內(nèi)容修改時間不一致的信息時,判定需要進行更新;
[0065]所述應(yīng)用程序更新模塊具體包括:
[0066]索引文件獲取單元,用于當(dāng)需要進行更新時,向服務(wù)器發(fā)送索引文件獲取請求,從服務(wù)器中獲取所述第一索引文件;
[0067]版本號對比單元,用于通過一一對比所述第一索引文件與所述第二索引文件中同名的兩個靜態(tài)文件的版本號,查找出需要更新的靜態(tài)文件和/或新增的靜態(tài)文件;
[0068]靜態(tài)文件下載單元,用于從所述服務(wù)器中下載需要更