專(zhuān)利名稱(chēng):軟件更新系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種手機(jī)軟件更新系統(tǒng)及方法。
背景技術(shù):
隨著手機(jī)功能的增加,手機(jī)內(nèi)的應(yīng)用軟件越來(lái)越多。為了完善及增加某個(gè)功能,手機(jī)內(nèi)的軟件版本需得到不斷的更新。目前通常采用FOTA (Firmware over the air)的方式來(lái)進(jìn)行軟件的更新,即用戶(hù)通過(guò)手機(jī)上網(wǎng)與手機(jī)制造商端服務(wù)器進(jìn)行連接以下載最新版本的軟件來(lái)進(jìn)行版本的更新。但目前使用的3G網(wǎng)絡(luò)的傳輸性能不穩(wěn)定,用戶(hù)在進(jìn)行下載過(guò)程中經(jīng)常會(huì)發(fā)生中斷,且由于網(wǎng)絡(luò)速度的緩慢導(dǎo)致用戶(hù)需要花很長(zhǎng)時(shí)間才能成功將軟件下載完。由此,用戶(hù)需支出較多的網(wǎng)絡(luò)費(fèi)用來(lái)更新其軟件。
發(fā)明內(nèi)容
鑒于以上內(nèi)容,本發(fā)明較佳實(shí)施例提供一種軟件更新系統(tǒng)及方法,其解決了傳統(tǒng)手機(jī)只能連接到手機(jī)制造商端進(jìn)行軟件版本的更新,而不能點(diǎn)對(duì)點(diǎn)從下載有最新版本軟件的同型號(hào)手機(jī)處進(jìn)行軟件更新的問(wèn)題。
一種軟件更新系統(tǒng),運(yùn)行于安裝有藍(lán)牙的手機(jī)中,所述軟件更新系統(tǒng)包括
獲取模塊,用于在該手機(jī)接收另一手機(jī)發(fā)送的軟件更新請(qǐng)求后,獲取所述請(qǐng)求方手機(jī)的型號(hào)、使用的操作系統(tǒng)及當(dāng)前使用的該軟件的版本號(hào);
比對(duì)模塊,用于比對(duì)所述請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)是否與該手機(jī)的型號(hào)及操作系統(tǒng)相同,并判斷該請(qǐng)求方當(dāng)前使用的該軟件的版本號(hào)是否低于該手機(jī)中的該軟件的版本號(hào);
發(fā)送模塊,用于當(dāng)該請(qǐng)求方手機(jī)的型號(hào)及操作系統(tǒng)分別與該手機(jī)的型號(hào)及操作系統(tǒng)相同,且該請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)低于該手機(jī)使用的該軟件的版本號(hào)時(shí)將該軟件的數(shù)據(jù)包發(fā)送至該請(qǐng)求方手機(jī)以更新其軟件。
一種軟件更新方法,運(yùn)用于安裝有藍(lán)牙的手機(jī)中,該方法包括
(a) 將手機(jī)的藍(lán)牙激活并與另一手機(jī)成功連接,該手機(jī)接收所述另一手機(jī)發(fā)送的軟件更新請(qǐng)求;
(b) 依據(jù)該軟件更新請(qǐng)求獲取請(qǐng)求方手機(jī)的型號(hào)、使用的操作系統(tǒng)及當(dāng)前使用的該軟件的版本號(hào);
4(c) 比對(duì)請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)是否與該手機(jī)的型號(hào)及操作系統(tǒng)相同;
(d) 若請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)與該手機(jī)的型號(hào)及操作系統(tǒng)相同,則判斷 請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)是否低于該手機(jī)中的該軟件的版本號(hào);及
(e) 若請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)低于該手機(jī)使用的該軟件的版本號(hào)時(shí)將 該軟件的數(shù)據(jù)包發(fā)送至請(qǐng)求方手機(jī)以更新其軟件。
相較于現(xiàn)有技術(shù),所述的軟件更新系統(tǒng)及方法,通過(guò)點(diǎn)對(duì)點(diǎn)的進(jìn)行軟件的數(shù)據(jù)包的傳輸 以完成軟件版本的更新。因此,用戶(hù)無(wú)需連接至手機(jī)制造商端進(jìn)行最新版本的軟件的下載, 只需從相同型號(hào)并下載有最新版本軟件的手機(jī)處下載最新版本的軟件,從而節(jié)省用戶(hù)的網(wǎng)絡(luò) 費(fèi)用。
圖l是本發(fā)明軟件更新系統(tǒng)的功能模塊及實(shí)施架構(gòu)圖。
圖2是本發(fā)明軟件更新方法的工作流程圖。
具體實(shí)施例方式
如圖1所示,是本發(fā)明軟件更新系統(tǒng)的較佳實(shí)施例的功能模塊及實(shí)施架構(gòu)圖。所述軟件 更新系統(tǒng)IO、 20分別安裝于至少兩個(gè)手機(jī)中,如本較佳實(shí)施例的手機(jī)l、 2。所述手機(jī)l、 2分 別安裝有藍(lán)牙12、 22。通過(guò)所述藍(lán)牙12、 22可以使手機(jī)1與手機(jī)2建立連接并進(jìn)行較短距離的 數(shù)據(jù)傳輸。
所述手機(jī)l、 2分別包括內(nèi)存14、 24。所述內(nèi)存14、 24存儲(chǔ)有各類(lèi)數(shù)據(jù),包括操作系統(tǒng)、 各種應(yīng)用程序、及運(yùn)用所述軟件更新系統(tǒng)IO、 20過(guò)程中所生成的數(shù)據(jù),如軟件版本號(hào)、手機(jī) 型號(hào)等。所述的內(nèi)存14、 24可以是該手機(jī)本身的內(nèi)存,還可以是外部存儲(chǔ)卡,如SM卡( Smart Media Card,智能媒體卡)、SD卡(Secure Digital Card,安全數(shù)字卡)、CF卡( Compact Flash Card,標(biāo)準(zhǔn)閃存卡)、麗C卡(Multi Media Card,多媒體卡)、MS卡( Memory Stick,記憶棒)、XD卡(Extreme Digital Card,極限數(shù)字卡)、TF卡(Trans Flash Card)等。
所述軟件更新系統(tǒng)IO、 20是具有特定功能的程序段,通過(guò)執(zhí)行該程序段可以讓安裝有藍(lán) 牙的手機(jī)相互間進(jìn)行點(diǎn)對(duì)點(diǎn)的軟件更新。具體而言,若手機(jī)2安裝有最新版本的應(yīng)用軟件, 而手機(jī)1可以運(yùn)行所述軟件更新系統(tǒng)20來(lái)與手機(jī)2進(jìn)行點(diǎn)對(duì)點(diǎn)的軟件更新以使手機(jī)1安裝所述 最新版本的應(yīng)用軟件。
所述軟件更新系統(tǒng)IO、 20包括獲取模塊100、 200;比對(duì)模塊120、 220及發(fā)送模塊140、
240。為方便說(shuō)明,以手機(jī)2對(duì)手機(jī)1進(jìn)行點(diǎn)對(duì)點(diǎn)軟件更新為例子說(shuō)明。需要說(shuō)明的是,手機(jī)l 和手機(jī)2的角色可以互調(diào)。
手機(jī)1的藍(lán)牙12及手機(jī)2的藍(lán)牙22激活后,手機(jī)1發(fā)送一連接請(qǐng)求至手機(jī)2,手機(jī)2的藍(lán)牙 22響應(yīng)該請(qǐng)求并進(jìn)行連接。當(dāng)連接成功后,用戶(hù)通過(guò)手機(jī)1發(fā)送一更新其軟件A的請(qǐng)求至手機(jī) 2。所述更新其軟件A的請(qǐng)求包括軟件A的名稱(chēng)信息。
在接收手機(jī)1發(fā)送過(guò)來(lái)的更新其軟件A的請(qǐng)求后,手機(jī)2的獲取模塊200依據(jù)該請(qǐng)求獲取手 機(jī)1的型號(hào)、操作系統(tǒng)及當(dāng)前使用的該軟件A的版本號(hào)。
比對(duì)模塊220比對(duì)手機(jī)1的手機(jī)型號(hào)及操作系統(tǒng)是否分別與手機(jī)2的手機(jī)型號(hào)及操作系統(tǒng) 相同,當(dāng)手機(jī)1的手機(jī)型號(hào)與操作系統(tǒng)與手機(jī)2的手機(jī)型號(hào)及操作系統(tǒng)都相同時(shí)繼續(xù)判斷手機(jī) l使用的軟件A的版本號(hào)是否低于手機(jī)2使用的軟件A的版本號(hào)。
當(dāng)手機(jī)1中的軟件A的版本號(hào)低于手機(jī)2的軟件A的版本號(hào)時(shí),發(fā)送模塊240通過(guò)藍(lán)牙22將 手機(jī)2中的軟件A的數(shù)據(jù)包傳送至手機(jī)1 。
藍(lán)牙12接收手機(jī)2傳送的軟件A的數(shù)據(jù)包。當(dāng)接收完成后,用戶(hù)可根據(jù)需要進(jìn)行安裝以覆 蓋先前使用的較低版本的軟件A。
為加強(qiáng)手機(jī)的安全性,所述軟件更新系統(tǒng)IO、 20還包括校驗(yàn)?zāi)K150、 250,用于計(jì)算手 機(jī)接收的高版本的軟件A的數(shù)據(jù)包的MD5 (message-digest algorithm 5,信息-摘要算法) 值,并連接網(wǎng)絡(luò)獲取手機(jī)制造商提供的該高版本的軟件A的MD5碼;比對(duì)所計(jì)算得到的MD5碼 是否與手機(jī)制造商提供的MD5碼一致。如果一致,則提示手機(jī)1的用戶(hù)可進(jìn)行該軟件A的安裝 ;相反,如果不一致,則警告用戶(hù)該接收的高版本的軟件A被修改過(guò)。所述MD5碼被廣泛用于 加密和解密技術(shù)上,它可以說(shuō)是文件的"數(shù)字指紋"。任何文件,無(wú)論是可執(zhí)行程序、圖像 文件、臨時(shí)文件或者其他任何類(lèi)型的文件,也不管它體積多大,都有且只有獨(dú)一無(wú)二的MD5 信息值,并且如果這個(gè)文件被修改過(guò),它的MD5值也將隨之改變。因此,我們可以通過(guò)對(duì)比 同一文件的MD5值,來(lái)校驗(yàn)這個(gè)文件是否被"篡改"過(guò)。
圖2是本發(fā)明的軟件更新方法的工作流程圖。同樣,為方便說(shuō)明,現(xiàn)以手機(jī)2對(duì)手機(jī)1進(jìn) 行點(diǎn)對(duì)點(diǎn)的軟件A的更新為例。
步驟S201 ,激活藍(lán)牙12及藍(lán)牙14以將手機(jī)l與手機(jī)2進(jìn)行連接。
步驟S202,當(dāng)手機(jī)1與手機(jī)2成功連接后,用戶(hù)通過(guò)手機(jī)1發(fā)送更新其軟件A的請(qǐng)求至手機(jī) 2,所述請(qǐng)求包括軟件A的名稱(chēng)信息。
步驟S203,手機(jī)2接收該更新其軟件A的請(qǐng)求后,所述獲取模塊200依據(jù)該請(qǐng)求獲取獲取 手機(jī)l的手機(jī)型號(hào)、操作系統(tǒng)及當(dāng)前使用的該軟件A的版本號(hào)信息。步驟S204,所述比對(duì)模塊220比對(duì)并判斷手機(jī)1的手機(jī)型號(hào)及操作系統(tǒng)是否與手機(jī)2的手 機(jī)型號(hào)及操作系統(tǒng)是否一致。如果是一致,則執(zhí)行步驟S205;如果不一致,則本流程結(jié)束。
步驟S205,所述比對(duì)模塊220比對(duì)獲取的手機(jī)1的軟件A的版本號(hào)與手機(jī)2當(dāng)前使用的軟件 A的版本號(hào),判斷手機(jī)1使用的軟件A的版本號(hào)是否低于手機(jī)2使用的軟件A的版本號(hào)。如果手 機(jī)1的軟件A的版本號(hào)低于手機(jī)2使用的軟件A的版本號(hào),則執(zhí)行步驟S206;相反,則流程結(jié)束
步驟S206,發(fā)送模塊240通過(guò)藍(lán)牙22將手機(jī)2中的軟件A的數(shù)據(jù)包發(fā)送至手機(jī)1。 步驟S207,藍(lán)牙12接收手機(jī)2傳送的高版本的軟件A的數(shù)據(jù)包,校驗(yàn)?zāi)K150對(duì)所接收的
軟件A的數(shù)據(jù)包進(jìn)行計(jì)算得到MD5碼。
步驟S208,手機(jī)1連接網(wǎng)絡(luò)獲取手機(jī)制造商端提供的該高版本的軟件A的MD5碼。 步驟S209,所述校驗(yàn)?zāi)K150對(duì)所述計(jì)算得到的MD5碼與獲取得到的軟件A的MD5碼進(jìn)行比
對(duì),當(dāng)匹配后,提示手機(jī)1的用戶(hù)安裝該接收的高版本號(hào)軟件A。如果不匹配則警告用戶(hù)該接
收的軟件被修改過(guò),存在安全隱患。
通過(guò)藍(lán)牙12、 22點(diǎn)對(duì)點(diǎn)的進(jìn)行軟件的數(shù)據(jù)包的傳輸,用戶(hù)在接收完后可進(jìn)行后續(xù)安裝。
當(dāng)在傳輸過(guò)程中,因特殊原因未能一次性傳輸完全,則下次還可繼續(xù)傳輸剩余的數(shù)據(jù)。通過(guò)
這種方式,用戶(hù)不必要連接到手機(jī)制造商端進(jìn)行網(wǎng)絡(luò)下載以節(jié)省網(wǎng)絡(luò)費(fèi)用。
權(quán)利要求
1.一種軟件更新系統(tǒng),運(yùn)行于安裝有藍(lán)牙的手機(jī)中,其特征在于,所述軟件更新系統(tǒng)包括獲取模塊,用于在該手機(jī)接收另一手機(jī)發(fā)送的軟件更新請(qǐng)求后,獲取所述請(qǐng)求方手機(jī)的型號(hào)、使用的操作系統(tǒng)及當(dāng)前使用的該軟件的版本號(hào);比對(duì)模塊,用于比對(duì)所述請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)是否與該手機(jī)的型號(hào)及操作系統(tǒng)相同,并判斷該請(qǐng)求方當(dāng)前使用的該軟件的版本號(hào)是否低于該手機(jī)中的該軟件的版本號(hào);發(fā)送模塊,用于當(dāng)該請(qǐng)求方手機(jī)的型號(hào)及操作系統(tǒng)分別與該手機(jī)的型號(hào)及操作系統(tǒng)相同,且該請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)低于該手機(jī)使用的該軟件的版本號(hào)時(shí)將該軟件的數(shù)據(jù)包發(fā)送至該請(qǐng)求方手機(jī)以更新其軟件。
2 如權(quán)利要求l所述的軟件更新系統(tǒng),其特征在于,該系統(tǒng)還包括校 驗(yàn)?zāi)K,用于計(jì)算所接收的軟件的數(shù)據(jù)包的信息摘要算法值,并比對(duì)該計(jì)算的信息摘要算法 值與手機(jī)制造商端提供的該版本號(hào)軟件的信息摘要算法值是否一致;當(dāng)計(jì)算的信息摘要算法 值與手機(jī)制造商端提供的該版本號(hào)的軟件的信息摘要算法值一致時(shí),提示請(qǐng)求方手機(jī)進(jìn)行該 軟件的安裝,相反,則警告該版本號(hào)的軟件被修改過(guò)。
3 一種軟件更新方法,運(yùn)用于安裝有藍(lán)牙的手機(jī)中,該方法包括(a) 將手機(jī)的藍(lán)牙激活并與另一手機(jī)成功連接,該手機(jī)接收所述另一手機(jī)發(fā)送的軟件 更新請(qǐng)求;(b) 依據(jù)該軟件更新請(qǐng)求獲取請(qǐng)求方手機(jī)的型號(hào)、使用的操作系統(tǒng)及當(dāng)前使用的該軟 件的版本號(hào);(c) 比對(duì)請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)是否與該手機(jī)的型號(hào)及操作系統(tǒng)相同;(d) 若請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)與該手機(jī)的型號(hào)及操作系統(tǒng)相同,則判斷 請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)是否低于該手機(jī)中的該軟件的版本號(hào);及(e) 若請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)低于該手機(jī)使用的該軟件的版本號(hào)時(shí)將該軟件的數(shù)據(jù)包發(fā)送至請(qǐng)求方手機(jī)以更新其軟件。
4 如權(quán)利要求3所述的軟件更新方法,其特征在于,所述方法還包括步驟當(dāng)請(qǐng)求方手機(jī)接收完該手機(jī)傳送的軟件的數(shù)據(jù)包后,計(jì)算該接收的軟件的數(shù)據(jù)包的信息摘要算法值;比對(duì)該計(jì)算的信息摘要算法值與手機(jī)制造商端提供的該版本號(hào)軟件的信息摘要算法值 是否一致;及當(dāng)計(jì)算的信息摘要算法值與手機(jī)制造商端提供的該版本號(hào)的軟件的信息摘要算法值一 致時(shí),提示請(qǐng)求方手機(jī)進(jìn)行該軟件的安裝,相反,則警告該版本號(hào)的軟件被修改過(guò)。
全文摘要
一種軟件更新系統(tǒng)包括獲取模塊,用于在該手機(jī)接收另一手機(jī)發(fā)送的軟件更新請(qǐng)求后,獲取所述請(qǐng)求方手機(jī)的型號(hào)、使用的操作系統(tǒng)及當(dāng)前使用的該軟件的版本號(hào);比對(duì)模塊,用于比對(duì)所述請(qǐng)求方手機(jī)的型號(hào)及使用的操作系統(tǒng)是否與該手機(jī)的型號(hào)及操作系統(tǒng)相同,并判斷該請(qǐng)求方當(dāng)前使用的該軟件的版本號(hào)是否低于該手機(jī)中的該軟件的版本號(hào);發(fā)送模塊,用于當(dāng)該請(qǐng)求方手機(jī)的型號(hào)及操作系統(tǒng)分別與該手機(jī)的型號(hào)及操作系統(tǒng)相同,且該請(qǐng)求方手機(jī)當(dāng)前使用的該軟件的版本號(hào)低于該手機(jī)使用的該軟件的版本號(hào)時(shí)將該軟件的數(shù)據(jù)包發(fā)送至該請(qǐng)求方手機(jī)以更新其軟件。本發(fā)明還提供一種軟件更新方法。利用本發(fā)明可節(jié)省用戶(hù)的網(wǎng)絡(luò)費(fèi)用。
文檔編號(hào)H04M1/725GK101662533SQ200810304219
公開(kāi)日2010年3月3日 申請(qǐng)日期2008年8月27日 優(yōu)先權(quán)日2008年8月27日
發(fā)明者林志軒 申請(qǐng)人:深圳富泰宏精密工業(yè)有限公司;奇美通訊股份有限公司