亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

程序更新、啟動(dòng)方法及其裝置制造方法

文檔序號(hào):6548996閱讀:327來源:國知局
程序更新、啟動(dòng)方法及其裝置制造方法
【專利摘要】本發(fā)明提供一種程序更新方法及其裝置,一種程序啟動(dòng)方法及其裝置。目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置,在更新時(shí),首先將更新包獲取到本地;然后根據(jù)更新包獲取第二版本程序文件并保存在本地的第二儲(chǔ)存位置;同時(shí)設(shè)置配置文件,在所述配置文件中保存第一版本信息和第二版本信息,分別指向所述第一版本程序文件和所述第二版本程序文件。使舊有版本的程序文件不受更新影響,并且在啟動(dòng)時(shí),可通過所述配置文件的版本信息選擇以所述第一版本程序文件或者所述第二版本程序文件啟動(dòng)所述目標(biāo)程序。如果程序更新失敗,也可以通過所述配置文件選擇以舊有版本的程序文件啟動(dòng),維持目標(biāo)程序的正常運(yùn)作,解決用戶的急需。
【專利說明】程序更新、啟動(dòng)方法及其裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)程序控制的【技術(shù)領(lǐng)域】,特別是涉及一種程序更新方法以及一種程序更新裝置,一種程序啟動(dòng)方法以及一種程序啟動(dòng)裝置。
【背景技術(shù)】
[0002]現(xiàn)有的計(jì)算機(jī)軟件程序升級(jí)方式,通常都是下載更新包到本地,然后點(diǎn)擊打開更新包,更新包運(yùn)行時(shí),會(huì)將本地的舊有的文件覆蓋來完成升級(jí)。
[0003]但是,這種升級(jí)方法存在一個(gè)問題,就是在出現(xiàn)覆蓋失敗的情況下(比如某些文件被占用了),就會(huì)導(dǎo)致部分文件升級(jí)不了,使升級(jí)失敗,并且舊有程序也被破壞而不能正常啟動(dòng),甚至出現(xiàn)崩潰等異常行為。

【發(fā)明內(nèi)容】

[0004]針對現(xiàn)有程序升級(jí)方法升級(jí)不穩(wěn)定會(huì)導(dǎo)致程序不能正常啟動(dòng)的問題,本發(fā)明提出一種程序更新方法及其裝置,能夠在程序升級(jí)失敗的情況下,使用戶可以照常運(yùn)行程序。
[0005]一種程序更新方法,包括以下步驟:
[0006]獲取目標(biāo)程序的更新包,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的
第一儲(chǔ)存位置;
[0007]根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;
[0008]在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,并且所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
[0009]一種程序更新裝置,包括:
[0010]更新包獲取模塊,用于獲取目標(biāo)程序的更新包,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置;
[0011]更新模塊,用于根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;
[0012]配置文件設(shè)置模塊,用于在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,并且所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
[0013]本發(fā)明的程序更新方法及其裝置中,首先將需要更新的目標(biāo)程序的更新包獲取到本地,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置;然后,根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;設(shè)置所述目標(biāo)程序的配置文件,在所述配置文件中構(gòu)建所述目標(biāo)程序的第一版本信息和第二版本信息,分別指向所述第一版本程序文件和所述第二版本程序文件。因此,在更新時(shí),保存在所述第一儲(chǔ)存位置的舊有版本的程序文件不受更新影響,并且可通過所述配置文件的版本信息選擇以所述第一版本程序文件或者所述第二版本程序文件啟動(dòng)所述目標(biāo)程序。如果程序更新失敗,也可以通過所述配置文件選擇以所述第一儲(chǔ)存位置舊有的版本程序文件啟動(dòng),維持目標(biāo)程序的正常運(yùn)作,解決用戶的急需。
[0014]針對現(xiàn)有程序升級(jí)方法升級(jí)不穩(wěn)定會(huì)導(dǎo)致程序不能正常啟動(dòng)的問題,本發(fā)明還提出一種程序啟動(dòng)方法及其裝置,用戶能夠在一個(gè)應(yīng)用程序的多個(gè)版本之間進(jìn)行選擇啟動(dòng),在一個(gè)版本不能夠正常啟動(dòng)時(shí),可以切換到另一個(gè)版本啟動(dòng)。
[0015]一種程序啟動(dòng)方法,包括以下步驟:
[0016]在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,其中,所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;
[0017]選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件;
[0018]根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0019]一種程序啟動(dòng)裝置,包括:
[0020]配置文件讀取模塊,用于在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,其中,所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;
[0021]版本選擇模塊,用于選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件;
[0022]啟動(dòng)模塊,用于根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0023]本發(fā)明的程序啟動(dòng)方法及其裝置中,在本地除了保存有所述目標(biāo)程序的至少一個(gè)版本的程序文件之外,還保存有所述目標(biāo)程序的配置文件,所述配置文件中保存有所述目標(biāo)程序各個(gè)版本的程序文件對應(yīng)的版本信息。在程序啟動(dòng)時(shí)讀取所述配置文件,通過選擇所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,就可以根據(jù)對應(yīng)的程序文件來啟動(dòng)所述目標(biāo)程序。使用戶可以在所述目標(biāo)程序的多個(gè)版本之間選擇啟動(dòng),在新版本的程序文件更新失敗時(shí),也可以通過所述配置文件中選擇一個(gè)舊有版本的程序文件來啟動(dòng),防止更新失敗導(dǎo)致程序不能運(yùn)行的現(xiàn)象。
【專利附圖】

【附圖說明】
[0024]圖1是本發(fā)明程序更新方法的流程示意圖;
[0025]圖2是本發(fā)明程序更新裝置的結(jié)構(gòu)示意圖;
[0026]圖3是本發(fā)明程序啟動(dòng)方法的流程示意圖;
[0027]圖4是本發(fā)明程序啟動(dòng)裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0028]請參閱圖1,圖1是本發(fā)明程序更新方法的流程示意圖。
[0029]所述程序更新方法,包括以下步驟:
[0030]S101,獲取目標(biāo)程序的更新包,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置;
[0031]S102,根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;
[0032]S103,在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,并且所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
[0033]本發(fā)明的程序更新方法中,首先將需要更新的目標(biāo)程序的更新包獲取到本地,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置;然后,根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;設(shè)置所述目標(biāo)程序的配置文件,在所述配置文件中構(gòu)建所述目標(biāo)程序的第一版本信息和第二版本信息,分別指向所述第一版本程序文件和所述第二版本程序文件。因此,在更新時(shí),保存在所述第一儲(chǔ)存位置的舊有版本的程序文件不受更新影響,并且可通過所述配置文件的版本信息選擇以所述第一版本程序文件或者所述第二版本程序文件啟動(dòng)所述目標(biāo)程序。如果程序更新失敗,也可以通過所述配置文件選擇以所述第一儲(chǔ)存位置舊有的版本程序文件啟動(dòng),維持目標(biāo)程序的正常運(yùn)作,解決用戶的急需。
[0034]其中,對于步驟S101,獲取目標(biāo)程序的更新包。所述目標(biāo)程序的更新包可以從服務(wù)器中下載獲取,在獲取目標(biāo)程序的更新包時(shí),首先檢測所述目標(biāo)程序在服務(wù)器中的更新版本信息;將所述更新版本信息與所述本地的所述目標(biāo)程序的版本信息比較,判斷是否需要更新;如果需要更新,則從所述服務(wù)器中獲取對應(yīng)的更新包。
[0035]檢查更新版本信息的時(shí)間可以在每次在接收到所述目標(biāo)程序的啟動(dòng)指令的時(shí)候,或者是以預(yù)定時(shí)間間隔周期性地檢測服務(wù)器中的更新版本信息等等,可以根據(jù)具體要求去設(shè)定。
[0036]例如,在用戶點(diǎn)擊打開所述目標(biāo)程序的exe文件時(shí),接收到所述目標(biāo)程序的啟動(dòng)指令,連線所述目標(biāo)程序的更新服務(wù)器,檢測目標(biāo)程序在所述更新服務(wù)器中的更新版本信息為第3版本,而本地所述目標(biāo)程序的版本信息為第2版本,則從所述服務(wù)器中下載所述第3版本的更新包。
[0037]所述第一儲(chǔ)存位置即為所述目標(biāo)程序在本地的原有的第一版本程序文件的儲(chǔ)存位置。
[0038]對于步驟S102中,根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置。
[0039]所述第二儲(chǔ)存位置與所述第一儲(chǔ)存位置互相獨(dú)立,例如所述第一儲(chǔ)存位置和所述第二儲(chǔ)存位置可以是在同一個(gè)名稱為“程序A”的文件夾下的兩個(gè)分別為“版本1”、“版本2”的子文件夾,所述目標(biāo)程序的配置文件也可以保存在所述“程序A”的文件夾下。
[0040]在本步驟中,更新的方法可分為增量更新或者全量更新兩種。
[0041]所述增量更新的方法包括以下步驟:
[0042]獲取所述目標(biāo)程序的增量更新包;將所述目標(biāo)程序的第一版本程序文件從本地的所述第一儲(chǔ)存位置復(fù)制到所述第二儲(chǔ)存位置;根據(jù)所述增量更新包更新所述第一版本程序文件,獲得所述目標(biāo)程序的第二版本程序文件。
[0043]在所述第二儲(chǔ)存位置根據(jù)所述增量更新包更新所述第二版本程序文件的方法與現(xiàn)有的程序增量更新方法類似,例如打開并運(yùn)行所述更新包,將所述更新包中本次需要更新的文件覆蓋所述第二儲(chǔ)存位置的相應(yīng)程序文件。從而在所述第二儲(chǔ)存位置獲得更新的程序文件。
[0044]所述全量更新的方法包括以下步驟:
[0045]獲取所述目標(biāo)程序的全量更新包;在本地的第二儲(chǔ)存位置根據(jù)所述全量更新包安裝所述目標(biāo)程序的第二版本程序文件,并保存所述目標(biāo)程序的第二版本程序文件。
[0046]在本地的第二儲(chǔ)存位置根據(jù)所述全量更新包安裝所述目標(biāo)程序的方法是:運(yùn)行所述全量更新包安裝所述目標(biāo)程序,并將安裝產(chǎn)生的程序文件保存在所述第二儲(chǔ)存位置。
[0047]在本發(fā)明中,可以選擇增量更新以節(jié)省傳輸更新包的數(shù)據(jù)流量,也可以選擇全量更新以提高更新的成功率。
[0048]在步驟S103中,在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
[0049]所述目標(biāo)程序的配置文件可以在程序第一次更新時(shí)由本發(fā)明的程序創(chuàng)建,在創(chuàng)建時(shí)可保存所述目標(biāo)程序的第一版本信息;也可以由所述目標(biāo)程序自帶,其中主要記載所述目標(biāo)程序的在本地保存有的各個(gè)版本信息,以便程序在啟動(dòng)時(shí)讀取所述配置文件,根據(jù)所述配置文件的版本信息提供多個(gè)版本的程序文件以供選擇啟動(dòng)。所述版本信息最少包括有版本號(hào),以及相應(yīng)版本的程序文件的儲(chǔ)存位置。
[0050]因此,在更新完所述第二版本程序文件之后,在所述配置文件中保存對應(yīng)的第一版本信息和第二版本信息,并將所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件,例如,建立所述第一版本信息與所述第一版本程序文件的對應(yīng)關(guān)系,建立所述第二版本信息與所述第二版本程序文件的對應(yīng)關(guān)系。
[0051]因此,在用戶啟動(dòng)所述目標(biāo)程序時(shí),只要根據(jù)所述配置文件,讀取相應(yīng)的版本信息,就可以找到對應(yīng)版本的程序文件,以此啟動(dòng)所述目標(biāo)程序,在一個(gè)版本的程序文件因更新覆蓋失敗等原因損壞或者出現(xiàn)問題導(dǎo)致所述目標(biāo)程序不能以該版本的程序文件啟動(dòng)時(shí),可以通過讀取所述配置文件中的另一版本信息,從而以另一版本的程序文件啟動(dòng)。
[0052]在一個(gè)優(yōu)選實(shí)施方式中,在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息后,進(jìn)一步包括以下步驟:
[0053]將所述第二版本信息設(shè)置為所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息。
[0054]即程序在啟動(dòng)時(shí),將默認(rèn)啟動(dòng)所述第二版本信息對應(yīng)的第二版本程序文件,在啟動(dòng)失敗時(shí)再切換到所述第一版本信息對應(yīng)的第一版本程序文件。
[0055]值得指出的是,本發(fā)明上述實(shí)施例中提及的第一版本、第二版本并未特指某兩個(gè)版本,所述第一版本可以是任何版本,所述第二版本也可以是任何版本,例如,所述第一版本是版本3,而所述第二版本時(shí)版本4。而一般來說,第二版本是更新后的程序,因此所述第二版本比所述第一版本要新。本發(fā)明只是為了方便描述,并不構(gòu)成對本發(fā)明的限制。
[0056]本發(fā)明在所述程序更新方法之后,提供一種與所述程序更新方法相對應(yīng)的程序啟動(dòng)方法。
[0057]請參閱圖2,圖2是本發(fā)明程序啟動(dòng)方法的流程示意圖。
[0058]本發(fā)明的所述程序啟動(dòng)方法包括以下步驟:[0059]S201,在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,其中,所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;
[0060]S202,選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件;
[0061]S203,根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0062]本發(fā)明的程序啟動(dòng)方法在本地除了保存有所述目標(biāo)程序的至少一個(gè)版本的程序文件之外,還保存有所述目標(biāo)程序的配置文件,所述配置文件中保存有所述目標(biāo)程序各個(gè)版本的程序文件對應(yīng)的版本信息。在程序啟動(dòng)時(shí)讀取所述配置文件,通過選擇所述配置文件中的其中一個(gè)版本信息,來從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,就可以根據(jù)對應(yīng)的程序文件來啟動(dòng)所述目標(biāo)程序。使用戶可以在所述目標(biāo)程序的多個(gè)版本之間選擇啟動(dòng),在新版本的程序文件更新失敗時(shí),也可以通過所述配置文件中選擇一個(gè)舊有版本的程序文件來啟動(dòng),防止更新失敗導(dǎo)致程序不能運(yùn)行的現(xiàn)象。
[0063]其中,對于步驟S201,在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件。
[0064]所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;
[0065]所述目標(biāo)程序的配置文件可以在程序第一次更新時(shí)由本發(fā)明的程序創(chuàng)建,也可以由所述目標(biāo)程序自帶,其中主要記載所述目標(biāo)程序的在本地保存有的各個(gè)版本信息,所述版本信息最少包括有版本號(hào),以及相應(yīng)版本的程序文件的儲(chǔ)存位置。
[0066]因此,在用戶啟動(dòng)所述目標(biāo)程序時(shí),讀取所述配置文件,并獲得其中記載的相應(yīng)版本信息,就可以找到對應(yīng)版本的程序文件,以此啟動(dòng)相應(yīng)版本的目標(biāo)程序。
[0067]所述配置文件中記載的每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,例如可以是在同一個(gè)名稱為“程序A”的文件夾下的兩個(gè)分別為“版本1”、“版本2”的子文件夾,所述目標(biāo)程序的配置文件也可以保存在所述“程序A”的文件夾下。
[0068]在步驟S202中,選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件。
[0069]所述版本信息的選擇可以按照默認(rèn)模式,也可以按照用戶自定義選擇的模式進(jìn)行,如果按照默認(rèn)模式,則:根據(jù)所述配置文件中預(yù)先設(shè)置的所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息,獲取所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件;
[0070]進(jìn)一步地,在默認(rèn)模式下,如果根據(jù)所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件啟動(dòng)所述目標(biāo)程序失敗,則將所述配置文件中除所述默認(rèn)啟動(dòng)版本信息之外的其他版本信息中最新的一個(gè)版本信息設(shè)為默認(rèn)啟動(dòng)版本信息,并獲取其對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0071]如果按照用戶自定義模式,則在用戶界面中顯示所述配置文件中的各個(gè)所述版本信息;通過用戶界面接收對所述版本信息的選擇指令;根據(jù)所述選擇指令從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0072]默認(rèn)模式可以跳過用戶選擇的程序,最快速地啟動(dòng)所述目標(biāo)程序;而用戶自定義模式則可以由用戶根據(jù)自己的意愿直接選擇自己需要的程序版本,各有優(yōu)點(diǎn)。當(dāng)然也可以設(shè)置成為在默認(rèn)模式啟動(dòng)失敗的情況下,再打開用戶自定義模式,供用戶選擇。
[0073]S203,根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0074]獲取到相應(yīng)的程序文件后,就可以根據(jù)所述程序文件,啟動(dòng)所述目標(biāo)程序了。在啟動(dòng)失敗時(shí),可自動(dòng)也可用戶手動(dòng)切換至所述配置文件中記錄的其他的版本,具體可參考默認(rèn)模式或者用戶自定義模式去選取所述配置文件中的版本信息,重新啟動(dòng)所述目標(biāo)程序。
[0075]請參閱圖3,圖3是本發(fā)明程序更新裝置的結(jié)構(gòu)示意圖。
[0076]所述程序更新裝置,包括:
[0077]更新包獲取模塊11,用于獲取目標(biāo)程序的更新包,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置;
[0078]更新模塊12,用于根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;
[0079]配置文件設(shè)置模塊13,用于在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,并且所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
[0080]本發(fā)明的程序更新裝置將需要更新的目標(biāo)程序的更新包獲取到本地,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置;然后,根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置;設(shè)置所述目標(biāo)程序的配置文件,在所述配置文件中構(gòu)建所述目標(biāo)程序的第一版本信息和第二版本信息,分別指向所述第一版本程序文件和所述第二版本程序文件。因此,在更新時(shí),保存在所述第一儲(chǔ)存位置的舊有版本的程序文件不受更新影響,并且可通過所述配置文件的版本信息選擇以所述第一版本程序文件或者所述第二版本程序文件啟動(dòng)所述目標(biāo)程序。如果程序更新失敗,也可以通過所述配置文件選擇以所述第一儲(chǔ)存位置舊有的版本程序文件啟動(dòng),維持目標(biāo)程序的正常運(yùn)作,解決用戶的急需。
[0081]其中,所述更新包獲取模塊11獲取目標(biāo)程序的更新包。所述目標(biāo)程序的更新包可以從服務(wù)器中下載獲取,所述更新包獲取模塊11在獲取目標(biāo)程序的更新包時(shí),首先檢測所述目標(biāo)程序在服務(wù)器中的更新版本信息;將所述更新版本信息與所述本地的所述目標(biāo)程序的版本信息比較,判斷是否需要更新;如果需要更新,則從所述服務(wù)器中獲取對應(yīng)的更新包。
[0082]檢查更新版本信息的時(shí)間可以在每次在接收到所述目標(biāo)程序的啟動(dòng)指令的時(shí)候,或者是以預(yù)定時(shí)間間隔周期性地檢測服務(wù)器中的更新版本信息等等,可以根據(jù)具體要求去設(shè)定。
[0083]例如,在用戶點(diǎn)擊打開所述目標(biāo)程序的exe文件時(shí),接收到所述目標(biāo)程序的啟動(dòng)指令,連線所述目標(biāo)程序的更新服務(wù)器,檢測目標(biāo)程序在所述更新服務(wù)器中的更新版本信息為第3版本,而本地所述目標(biāo)程序的版本信息為第2版本,則從所述服務(wù)器中下載所述第3版本的更新包。
[0084]所述第一儲(chǔ)存位置即為所述目標(biāo)程序在本地的原有的第一版本程序文件的儲(chǔ)存位置。
[0085]所述更新模塊12根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置。[0086]所述第二儲(chǔ)存位置與所述第一儲(chǔ)存位置互相獨(dú)立,例如所述第一儲(chǔ)存位置和所述第二儲(chǔ)存位置可以是在同一個(gè)名稱為“程序A”的文件夾下的兩個(gè)分別為“版本1”、“版本2”的子文件夾,所述目標(biāo)程序的配置文件也可以保存在所述“程序A”的文件夾下。
[0087]所述更新模塊12可包括增量更新模塊121和/或全量更新模塊122。
[0088]所述增量更新模塊121用于獲取所述目標(biāo)程序的增量更新包;將所述目標(biāo)程序的第一版本程序文件從本地的所述第一儲(chǔ)存位置復(fù)制到所述第二儲(chǔ)存位置;根據(jù)所述增量更新包更新所述第一版本程序文件,獲得所述目標(biāo)程序的第二版本程序文件。
[0089]所述增量更新模塊121在所述第二儲(chǔ)存位置根據(jù)所述增量更新包更新獲取所述第二版本程序文件的方法與現(xiàn)有的程序增量更新方法類似,例如打開并運(yùn)行所述更新包,將所述更新包中本次需要更新的文件覆蓋所述第二儲(chǔ)存位置的相應(yīng)程序文件。從而在所述第二儲(chǔ)存位置獲得更新的程序文件。
[0090]所述全量更新模塊122用于獲取所述目標(biāo)程序的全量更新包;在本地的第二儲(chǔ)存位置根據(jù)所述全量更新包安裝所述目標(biāo)程序的第二版本程序文件,并保存所述目標(biāo)程序的第二版本程序文件。
[0091]所述全量更新模塊122在本地的第二儲(chǔ)存位置根據(jù)所述全量更新包安裝獲取所述目標(biāo)程序的第二版本程序文件的方法是:運(yùn)行所述全量更新包安裝所述目標(biāo)程序,并將安裝產(chǎn)生的第二版本程序文件保存在所述第二儲(chǔ)存位置。
[0092]在本發(fā)明中,可以選擇增量更新以節(jié)省傳輸更新包的數(shù)據(jù)流量,也可以選擇全量更新以提高更新的成功率。
[0093]所述配置文件設(shè)置模塊13在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
[0094]所述目標(biāo)程序的配置文件可以在程序第一次更新時(shí)由本發(fā)明的程序創(chuàng)建,也可以由所述目標(biāo)程序自帶,其中主要記載所述目標(biāo)程序的在本地保存有的各個(gè)版本信息,所述版本信息最少包括有版本號(hào),以及相應(yīng)版本的程序文件的儲(chǔ)存位置。
[0095]因此,在所述更新模塊12更新完所述第二版本程序文件之后,所述配置文件設(shè)置模塊13在所述配置文件中保存對應(yīng)的第一版本信息和第二版本信息,并將所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件,例如:建立所述第一版本信息與所述第一版本程序文件的對應(yīng)關(guān)系,建立所述第二版本信息與所述第二版本程序文件的對應(yīng)關(guān)系。
[0096]因此,在用戶啟動(dòng)所述目標(biāo)程序時(shí),只要根據(jù)所述配置文件,讀取相應(yīng)的版本信息,就可以找到對應(yīng)版本的程序文件,以此啟動(dòng)所述目標(biāo)程序,在一個(gè)版本的程序文件因更新覆蓋失敗等原因損壞或者出現(xiàn)問題導(dǎo)致所述目標(biāo)程序不能以該版本的程序文件啟動(dòng)時(shí),可以通過讀取所述配置文件中的另一版本信息,從而以另一版本的程序文件啟動(dòng)。
[0097]在一個(gè)優(yōu)選實(shí)施方式中,所述配置文件設(shè)置模塊14在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息后,進(jìn)一步將所述第二版本信息設(shè)置為所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息。
[0098]即程序在啟動(dòng)時(shí),將默認(rèn)啟動(dòng)所述第二版本信息的程序文件,在啟動(dòng)失敗時(shí)再切換到所述第一版本信息對應(yīng)的程序文件。[0099]值得指出的是,本發(fā)明上述實(shí)施方式中提及的第一版本、第二版本并未特指某兩個(gè)版本,所述第一版本可以是任何版本,所述第二版本也可以是任何版本,而一般來說,第二版本是更新后的程序,因此所述第二版本比所述第二版本要新。本發(fā)明只是為了方便描述,以示區(qū)分兩個(gè)不同的版本。
[0100]請參閱圖4,圖4是本發(fā)明程序啟動(dòng)裝置的結(jié)構(gòu)示意圖。
[0101]本發(fā)明的所述程序啟動(dòng)裝置包括:
[0102]配置文件讀取模塊21,用于在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,其中,所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;
[0103]版本選擇模塊22,用于選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件;
[0104]啟動(dòng)模塊23,用于根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0105]本發(fā)明的程序啟動(dòng)裝置在本地除了保存有所述目標(biāo)程序的至少一個(gè)版本的程序文件之外,還保存有所述目標(biāo)程序的配置文件,所述配置文件中保存有所述目標(biāo)程序各個(gè)版本的程序文件對應(yīng)的版本信息。在程序啟動(dòng)時(shí)讀取所述配置文件,通過選擇所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,就可以根據(jù)對應(yīng)的程序文件來啟動(dòng)所述目標(biāo)程序。使用戶可以在所述目標(biāo)程序的多個(gè)版本之間選擇啟動(dòng),在新版本的程序文件更新失敗時(shí),也可以通過所述配置文件中選擇一個(gè)舊有版本的程序文件來啟動(dòng),防止更新失敗導(dǎo)致程序不能運(yùn)行的現(xiàn)象。
[0106]其中,所述配置文件讀取模塊21在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,
[0107]所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;
[0108]所述目標(biāo)程序的配置文件可以在程序第一次更新時(shí)由本發(fā)明的程序創(chuàng)建,也可以由所述目標(biāo)程序自帶,其中主要記載所述目標(biāo)程序的在本地保存有的各個(gè)版本信息,所述版本信息最少包括有版本號(hào),以及相應(yīng)版本的程序文件的儲(chǔ)存位置。
[0109]因此,在用戶啟動(dòng)所述目標(biāo)程序時(shí),所述配置文件讀取模塊21讀取所述配置文件,并獲得其中記載的相應(yīng)版本信息,就可以找到對應(yīng)版本的程序文件,以此啟動(dòng)相應(yīng)版本的目標(biāo)程序。
[0110]所述配置文件中記載的每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,例如可以是在同一個(gè)名稱為“程序A”的文件夾下的兩個(gè)分別為“版本1”、“版本2”的子文件夾,所述目標(biāo)程序的配置文件也可以保存在所述“程序A”的文件夾下。
[0111]所述版本選擇模塊22選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件。
[0112]所述版本選擇模塊22對所述版本信息的選擇可以按照默認(rèn)模式,也可以按照用戶自定義選擇的模式進(jìn)行。
[0113]如果按照默認(rèn)模式,則:所述版本選擇模塊22根據(jù)所述配置文件中預(yù)先設(shè)置的所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件;
[0114]在一個(gè)優(yōu)選實(shí)施方式中,本發(fā)明的程序啟動(dòng)裝置還包括配置文件設(shè)置模塊,在默認(rèn)模式下,如果根據(jù)所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件啟動(dòng)所述目標(biāo)程序失敗,則所述配置文件設(shè)置模塊將所述配置文件中除所述默認(rèn)啟動(dòng)版本信息之外的其他版本信息中最新的一個(gè)版本信息設(shè)為默認(rèn)啟動(dòng)版本信息。所述版本選擇模塊22獲取其對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0115]如果按照用戶自定義模式,則在用戶界面中顯示所述配置文件中的各個(gè)所述版本信息;通過用戶界面接收對所述版本信息的選擇指令;根據(jù)所述選擇指令從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0116]默認(rèn)模式可以跳過用戶選擇的程序,最快速地啟動(dòng)所述目標(biāo)程序;而用戶自定義模式則可以由用戶根據(jù)自己的意愿直接選擇自己需要的程序版本,各有優(yōu)點(diǎn)。當(dāng)然也可以設(shè)置成為在默認(rèn)模式啟動(dòng)失敗的情況下,再打開用戶自定義模式,供用戶選擇。
[0117]所述啟動(dòng)模塊23根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
[0118]獲取到相應(yīng)的程序文件后,就可以根據(jù)所述程序文件,啟動(dòng)所述目標(biāo)程序了。在啟動(dòng)失敗時(shí),可自動(dòng)也可用戶手動(dòng)切換至所述配置文件中記錄的其他的版本,具體可參考默認(rèn)模式或者用戶自定義模式去選取所述配置文件中的版本信息,重新啟動(dòng)所述目標(biāo)程序。
[0119]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施方式中的全部或部分流程以及對應(yīng)的系統(tǒng)、所述音樂播放器,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各實(shí)施方式的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory, ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory, RAM)等。
[0120]以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
【權(quán)利要求】
1.一種程序更新方法,其特征在于,包括以下步驟: 獲取目標(biāo)程序的更新包,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置; 根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置; 在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,并且所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
2.如權(quán)利要求1所述的程序更新方法,其特征在于,獲取目標(biāo)程序的更新包,根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置的步驟包括: 獲取所述目標(biāo)程序的增量更新包;將所述目標(biāo)程序的第一版本程序文件從本地的所述第一儲(chǔ)存位置復(fù)制到所述第二儲(chǔ)存位置;根據(jù)所述增量更新包更新所述第一版本程序文件,獲得所述目標(biāo)程序的第二版本程序文件; 或,獲取所述目標(biāo)程序的全量更新包;在本地的第二儲(chǔ)存位置根據(jù)所述全量更新包安裝所述目標(biāo)程序的第二版本程序文件,并保存所述目標(biāo)程序的第二版本程序文件。
3.如權(quán)利要求1或者2所述的程序更新方法,其特征在于,獲取目標(biāo)程序的更新包的步驟包括: 檢測所述目標(biāo)程序在服務(wù)器中的更新版本信息; 將所述更新版本信息與所述本地的所述目標(biāo)程序的版本信息比較,判斷是否需要更新; 如果需要更新,則從所述服務(wù)器中獲取對應(yīng)的更新包。
4.如權(quán)利要求1或者2所述的程序更新方法,其特征在于,在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息后,進(jìn)一步包括以下步驟: 將所述第二版本信息設(shè)置為所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息。
5.一種程序更新裝置,其特征在于,包括: 更新包獲取模塊,用于獲取目標(biāo)程序的更新包,其中,所述目標(biāo)程序的第一版本程序文件保存在本地的第一儲(chǔ)存位置; 更新模塊,用于根據(jù)所述更新包,獲取所述目標(biāo)程序的第二版本程序文件,并將所述第二版本程序文件保存在本地的第二儲(chǔ)存位置; 配置文件設(shè)置模塊,用于在所述目標(biāo)程序的配置文件中保存所述目標(biāo)程序的第一版本信息和第二版本信息,并且所述第一版本信息指向所述第一版本程序文件,所述第二版本信息指向所述第二版本程序文件。
6.如權(quán)利要求5所述的程序更新裝置,其特征在于,所述更新模塊包括增量更新模塊和/或全量更新模塊; 所述增量更新模塊用于獲取所述目標(biāo)程序的增量更新包;將所述目標(biāo)程序的第一版本程序文件從本地的所述第一儲(chǔ)存位置復(fù)制到所述第二儲(chǔ)存位置;根據(jù)所述增量更新包更新所述第一版本程序文件,獲得所述目標(biāo)程序的第二版本程序文件; 所述全量更新模塊用于獲取所述目標(biāo)程序的全量更新包;在本地的第二儲(chǔ)存位置根據(jù)所述全量更新包安裝所述目標(biāo)程序的第二版本程序文件,并保存所述目標(biāo)程序的第二版本程序文件。
7.如權(quán)利要求5或者6所述的程序更新裝置,其特征在于,所述更新包獲取模塊包括: 更新檢測模塊,用于檢測所述目標(biāo)程序在服務(wù)器中的更新版本信息; 判斷模塊,用于將所述更新版本信息與所述本地的所述目標(biāo)程序的版本信息比較,判斷是否需要更新; 下載模塊,用于如果需要更新,則從所述服務(wù)器中獲取對應(yīng)的更新包。
8.如權(quán)利要求5或者6所述的程序更新裝置,其特征在于,所述配置文件設(shè)置模塊還用于將所述第二版本信息設(shè)置為所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息。
9.一種程序啟動(dòng)方法,其特征在于,包括以下步驟: 在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,其中,所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件; 選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件; 根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
10.如權(quán)利要求9所述的程序啟動(dòng)方法,其特征在于,選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件的步驟包括: 根據(jù)所述配置文件中預(yù)先設(shè)置的所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件。
11.如權(quán)利要求10所述的程序啟動(dòng)方法,其特征在于,如果根據(jù)所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件啟動(dòng)所述目標(biāo)程序失敗,則將所述配置文件中除所述默認(rèn)啟動(dòng)版本信息之外的其他版本信息中最新的一個(gè)版本信息設(shè)為默認(rèn)啟動(dòng)版本信息,并獲取其對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
12.如權(quán)利要求9所述的程序啟動(dòng)方法,其特征在于,選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件的步驟包括: 在用戶界面中顯示所述配置文件中的各個(gè)所述版本信息; 通過用戶界面接收對所述版本信息的選擇指令; 根據(jù)所述選擇指令從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
13.一種程序啟動(dòng)裝置,其特征在于,包括: 配置文件讀取模塊,用于在目標(biāo)程序啟動(dòng)時(shí),讀取所述目標(biāo)程序的配置文件,其中,所述配置文件中保存有所述目標(biāo)程序的至少一個(gè)版本信息,每個(gè)所述版本信息分別指向一個(gè)獨(dú)立的儲(chǔ)存位置,每個(gè)所述儲(chǔ)存位置分別儲(chǔ)存有所述目標(biāo)程序的相應(yīng)版本的程序文件;版本選擇模塊,用于選取所述配置文件中的其中一個(gè)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件; 啟動(dòng)模塊,用于根據(jù)所述對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
14.如權(quán)利要求13所述的程序啟動(dòng)裝置,其特征在于,版本選擇模塊根據(jù)所述配置文件中預(yù)先設(shè)置的所述目標(biāo)程序的默認(rèn)啟動(dòng)版本信息,從相應(yīng)的儲(chǔ)存位置獲取所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件。
15.如權(quán)利要求14所述的程序啟動(dòng)裝置,其特征在于,還包括配置文件設(shè)置模塊,用于如果根據(jù)所述默認(rèn)啟動(dòng)版本信息對應(yīng)的程序文件啟動(dòng)所述目標(biāo)程序失敗,則將所述配置文件中除所述默認(rèn)啟動(dòng)版本信息之外的其他版本信息中最新的一個(gè)版本信息設(shè)為默認(rèn)啟動(dòng)版本信息。
16.如權(quán)利要求13所述的 程序啟動(dòng)裝置,其特征在于,所述版本選擇模塊在用戶界面中顯示所述配置文件中的各個(gè)所述版本信息,通過用戶界面接收對所述版本信息的選擇指令,根據(jù)所述選擇指令從相應(yīng)的儲(chǔ)存位置獲取所述版本信息對應(yīng)的程序文件,啟動(dòng)所述目標(biāo)程序。
【文檔編號(hào)】G06F9/445GK104007992SQ201410252932
【公開日】2014年8月27日 申請日期:2014年6月9日 優(yōu)先權(quán)日:2014年6月9日
【發(fā)明者】張聰 申請人:廣州華多網(wǎng)絡(luò)科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1