專(zhuān)利名稱(chēng):用于執(zhí)行期間的應(yīng)用程序升級(jí)的方法、軟件和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及數(shù)據(jù)網(wǎng)絡(luò)和跨越所述數(shù)據(jù)網(wǎng)絡(luò)的計(jì)算機(jī)通信。更特定而言,本發(fā)明部分地涉及在跨越一無(wú)線(xiàn)數(shù)據(jù)網(wǎng)絡(luò)與一個(gè)或一個(gè)以上應(yīng)用程序下載服務(wù)器進(jìn)行選擇性通信的無(wú)線(xiàn)設(shè)備上的軟件應(yīng)用程序和其組件的安裝和刪除。更特定而言,本發(fā)明部分地涉及在所述軟件應(yīng)用程序的所述執(zhí)行期間一無(wú)線(xiàn)設(shè)備上的一軟件應(yīng)用程序的可選升級(jí)。
背景技術(shù):
例如蜂窩電話(huà)的無(wú)線(xiàn)設(shè)備經(jīng)由無(wú)線(xiàn)網(wǎng)絡(luò)傳遞包括語(yǔ)音和數(shù)據(jù)的數(shù)據(jù)包。蜂窩電話(huà)其本身制造成具有增加的計(jì)算能力,且等價(jià)于個(gè)人計(jì)算機(jī)和手持式個(gè)人數(shù)字助理(“PDA”)。這些“聰明的”蜂窩電話(huà)已將應(yīng)用程序編程界面(“API”)安裝到其本地計(jì)算機(jī)平臺(tái)上,所述本地計(jì)算機(jī)平臺(tái)允許軟件開(kāi)發(fā)商創(chuàng)建可完全在蜂窩電話(huà)上執(zhí)行的軟件應(yīng)用程序(通常被稱(chēng)作“程序”)。API位于無(wú)線(xiàn)設(shè)備系統(tǒng)軟件與軟件應(yīng)用程序之間,從而使所述應(yīng)用程序可利用蜂窩電話(huà)計(jì)算機(jī)能而不需要軟件開(kāi)發(fā)商具有具體的蜂窩電話(huà)系統(tǒng)源代碼。
軟件應(yīng)用程序可在制造無(wú)線(xiàn)設(shè)備時(shí)預(yù)先載入,或用戶(hù)可隨后請(qǐng)求經(jīng)由蜂窩電信載波網(wǎng)絡(luò)下載另外的程序,其中所下載的應(yīng)用程序可在無(wú)線(xiàn)電話(huà)上執(zhí)行。因此,無(wú)線(xiàn)電話(huà)的用戶(hù)可通過(guò)選擇性地下載應(yīng)用程序來(lái)自定義其無(wú)線(xiàn)電話(huà),所述應(yīng)用程序例如游戲、印刷媒體、股票更新、新聞或可用于通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)下載的任何其它類(lèi)型信息或應(yīng)用程序。為管理蜂窩電話(huà)資源,無(wú)線(xiàn)設(shè)備的用戶(hù)有目的地刪除來(lái)自無(wú)線(xiàn)電話(huà)平臺(tái)的應(yīng)用程序和數(shù)據(jù)以清理存儲(chǔ)空間,使得新的應(yīng)用程序可載入到所清理的空間上。
與個(gè)人計(jì)算機(jī)和PDA的較大的計(jì)算機(jī)平臺(tái)相比,無(wú)線(xiàn)設(shè)備具有有限的資源(例如存儲(chǔ)和處理)來(lái)用于非必要應(yīng)用程序。通常,電信應(yīng)用程序具有系統(tǒng)資源的使用優(yōu)先權(quán),其它應(yīng)用程序在使用時(shí)分配資源。因此無(wú)線(xiàn)設(shè)備具有用于保存應(yīng)用程序的所有文件的有限的容量,且資源的管理由電話(huà)的用戶(hù)決定來(lái)刪除應(yīng)用程序以為需下載到無(wú)線(xiàn)設(shè)備的新的應(yīng)用程序騰出空間。無(wú)線(xiàn)設(shè)備不會(huì)以其它方式下載其沒(méi)有資源保存和執(zhí)行的應(yīng)用程序。
在設(shè)法釋放無(wú)線(xiàn)設(shè)備上的資源時(shí),用戶(hù)一般不能夠在沒(méi)有停用整個(gè)駐存應(yīng)用程序的情況下移除駐存應(yīng)用程序的某些組件。如果用戶(hù)設(shè)法刪除特定組件,那么此動(dòng)作將不利于資源的預(yù)期釋放,因?yàn)樗S玫鸟v存應(yīng)用程序不能夠在沒(méi)有完全地重新安裝應(yīng)用程序的情況下恢復(fù)。即使主應(yīng)用程序不可執(zhí)行,無(wú)用的未刪除應(yīng)用程序組件仍然無(wú)用地占據(jù)著存儲(chǔ)空間。此對(duì)于無(wú)線(xiàn)設(shè)備上的駐存軟件應(yīng)用程序的全部刪除或不刪除需求極大地限制可駐存在無(wú)線(xiàn)設(shè)備上且可由用戶(hù)操作的應(yīng)用程序的數(shù)目。
因此,有利的是提供可移除應(yīng)用程序的某些組件的同時(shí)維持所述應(yīng)用程序的重要數(shù)據(jù)(例如許可證和用戶(hù)指定的數(shù)據(jù))的無(wú)線(xiàn)設(shè)備,從而最大化無(wú)線(xiàn)設(shè)備上的計(jì)算機(jī)資源的利用度。當(dāng)無(wú)線(xiàn)設(shè)備需要已刪除的軟件組件來(lái)再次執(zhí)行所述應(yīng)用程序時(shí),無(wú)線(xiàn)設(shè)備可通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)獲得軟件組件。因此本發(fā)明主要針對(duì)提供可控制無(wú)線(xiàn)設(shè)備處的選擇軟件應(yīng)用程序組件的刪除和重新載入的系統(tǒng)和方法。
發(fā)明內(nèi)容
本文中所揭示的實(shí)施例包括用于升級(jí)(例如)蜂窩電話(huà)、個(gè)人數(shù)字助理、尋呼機(jī)或其它計(jì)算機(jī)平臺(tái)的無(wú)線(xiàn)設(shè)備上的軟件應(yīng)用程序的系統(tǒng)和方法,其中所述升級(jí)視情況在所述軟件應(yīng)用程序的執(zhí)行期間執(zhí)行。至少一個(gè)實(shí)施例包括接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序。此實(shí)施例進(jìn)一步包括檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行。此實(shí)施例進(jìn)一步包括經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本。此實(shí)施例進(jìn)一步包括響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中。此實(shí)施例進(jìn)一步包括終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行。并且,此實(shí)施例進(jìn)一步包括用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序;和此實(shí)施例進(jìn)一步包括起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行。
至少一個(gè)實(shí)施例包括經(jīng)配置以用于接收一請(qǐng)求而利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于檢測(cè)所述可駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的邏輯,此實(shí)施例進(jìn)一步包括經(jīng)配置以用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的邏輯。并且,此實(shí)施例進(jìn)一步包括經(jīng)配置以用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的邏輯。
至少一個(gè)實(shí)施例包括可操作用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的代碼。此實(shí)施例進(jìn)一步包括可操作用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的代碼。此實(shí)施例進(jìn)一步包括可操作用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的代碼。此實(shí)施例進(jìn)一步包括可操作用于響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的代碼。此實(shí)施例進(jìn)一步包括可操作用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的代碼。此實(shí)施例進(jìn)一步包括可操作用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的代碼。并且,此實(shí)施例進(jìn)一步包括可操作用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的代碼。
至少一個(gè)實(shí)施例包括用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的裝置。此實(shí)施例包括用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的裝置。此實(shí)施例包括用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的裝置。此實(shí)施例包括用于響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的裝置。此實(shí)施例包括用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的裝置。此實(shí)施例包括用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的裝置。并且,此實(shí)施例包括用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的裝置。
至少一個(gè)實(shí)施例包括接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序。此實(shí)施例進(jìn)一步包括經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本。此實(shí)施例進(jìn)一步包括響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中。此實(shí)施例進(jìn)一步包括檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行。此實(shí)施例進(jìn)一步包括終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行。此實(shí)施例進(jìn)一步包括利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序。并且,此實(shí)施例進(jìn)一步包括起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行。
至少一個(gè)實(shí)施例包括經(jīng)配置以用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的邏輯。此實(shí)施例還包括經(jīng)配置以用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的邏輯。并且,此實(shí)施例進(jìn)一步包括經(jīng)配置以用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的邏輯。
至少一個(gè)實(shí)施例包括可操作用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的代碼。此實(shí)施例進(jìn)一步包括可操作用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的代碼。此實(shí)施例進(jìn)一步包括可操作用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的代碼。此實(shí)施例進(jìn)一步包括可操作用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的代碼。此實(shí)施例進(jìn)一步包括可操作用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的代碼。此實(shí)施例進(jìn)一步包括可操作用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的代碼。并且,此實(shí)施例進(jìn)一步包括可操作用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的代碼。
至少一個(gè)實(shí)施例包括用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的裝置。此實(shí)施例進(jìn)一步包括用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的裝置。此實(shí)施例進(jìn)一步包括用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的裝置。此實(shí)施例進(jìn)一步包括用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的裝置。此實(shí)施例進(jìn)一步包括用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的裝置。此實(shí)施例進(jìn)一步包括用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的裝置。并且,此實(shí)施例進(jìn)一步包括可操作用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的裝置。
至少一個(gè)實(shí)施例包括接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序。此實(shí)施例進(jìn)一步包括經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本。此實(shí)施例進(jìn)一步包括響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中。此實(shí)施例進(jìn)一步包括檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的所述實(shí)際執(zhí)行。此實(shí)施例進(jìn)一步包括終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行。并且,此實(shí)施例進(jìn)一步包括起始在所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行。
至少一個(gè)實(shí)施例包括經(jīng)配置以用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的所述實(shí)際執(zhí)行的邏輯。此實(shí)施例進(jìn)一步包括經(jīng)配置以用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的邏輯。并且,此實(shí)施例進(jìn)一步包括經(jīng)配置以用于起始在所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行的邏輯。
至少一個(gè)實(shí)施例包括可操作用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的代碼。此實(shí)施例包括可操作用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的代碼。此實(shí)施例包括可操作用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中的代碼。此實(shí)施例包括可操作用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的所述實(shí)際執(zhí)行的代碼。此實(shí)施例包括可操作用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的代碼。并且,此實(shí)施例包括可操作用于起始在所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行的代碼。
至少一個(gè)實(shí)施例包括用于接收一請(qǐng)求以利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的裝置。此實(shí)施例還包括用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的裝置。此實(shí)施例還包括用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中的裝置。此實(shí)施例還包括用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的所述實(shí)際執(zhí)行的裝置。此實(shí)施例還包括用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的裝置。并且,此實(shí)施例包括用于起始在所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行的裝置。
鑒于下文中陳述的
、本發(fā)明的具體實(shí)施方式
和上文中陳述的權(quán)利要求書(shū)后,本發(fā)明的其它目標(biāo)、優(yōu)點(diǎn)和特征將變得顯而易見(jiàn)。
圖1為管理經(jīng)由無(wú)線(xiàn)網(wǎng)絡(luò)與一個(gè)或一個(gè)以上應(yīng)用程序下載服務(wù)器進(jìn)行選擇性通信的無(wú)線(xiàn)設(shè)備上的軟件應(yīng)用程序的本發(fā)明系統(tǒng)的代表圖。
圖2為提供不同無(wú)線(xiàn)設(shè)備與應(yīng)用程序下載服務(wù)器和數(shù)據(jù)庫(kù)之間的通信的示范性無(wú)線(xiàn)網(wǎng)絡(luò)的硬件組件的方框圖。
圖3為具體說(shuō)明一個(gè)應(yīng)用程序和其構(gòu)成組件的駐存在無(wú)線(xiàn)設(shè)備平臺(tái)上的文件表。
圖4為說(shuō)明選擇性地刪除無(wú)線(xiàn)設(shè)備上的應(yīng)用程序組件的流程圖。
圖5為說(shuō)明無(wú)線(xiàn)設(shè)備從應(yīng)用程序下載服務(wù)器檢索應(yīng)用程序組件以恢復(fù)無(wú)線(xiàn)設(shè)備上的應(yīng)用程序以使得所述應(yīng)用程序可再次執(zhí)行的流程圖。
圖6為說(shuō)明包括利用駐存的可執(zhí)行應(yīng)用程序的不同版本代替所述應(yīng)用程序的系統(tǒng)的一個(gè)實(shí)施例的流程圖。
圖7為說(shuō)明包括利用駐存的可執(zhí)行應(yīng)用程序的不同版本代替所述應(yīng)用程序的系統(tǒng)的一個(gè)實(shí)施例的流程圖。
圖8為在用于利用駐存的可執(zhí)行應(yīng)用程序的不同版本代替所述應(yīng)用程序的系統(tǒng)中使用的無(wú)線(xiàn)設(shè)備的一個(gè)實(shí)施例的方框圖。
圖9為在用于利用駐存的可執(zhí)行應(yīng)用程序的不同版本代替所述應(yīng)用程序的系統(tǒng)中使用的無(wú)線(xiàn)設(shè)備的一個(gè)實(shí)施例的方框圖。
圖10在用于利用駐存的可執(zhí)行應(yīng)用程序的不同版本代替所述應(yīng)用程序的系統(tǒng)中使用的無(wú)線(xiàn)設(shè)備的一個(gè)實(shí)施例的方框圖。
具體實(shí)施例方式
參考圖1,圖1展示用于刪除并重新載入跨越無(wú)線(xiàn)網(wǎng)絡(luò)14與至少一個(gè)應(yīng)用程序下載服務(wù)器16通信的無(wú)線(xiàn)設(shè)備(例如蜂窩電話(huà)12)上的軟件應(yīng)用程序組件的本發(fā)明系統(tǒng)10,所述至少一個(gè)應(yīng)用程序下載服務(wù)器16跨越無(wú)線(xiàn)通信門(mén)戶(hù)或無(wú)線(xiàn)網(wǎng)絡(luò)14的其它數(shù)據(jù)入口而將軟件應(yīng)用程序和組件選擇性地傳輸?shù)綗o(wú)線(xiàn)設(shè)備。如此處所示,無(wú)線(xiàn)設(shè)備可為蜂窩電話(huà)12、個(gè)人數(shù)字助理18、尋呼機(jī)20(此處展示為雙向文字尋呼機(jī))或甚至為具有無(wú)線(xiàn)通信門(mén)戶(hù)且可另外具有到網(wǎng)絡(luò)或因特網(wǎng)的有線(xiàn)連接24的單獨(dú)的計(jì)算機(jī)平臺(tái)22。本發(fā)明系統(tǒng)可因此在包括無(wú)線(xiàn)通信門(mén)戶(hù)的任何形式的遠(yuǎn)程模塊上執(zhí)行,所述遠(yuǎn)程模塊包括(不限于)無(wú)線(xiàn)調(diào)制解調(diào)器、PCMCIA卡、接入終端、個(gè)人計(jì)算機(jī)、接入終端、無(wú)顯示器或鍵區(qū)的電話(huà)或其任何組合或子組合。
這里在網(wǎng)絡(luò)26上展示應(yīng)用程序下載服務(wù)器16和其它與無(wú)線(xiàn)網(wǎng)絡(luò)14通信的計(jì)算機(jī)元件。具有第二服務(wù)器30和獨(dú)立的服務(wù)器32,且每一服務(wù)器可跨越無(wú)線(xiàn)網(wǎng)絡(luò)14向無(wú)線(xiàn)設(shè)備12、18、20、22提供單獨(dú)的服務(wù)和處理。最好還有至少一個(gè)保存可由無(wú)線(xiàn)設(shè)備12、18、20、22下載的應(yīng)用程序的存儲(chǔ)的應(yīng)用程序數(shù)據(jù)庫(kù)28。
圖2中展示一更全面地說(shuō)明無(wú)線(xiàn)網(wǎng)絡(luò)14的組件以及本發(fā)明的元件的相互關(guān)系的方框圖。無(wú)線(xiàn)網(wǎng)絡(luò)14僅為示范性的且可包括諸如無(wú)線(xiàn)設(shè)備12、18、20、22等遠(yuǎn)程模塊藉以在彼此之間和/或在無(wú)線(xiàn)網(wǎng)絡(luò)14的組件之間進(jìn)行無(wú)線(xiàn)電通信的任何系統(tǒng),其中包括(不限于)無(wú)線(xiàn)網(wǎng)絡(luò)載波和/或服務(wù)器。應(yīng)用程序下載服務(wù)器16和存儲(chǔ)的應(yīng)用程序數(shù)據(jù)庫(kù)28,連同諸如服務(wù)器30等任何其它提供蜂窩電信服務(wù)所需的服務(wù)器經(jīng)由例如因特網(wǎng)、安全LAN、WAN或其它網(wǎng)絡(luò)的數(shù)據(jù)鏈路與載波網(wǎng)絡(luò)40通信。載波網(wǎng)絡(luò)40控制發(fā)送到消息服務(wù)控制器(“MSC”)42的消息(作為數(shù)據(jù)包發(fā)送)。載波網(wǎng)絡(luò)40通過(guò)網(wǎng)絡(luò)、因特網(wǎng)和/或POTS(“普通電話(huà)系統(tǒng)”)與MSC通信。通常,載波網(wǎng)絡(luò)40與MSC 42之間的網(wǎng)絡(luò)或因特網(wǎng)連接傳送數(shù)據(jù),且POTS傳送語(yǔ)音信息。MSC 42連接到多個(gè)基站(“BTS”)44。以類(lèi)似于載波網(wǎng)絡(luò)的方式,MSC 42通常通過(guò)用于數(shù)據(jù)傳送的網(wǎng)絡(luò)和/或因特網(wǎng)和用于語(yǔ)音信息的POTS而連接到BTS 44。BTS 44最終通過(guò)短消息服務(wù)(“SMS”)或此項(xiàng)技術(shù)中已知的其它無(wú)線(xiàn)電方法將消息無(wú)線(xiàn)地廣播到例如蜂窩電話(huà)12等無(wú)線(xiàn)設(shè)備。
例如蜂窩電話(huà)12的無(wú)線(xiàn)設(shè)備具有可接收并執(zhí)行從應(yīng)用程序下載服務(wù)器16傳輸?shù)能浖?yīng)用程序的計(jì)算機(jī)平臺(tái)50。計(jì)算機(jī)平臺(tái)50包括特殊用途集成電路(“ASIC”52)或其它處理器、微處理器、邏輯電路或其它數(shù)據(jù)處理設(shè)備。ASIC 52是在制造無(wú)線(xiàn)設(shè)備時(shí)安裝且通常不可升級(jí)。ASIC 52或其它處理器執(zhí)行與無(wú)線(xiàn)設(shè)備的存儲(chǔ)器56中的任何駐存程序界面連接的應(yīng)用程序編程界面(“API”)層。所述存儲(chǔ)器可由只讀或隨機(jī)存取存儲(chǔ)器(RAM和ROM)、EPROM、閃存卡或計(jì)算機(jī)平臺(tái)常用的任何存儲(chǔ)器組成。計(jì)算機(jī)平臺(tái)50還包括可保存存儲(chǔ)器56中未實(shí)際使用的應(yīng)用程序的本地?cái)?shù)據(jù)庫(kù)58。本地?cái)?shù)據(jù)庫(kù)58通常為閃存單元,但可為此項(xiàng)技術(shù)中已知的任何二級(jí)存儲(chǔ)設(shè)備,例如磁媒介、EPROM、光學(xué)媒介、磁帶或軟盤(pán)或硬盤(pán)。
例如蜂窩電話(huà)12的無(wú)線(xiàn)設(shè)備因此下載例如游戲、新聞、股票監(jiān)視器和其類(lèi)似物的一個(gè)或一個(gè)以上軟件應(yīng)用程序,并在不使用時(shí)將所述應(yīng)用程序保存在本地?cái)?shù)據(jù)庫(kù)58上,且在用戶(hù)需要時(shí)將本地?cái)?shù)據(jù)庫(kù)58上存儲(chǔ)的駐存應(yīng)用程序上傳到存儲(chǔ)器56以在API 54上執(zhí)行。然而,對(duì)無(wú)線(xiàn)設(shè)備存在明顯的成本和大小限制,其限制本地?cái)?shù)據(jù)庫(kù)58和存儲(chǔ)器56中可用的安裝存儲(chǔ)能力,因此有限量的駐存軟件應(yīng)用程序可保存在無(wú)線(xiàn)設(shè)備上。本發(fā)明系統(tǒng)和方法通過(guò)選擇性地刪除和重新載入個(gè)別軟件應(yīng)用程序組件來(lái)管理此存儲(chǔ)容量的限制,如下文進(jìn)一步描述。
參考圖3,展示保存在API 54中的說(shuō)明性文件結(jié)構(gòu)或數(shù)據(jù)管理結(jié)構(gòu)。頂級(jí)域?yàn)楹杏?jì)算機(jī)平臺(tái)50上的所有離散軟件文件的“文件”60。圖3的文件結(jié)構(gòu)僅為說(shuō)明性的且可在計(jì)算機(jī)平臺(tái)50上不以此形式出現(xiàn),且甚至可完全以機(jī)器代碼存在于沒(méi)有可辨別文件結(jié)構(gòu)的無(wú)線(xiàn)設(shè)備12、18、20、22上。在文件60中的為這里展示為窗口二進(jìn)制運(yùn)行環(huán)境(“BREW”)62的API,所述API為由QUALCOMM用于與無(wú)線(xiàn)設(shè)備計(jì)算機(jī)平臺(tái)50上的軟件應(yīng)用程序交互的API。BREW 62文件包括應(yīng)用程序文件64,且一個(gè)文件為已從應(yīng)用程序下載服務(wù)器16下載且現(xiàn)已駐存在無(wú)線(xiàn)設(shè)備的計(jì)算機(jī)平臺(tái)50的本地?cái)?shù)據(jù)庫(kù)58上的象棋66游戲。出于說(shuō)明目的,象棋66應(yīng)用程序?yàn)闊o(wú)線(xiàn)設(shè)備的駐存軟件應(yīng)用程序。
象棋66應(yīng)用程序包括若干個(gè)軟件組件68,例如文件chess.mod和chess.bar。應(yīng)用程序組件68為執(zhí)行計(jì)算機(jī)平臺(tái)50上的象棋應(yīng)用程序所必需的模塊。象棋66還包括與特定應(yīng)用程序相關(guān)聯(lián)的數(shù)據(jù),這里展示為scores.sig 70,其為用戶(hù)在計(jì)算機(jī)平臺(tái)50上玩象棋游戲所存儲(chǔ)的得分。在象棋66應(yīng)用程序中還可包括作為隱藏文件的許可證。因此,允許執(zhí)行象棋游戲的應(yīng)用程序組件68易于利用從應(yīng)用程序下載服務(wù)器16傳輸?shù)目截悂?lái)復(fù)制,而例如得分70和許可證的相關(guān)應(yīng)用程序數(shù)據(jù)在其文件或模塊被刪除的情況下將會(huì)丟失。本發(fā)明因此利用所述能力以獲得來(lái)自應(yīng)用程序下載服務(wù)器16的非必要應(yīng)用程序組件的另一拷貝,同時(shí)維持例如許可證的不可檢索的應(yīng)用程序相關(guān)數(shù)據(jù),或例如個(gè)人信息和地址的用戶(hù)特定數(shù)據(jù),或甚至是完全與娛樂(lè)有關(guān)的數(shù)據(jù),例如象棋游戲的先前得分70。
當(dāng)用戶(hù)希望將另一軟件應(yīng)用程序下載到計(jì)算機(jī)平臺(tái)50且沒(méi)有充分的資源時(shí),尤其是就本地?cái)?shù)據(jù)庫(kù)58上的存儲(chǔ)而言,BREW API 62或其它空間管理組件可向用戶(hù)觸發(fā)提示來(lái)詢(xún)問(wèn)象棋應(yīng)用程序組件是否可移除,使得可將所請(qǐng)求的下載應(yīng)用程序放置在計(jì)算機(jī)平臺(tái)50上。另外,BREW API 62可確定那些組件要?jiǎng)h除并自動(dòng)管理系統(tǒng)資源。當(dāng)chess.mod和chess.bar文件已從象棋66文件刪除時(shí),象棋游戲?qū)⒉豢稍谟?jì)算機(jī)平臺(tái)50上執(zhí)行。通過(guò)在計(jì)算機(jī)平臺(tái)50上必要和非必要文件的分離,無(wú)線(xiàn)設(shè)備可選擇性地刪除一個(gè)或一個(gè)以上駐存軟件應(yīng)用程序的應(yīng)用程序組件68中的一個(gè)或一個(gè)以上組件,而不丟失應(yīng)用程序相關(guān)數(shù)據(jù),例如得分文件70。
當(dāng)應(yīng)用程序已刪除一個(gè)或一個(gè)以上應(yīng)用程序組件,例如對(duì)于象棋游戲66已刪除chess.mod和chess.bar應(yīng)用程序組件68,且用戶(hù)希望再次使用所述應(yīng)用程序時(shí),無(wú)線(xiàn)設(shè)備將跨越無(wú)線(xiàn)網(wǎng)絡(luò)14選擇性地提示應(yīng)用程序下載服務(wù)器16以傳輸一個(gè)或一個(gè)以上應(yīng)用程序組件68。一旦無(wú)線(xiàn)設(shè)備接收到應(yīng)用程序組件68,無(wú)線(xiàn)設(shè)備將所傳輸?shù)囊粋€(gè)或一個(gè)以上應(yīng)用程序組件68安裝回計(jì)算機(jī)平臺(tái)50上,使得駐存應(yīng)用程序或這里的象棋66可再次執(zhí)行。應(yīng)注意,不必移除所有的應(yīng)用程序組件68,且可基于應(yīng)用程序的大小或其它標(biāo)準(zhǔn)進(jìn)行刪除。此外,例如scores.sig 70的含有應(yīng)用程序相關(guān)數(shù)據(jù)的文件也可含有執(zhí)行應(yīng)用程序所需的應(yīng)用程序組件且不必為純粹的數(shù)據(jù)容器。
圖4和5為說(shuō)明用于管理駐存在無(wú)線(xiàn)設(shè)備12、18、20、22的計(jì)算機(jī)平臺(tái)50上的一個(gè)或一個(gè)以上軟件應(yīng)用程序的應(yīng)用程序組件68的載入和移除的本發(fā)明方法的流程圖。如圖4中所示,計(jì)算機(jī)平臺(tái)50接收指令以下載軟件應(yīng)用程序,如步驟80所示,且接著在無(wú)線(xiàn)設(shè)備的ASIC 52或其它處理器上作出關(guān)于是否存在可用于下載所述應(yīng)用程序的充分資源的決定,如步驟82所示。如果存在充分的可利用資源,那么下載所述應(yīng)用程序并存儲(chǔ),如步驟84所示,且下載過(guò)程終止。如果在決定82處沒(méi)有充分資源,那么提示用戶(hù)清理系統(tǒng)資源以下載所述應(yīng)用程序,如步驟86所示,此需要?jiǎng)h除某一應(yīng)用程序組件。接著作出關(guān)于用戶(hù)是否準(zhǔn)許清理資源的決定,如決定88所示,且如果沒(méi)有準(zhǔn)許,那么通知用戶(hù)沒(méi)有可用于下載的充分資源,如步驟90所示,且下載過(guò)程終止。如果在決定88處用戶(hù)準(zhǔn)許清理資源,那么例如組件68的一個(gè)或一個(gè)以上應(yīng)用程序組件被選擇性地刪除以清理必需的資源,且所述刪除的發(fā)生沒(méi)有明顯丟失例如scores.sig文件70的應(yīng)用程序相關(guān)數(shù)據(jù)或使用應(yīng)用程序的任何許可證。接著下載所述應(yīng)用程序并存儲(chǔ)在計(jì)算機(jī)平臺(tái)50上,如步驟94所示,且下載過(guò)程終止。
如步驟100所示,當(dāng)接收到請(qǐng)求以執(zhí)行具有一個(gè)或一個(gè)以上已刪除組件68的應(yīng)用程序時(shí),重新安裝已刪除組件的過(guò)程展示于圖5中。此一實(shí)例將為用戶(hù)設(shè)法再次玩象棋游戲。接著優(yōu)選提示用戶(hù)建立到應(yīng)用程序下載服務(wù)器16的通信鏈路,如步驟102所示。然而,在接收到執(zhí)行請(qǐng)求時(shí)無(wú)線(xiàn)設(shè)備可交替地自動(dòng)建立通信鏈路。如果用戶(hù)請(qǐng)求執(zhí)行所述應(yīng)用程序的請(qǐng)求,那么作出關(guān)于用戶(hù)是否已授權(quán)所述鏈路的決定,如決定104所示。如果用戶(hù)拒絕建立所述鏈路,那么通知用戶(hù)必須下載所需應(yīng)用程序組件以執(zhí)行請(qǐng)求應(yīng)用程序,如步驟106所示,且接著執(zhí)行請(qǐng)求終止。如果在決定104處用戶(hù)授權(quán)所述通信鏈路,那么建立與應(yīng)用程序下載服務(wù)器16的通信鏈路,如步驟108所示。
一旦已建立與應(yīng)用程序下載服務(wù)器16的通信鏈路,無(wú)線(xiàn)設(shè)備便提示應(yīng)用程序下載服務(wù)器16傳輸無(wú)線(xiàn)設(shè)備執(zhí)行所請(qǐng)求的應(yīng)用程序所需的一個(gè)或一個(gè)以上應(yīng)用程序組件,如步驟110所示。接著確定服務(wù)器是否已傳輸必需的應(yīng)用程序組件,如決定112所示,且如果沒(méi)有,那么通知用戶(hù)不能獲得必需的組件,如步驟114所示,且執(zhí)行請(qǐng)求終止。否則,如果在決定112處用戶(hù)已傳輸必需的組件,那么無(wú)線(xiàn)設(shè)備接收來(lái)自應(yīng)用程序下載服務(wù)器的組件,如步驟116所示,并將所接收的組件安裝到應(yīng)用程序中以使得應(yīng)用程序可執(zhí)行,如步驟118所示。接著在無(wú)線(xiàn)設(shè)備上執(zhí)行應(yīng)用程序直到終止,如步驟120所示。
如果例如應(yīng)用程序組件68的已刪除應(yīng)用程序組件的重新載入是自動(dòng)的,那么圖5的過(guò)程將正好從步驟100接收到執(zhí)行應(yīng)用程序的請(qǐng)求進(jìn)行到步驟110提示應(yīng)用程序下載服務(wù)器16。無(wú)線(xiàn)設(shè)備將僅通知用戶(hù)所述應(yīng)用程序是否不能下載組件,如步驟114所示。
建立通信鏈路的步驟通常為通過(guò)如圖2中所示的數(shù)字或模擬蜂窩電信網(wǎng)絡(luò)來(lái)建立通信鏈路,但可交替地使用例如無(wú)線(xiàn)LAN或微波或紅外線(xiàn)網(wǎng)絡(luò)的其它無(wú)線(xiàn)網(wǎng)絡(luò)。此外,建立通信鏈路可在期望執(zhí)行已刪除一個(gè)或一個(gè)以上相關(guān)組件的駐存軟件應(yīng)用程序的無(wú)線(xiàn)設(shè)備12、18、20、22上自動(dòng)發(fā)生,即,無(wú)線(xiàn)設(shè)備通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)14橋接與應(yīng)用程序下載服務(wù)器16的通信。否則,建立通信鏈路的步驟可根據(jù)無(wú)線(xiàn)設(shè)備12、18、20、22的用戶(hù)的具體提示而發(fā)生來(lái)橋接與應(yīng)用程序下載服務(wù)器16的通信,以經(jīng)由無(wú)線(xiàn)網(wǎng)絡(luò)14向已刪除一個(gè)或一個(gè)以上相關(guān)組件的駐存軟件應(yīng)用程序傳輸一個(gè)或一個(gè)以上組件。如果無(wú)線(xiàn)設(shè)備的用戶(hù)為了將新的應(yīng)用程序組件傳輸?shù)綗o(wú)線(xiàn)設(shè)備而要為例如蜂窩電話(huà)呼叫的通信鏈路付費(fèi),那么應(yīng)在刪除組件之前提示用戶(hù)授權(quán)重新載入組件而必需的通信鏈路。當(dāng)需要通信鏈路檢索應(yīng)用程序的組件以使應(yīng)用程序可執(zhí)行時(shí)可再次提示用戶(hù)。然而,如果無(wú)線(xiàn)設(shè)備完全自動(dòng)化且通信鏈路不需要向用戶(hù)收費(fèi),那么不需要提示用戶(hù),且組件的重新載入為顯然的,除非遇到問(wèn)題且產(chǎn)生錯(cuò)誤消息,例如在步驟114處。
執(zhí)行期間的自動(dòng)應(yīng)用程序升級(jí)在一個(gè)實(shí)施例中,如在圖6中所示,下載到無(wú)線(xiàn)設(shè)備12、18、20、22的應(yīng)用程序或擴(kuò)展部分(extension)可下載到無(wú)線(xiàn)設(shè)備12、18、20、22,同時(shí)應(yīng)用程序或擴(kuò)展部分的先前版本或不同版本正在無(wú)線(xiàn)設(shè)備12、18、20、22上執(zhí)行。可通過(guò)設(shè)備用戶(hù)或無(wú)線(xiàn)設(shè)備12、18、20、22上運(yùn)行的過(guò)程,或通過(guò)服務(wù)器16、30、32,由無(wú)線(xiàn)設(shè)備12、18、20、22請(qǐng)求升級(jí)或下載應(yīng)用程序或擴(kuò)展部分。注意“升級(jí)”不必包括更遲的版本,但可指不同版本。舉例而言,優(yōu)選回復(fù)應(yīng)用程序的舊版本,在這種情況下,“升級(jí)”包括下載應(yīng)用程序的先前版本來(lái)代替現(xiàn)有的而非更遲的版本。
(下文中,將僅使用“應(yīng)用程序”,然而應(yīng)理解,此描述也適用于擴(kuò)展部分。擴(kuò)展部分包括由數(shù)據(jù)或指令用于輔助執(zhí)行的程序、組件或服務(wù)。舉例而言,擴(kuò)展部分可包括BREW環(huán)境下安裝在用于執(zhí)行Java程序的無(wú)線(xiàn)設(shè)備上的Java虛擬機(jī),或與MPEG文件一起安裝并使用的MPEG播放器)。此外,應(yīng)用程序不僅包括任何可執(zhí)行類(lèi)型的軟件,且可包括腳本或內(nèi)容數(shù)據(jù)。
實(shí)施例過(guò)程包括步驟600,其中作出請(qǐng)求以將應(yīng)用程序升級(jí)下載到無(wú)線(xiàn)設(shè)備12、18、20、22。無(wú)線(xiàn)設(shè)備12、18、20、22可具有在手持機(jī)上執(zhí)行的應(yīng)用程序的不同版本或先前版本。在步驟602,進(jìn)行檢查以確定所請(qǐng)求的應(yīng)用程序的不同版本或先前版本是否正在無(wú)線(xiàn)設(shè)備12、18、20、22上執(zhí)行。如果沒(méi)有,那么在步驟604,所述應(yīng)用程序可通過(guò)在現(xiàn)有(即,先前的或不同的)應(yīng)用程序位于設(shè)備上的文件位置中利用新請(qǐng)求的應(yīng)用程序覆寫(xiě)現(xiàn)有應(yīng)用程序而利用新請(qǐng)求的應(yīng)用程序來(lái)升級(jí)。
然而,如果在步驟602檢查確定應(yīng)用程序正在執(zhí)行,那么在步驟606過(guò)程繼續(xù),其中所升級(jí)的應(yīng)用程序存儲(chǔ)于臨時(shí)位置中。此臨時(shí)位置可在設(shè)備上,然而其可被存儲(chǔ)在外圍設(shè)備或網(wǎng)絡(luò)上設(shè)備可訪(fǎng)問(wèn)的其它位置上。
在步驟608,正執(zhí)行的應(yīng)用程序被告知其需要終止。且應(yīng)用程序或二級(jí)過(guò)程起始執(zhí)行應(yīng)用程序的終止。在應(yīng)用程序終止后,在步驟610,升級(jí)的應(yīng)用程序接著傳送到現(xiàn)有應(yīng)用程序的文件位置。注意,升級(jí)的應(yīng)用程序所復(fù)制到的位置為系統(tǒng)期望執(zhí)行應(yīng)用程序的任何位置。舉例而言,在一個(gè)實(shí)施例中,如果系統(tǒng)期望尋找升級(jí)位置以執(zhí)行升級(jí)的應(yīng)用程序,且如果其不存在,那么系統(tǒng)尋找另一位置以執(zhí)行現(xiàn)有應(yīng)用程序,接著過(guò)程將把所升級(jí)的應(yīng)用程序復(fù)制到升級(jí)位置,且不覆寫(xiě)現(xiàn)有應(yīng)用程序。
在升級(jí)的應(yīng)用程序從臨時(shí)位置傳送到正確位置(無(wú)論是覆寫(xiě)現(xiàn)有應(yīng)用程序的位置還是如上文所描述的某些其它期望位置)后,接著在步驟612應(yīng)用程序重新開(kāi)始。注意,此應(yīng)用程序可自動(dòng)重新開(kāi)始。還應(yīng)注意,設(shè)備不需要重置、通過(guò)重啟路由器運(yùn)行、重新啟動(dòng),也不需要執(zhí)行用于待升級(jí)的現(xiàn)有應(yīng)用程序和正執(zhí)行應(yīng)用程序的任何其它重置類(lèi)型的功能。
在應(yīng)用程序升級(jí)的另一實(shí)施例中,且如圖7中所示,在步驟606中且在步驟602之前,所請(qǐng)求的應(yīng)用程序被下載到設(shè)備的臨時(shí)位置。在下載后,接著在步驟602檢查設(shè)備以確定先前或不同的應(yīng)用程序版本是否正在設(shè)備上執(zhí)行。如果是,那么在步驟608終止現(xiàn)有應(yīng)用程序的執(zhí)行,且在步驟610,所升級(jí)的應(yīng)用程序從臨時(shí)存儲(chǔ)位置復(fù)制到正確的存儲(chǔ)位置(例如,其可覆寫(xiě)現(xiàn)有應(yīng)用程序),且接著在步驟612執(zhí)行所升級(jí)的應(yīng)用程序。如上所述,此執(zhí)行可自動(dòng)執(zhí)行。
如果步驟602中確定現(xiàn)有應(yīng)用程序未在執(zhí)行,那么在步驟700,所升級(jí)的應(yīng)用程序傳送到正確位置,例如覆寫(xiě)現(xiàn)有應(yīng)用程序。在此實(shí)例中,因?yàn)樗鰬?yīng)用程序未在執(zhí)行,所以不需要在將所升級(jí)的應(yīng)用程序傳送到正確位置之前終止其執(zhí)行。
圖8展示實(shí)施如圖6中所述的方法的無(wú)線(xiàn)設(shè)備的一個(gè)實(shí)施例。如所示,無(wú)線(xiàn)設(shè)備800含有一存儲(chǔ)器802、一網(wǎng)絡(luò)界面804、處理器806和一總線(xiàn)808。盡管存儲(chǔ)器802展示為RAM存儲(chǔ)器,但其它實(shí)施例包括例如已知用于提供配置邏輯的存儲(chǔ)的任何已知類(lèi)型存儲(chǔ)器的存儲(chǔ)器802。另外,盡管存儲(chǔ)器802展示為一種類(lèi)型存儲(chǔ)器的一個(gè)相鄰單元,但其它實(shí)施例使用多個(gè)位置和多種類(lèi)型存儲(chǔ)器作為存儲(chǔ)器802。網(wǎng)絡(luò)I/O界面804經(jīng)由總線(xiàn)808將輸入和輸出提供到耦合到網(wǎng)絡(luò)的設(shè)備。處理器806根據(jù)經(jīng)由總線(xiàn)808提供的指令和數(shù)據(jù)進(jìn)行操作。在至少一個(gè)實(shí)施例中處理器906為ASIC 52的部分。
位于存儲(chǔ)器802中的為邏輯810,用于接收請(qǐng)求以利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序;邏輯812,用于檢測(cè)駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;邏輯814,用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的不同版本;邏輯816,用于響應(yīng)檢測(cè)駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行以將應(yīng)用程序的不同版本存儲(chǔ)于臨時(shí)位置中;邏輯818,用于終止駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;邏輯820,用于利用存儲(chǔ)于臨時(shí)位置中的駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)覆寫(xiě)所述應(yīng)用程序;和邏輯822,用于起始應(yīng)用程序的不同版本的實(shí)際執(zhí)行。在一個(gè)或一個(gè)以上不同實(shí)施例中,用于接收請(qǐng)求以利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的邏輯810經(jīng)進(jìn)一步修改,使得其中由無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求(824),其中通過(guò)檢測(cè)用戶(hù)輸入而起始所述請(qǐng)求(826),其中應(yīng)用程序的所述不同版本為先前版本(828),和/或其中所述應(yīng)用程序?yàn)閿U(kuò)展部分、腳本和內(nèi)容數(shù)據(jù)中的至少一者(830)。并且,在一個(gè)實(shí)施例中,用于響應(yīng)檢測(cè)駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行以將應(yīng)用程序的不同版本存儲(chǔ)于臨時(shí)位置中的邏輯816經(jīng)進(jìn)一步修改,其中所述臨時(shí)位置在外圍設(shè)備和遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者上(832)。
圖9展示實(shí)施如圖7中所述方法的無(wú)線(xiàn)設(shè)備的一個(gè)實(shí)施例。如所示,無(wú)線(xiàn)設(shè)備900含有存儲(chǔ)器902、網(wǎng)絡(luò)界面904、處理器906和總線(xiàn)908。盡管存儲(chǔ)器902被展示為RAM存儲(chǔ)器,但其它實(shí)施例包括例如已知用于提供配置邏輯的存儲(chǔ)的所有已知類(lèi)型存儲(chǔ)器的存儲(chǔ)器902。另外,盡管存儲(chǔ)器802被展示為一種類(lèi)型存儲(chǔ)器的一個(gè)相鄰單元,但其它實(shí)施例使用多個(gè)位置和多種類(lèi)型存儲(chǔ)器作為存儲(chǔ)器902。網(wǎng)絡(luò)I/O界面904經(jīng)由總線(xiàn)908將輸入和輸出提供到耦合到網(wǎng)絡(luò)的設(shè)備。處理器906根據(jù)經(jīng)由總線(xiàn)908提供的指令和數(shù)據(jù)進(jìn)行操作。在至少一個(gè)實(shí)施例中,處理器906為ASIC 52的一部分。
位于存儲(chǔ)器902中的是邏輯910,用于接收一利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求;邏輯912,用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的不同版本;邏輯914,用于響應(yīng)接收所述用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求而將應(yīng)用程序的不同版本存儲(chǔ)于臨時(shí)位置中;邏輯916,用于檢測(cè)駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;邏輯918,用于終止駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;邏輯920,用于利用存儲(chǔ)于臨時(shí)位置中的駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)覆寫(xiě)所述應(yīng)用程序;和邏輯922,用于起始應(yīng)用程序的不同版本的實(shí)際執(zhí)行。在一個(gè)或一個(gè)以上不同實(shí)施例中,用于接收一利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求的邏輯910經(jīng)進(jìn)一步修改以使得其中由無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求(924);其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求(926);其中應(yīng)用程序的所述不同版本為先前版本(928);和/或其中所述應(yīng)用程序?yàn)閿U(kuò)展部分、腳本和內(nèi)容數(shù)據(jù)中的至少一個(gè)(930)。并且,在一個(gè)實(shí)施例中,用于響應(yīng)檢測(cè)駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行而將應(yīng)用程序的不同版本存儲(chǔ)于臨時(shí)位置中的邏輯914經(jīng)進(jìn)一步修改,其中所述臨時(shí)位置在外圍設(shè)備和遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者上(932)。
圖10展示實(shí)施自動(dòng)應(yīng)用程序升級(jí)過(guò)程的一個(gè)版本的無(wú)線(xiàn)設(shè)備的一個(gè)實(shí)施例,所述自動(dòng)應(yīng)用程序升級(jí)過(guò)程有時(shí)被描述為包括在起始一優(yōu)選應(yīng)用程序的執(zhí)行的過(guò)程中連續(xù)搜索執(zhí)行位置。如所示,無(wú)線(xiàn)設(shè)備1000含有存儲(chǔ)器1002、網(wǎng)絡(luò)界面1004、處理器1006和總線(xiàn)1008。盡管存儲(chǔ)器1002被展示為RAM存儲(chǔ)器,但其它實(shí)施例包括例如已知用于提供配置邏輯的存儲(chǔ)的所有已知類(lèi)型存儲(chǔ)器的存儲(chǔ)器1002。另外,盡管存儲(chǔ)器1002被展示為一種類(lèi)型存儲(chǔ)器的一個(gè)相鄰單元,但其它實(shí)施例使用多個(gè)位置和多種類(lèi)型存儲(chǔ)器作為存儲(chǔ)器1002。網(wǎng)絡(luò)I/O界面1004經(jīng)由總線(xiàn)1008將輸入和輸出提供到耦合到網(wǎng)絡(luò)的設(shè)備。處理器1006根據(jù)經(jīng)由總線(xiàn)1008提供的指令和數(shù)據(jù)進(jìn)行操作。在至少一個(gè)實(shí)施例中,處理器1006為ASIC 52的一部分。
位于存儲(chǔ)器1002中的為邏輯1010,用于接收利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求;邏輯1012,用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的不同版本;邏輯1014,用于響應(yīng)接收所述利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求而將應(yīng)用程序的不同版本存儲(chǔ)于臨時(shí)位置中;邏輯1016,用于檢測(cè)駐存的可執(zhí)行應(yīng)用程序在實(shí)際應(yīng)用程序位置中的實(shí)際執(zhí)行;邏輯1018,用于終止駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;邏輯1020,經(jīng)配置用于起始在升級(jí)位置和實(shí)際應(yīng)用程序位置的連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行。在一個(gè)或一個(gè)以上不同實(shí)施例中,用于接收利用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求的邏輯1010經(jīng)進(jìn)一步修改,使得其中所述請(qǐng)求由無(wú)線(xiàn)設(shè)備起始(1022),其中通過(guò)檢測(cè)用戶(hù)輸入而起始所述請(qǐng)求(1024),其中應(yīng)用程序的所述不同版本為先前版本(1026),和/或其中所述應(yīng)用程序?yàn)閿U(kuò)展部分、腳本和內(nèi)容數(shù)據(jù)中的至少一者(1028)。并且,在一個(gè)實(shí)施例中,用于響應(yīng)接收所述用駐存的可執(zhí)行應(yīng)用程序的不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求而將應(yīng)用程序的不同版本存儲(chǔ)于升級(jí)位置中的邏輯1014經(jīng)進(jìn)一步修改,其中所述升級(jí)位置在外圍設(shè)備和遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者上(1030)。
鑒于本發(fā)明性方法,本發(fā)明包括駐存于計(jì)算機(jī)可讀媒介中的程序,其中所述程序引導(dǎo)具有計(jì)算機(jī)平臺(tái)的無(wú)線(xiàn)設(shè)備執(zhí)行本發(fā)明性方法步驟。計(jì)算機(jī)可讀媒介可為蜂窩電話(huà)12(或其它無(wú)線(xiàn)設(shè)備)的計(jì)算機(jī)平臺(tái)50的存儲(chǔ)器56,或可處于例如蜂窩電話(huà)12的本地?cái)?shù)據(jù)庫(kù)58的本地?cái)?shù)據(jù)庫(kù)中。此外,計(jì)算機(jī)可讀媒介可處于可載入到無(wú)線(xiàn)設(shè)備計(jì)算機(jī)平臺(tái)上的二級(jí)存儲(chǔ)媒介中,所述二級(jí)存儲(chǔ)媒介為例如磁盤(pán)或磁帶、光盤(pán)、硬盤(pán)、閃存或此項(xiàng)技術(shù)中已知的其它存儲(chǔ)媒介。在圖4和圖5的情況下,本發(fā)明性方法可(例如)通過(guò)操作無(wú)線(xiàn)網(wǎng)絡(luò)14的部分而執(zhí)行機(jī)器可讀指令的序列來(lái)實(shí)施。這些指令可駐存于各種類(lèi)型的信號(hào)承載媒介中。此信號(hào)承載媒介可包含(例如)可由無(wú)線(xiàn)網(wǎng)絡(luò)14的組件訪(fǎng)問(wèn)或駐存于無(wú)線(xiàn)網(wǎng)絡(luò)14的組件中的RAM(未圖示)。無(wú)論是含于RAM、磁盤(pán)還是其它二級(jí)存儲(chǔ)媒介中,指令可存儲(chǔ)于各種機(jī)器可讀數(shù)據(jù)存儲(chǔ)媒介上,例如DASD存儲(chǔ)器(例如,常規(guī)“硬盤(pán)”或RAID陣列)、磁帶、電子只讀存儲(chǔ)器(例如,ROM、EPROM、或EEPROM)、光存儲(chǔ)設(shè)備(例如,CD-ROM、WORM、DVD、數(shù)字光帶)、紙“穿孔”卡,或包括傳輸媒介(例如數(shù)字和模擬)的其它適當(dāng)數(shù)據(jù)存儲(chǔ)媒介。
雖然前述揭示內(nèi)容展示本發(fā)明的說(shuō)明性實(shí)施例,但應(yīng)注意,可在不脫離如由所附權(quán)利要求書(shū)界定的本發(fā)明的范疇的情況下在本文進(jìn)行各種改變和修改。此外,盡管本發(fā)明的元件可以單數(shù)來(lái)描述或主張,但也涵蓋復(fù)數(shù),除非明確規(guī)定限于單數(shù)。
權(quán)利要求
1.一種用于利用一無(wú)線(xiàn)設(shè)備上一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的方法,其包含接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求;檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本;響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中;終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行;利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序;和起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行。
2.根據(jù)權(quán)利要求1所述的方法,其中由所述無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求。
3.根據(jù)權(quán)利要求1所述的方法,其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求。
4.根據(jù)權(quán)利要求1所述的方法,其中應(yīng)用程序的所述不同版本為一先前版本。
5.根據(jù)權(quán)利要求1所述的方法,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
6.根據(jù)權(quán)利要求1所述的方法,其中所述臨時(shí)位置在一外圍設(shè)備和一遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者上。
7.一種含有一駐存的可執(zhí)行應(yīng)用程序的無(wú)線(xiàn)設(shè)備,其包含經(jīng)配置以接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的邏輯;經(jīng)配置以檢測(cè)所述可駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的邏輯;經(jīng)配置以經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的邏輯;經(jīng)配置以響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的邏輯;經(jīng)配置以終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的邏輯;經(jīng)配置以利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的邏輯;和經(jīng)配置以用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的邏輯。
8.根據(jù)權(quán)利要求7所述的無(wú)線(xiàn)設(shè)備,其中由所述無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求。
9.根據(jù)權(quán)利要求7所述的無(wú)線(xiàn)設(shè)備,其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求。
10.根據(jù)權(quán)利要求7所述的無(wú)線(xiàn)設(shè)備,其中應(yīng)用程序的所述不同版本為一先前版本。
11.根據(jù)權(quán)利要求7所述的無(wú)線(xiàn)設(shè)備,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
12.根據(jù)權(quán)利要求7所述的無(wú)線(xiàn)設(shè)備,其中所述臨時(shí)位置在一外圍設(shè)備和一遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者上。
13.一種包含在一計(jì)算機(jī)可讀媒介上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序能夠利用一無(wú)線(xiàn)設(shè)備上的一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序,所述計(jì)算機(jī)程序包含可操作以接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的代碼;可操作以檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的代碼;可操作以經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的代碼;可操作以響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的代碼;可操作以終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的代碼;可操作以利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的代碼;和可操作以起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的代碼。
14.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)程序,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
15.一種含有一駐存的應(yīng)用程序的無(wú)線(xiàn)設(shè)備,其包含用于接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的裝置;用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的裝置;用于經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的裝置;用于響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的裝置;用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的裝置;用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的裝置;和用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的裝置。
16.根據(jù)權(quán)利要求15所述的無(wú)線(xiàn)設(shè)備,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
17.一種利用一無(wú)線(xiàn)設(shè)備上一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的方法,其包含接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求;經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本;響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中;檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行;終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行;利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序;和起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行。
18.根據(jù)權(quán)利要求17所述的方法,其中由所述無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求。
19.根據(jù)權(quán)利要求17所述的方法,其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求。
20.根據(jù)權(quán)利要求17所述的方法,其中應(yīng)用程序的所述不同版本為一先前版本。
21.根據(jù)權(quán)利要求17所述的方法,其中所述駐存的可執(zhí)行應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
22.根據(jù)權(quán)利要求17所述的方法,其中所述臨時(shí)位置為一外圍設(shè)備和一遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者。
23.一種含有一駐存的可執(zhí)行應(yīng)用程序的無(wú)線(xiàn)設(shè)備,其包含經(jīng)配置以接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的邏輯;經(jīng)配置以經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的邏輯;經(jīng)配置以響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的邏輯;經(jīng)配置以檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的邏輯;經(jīng)配置以終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的邏輯;經(jīng)配置以利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的邏輯;和經(jīng)配置以起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的邏輯。
24.根據(jù)權(quán)利要求23所述的無(wú)線(xiàn)設(shè)備,其中由所述無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求。
25.根據(jù)權(quán)利要求23所述的無(wú)線(xiàn)設(shè)備,其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求。
26.根據(jù)權(quán)利要求23所述的無(wú)線(xiàn)設(shè)備,其中應(yīng)用程序的所述不同版本為一先前版本。
27.根據(jù)權(quán)利要求23所述的無(wú)線(xiàn)設(shè)備,其中所述駐存的可執(zhí)行應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
28.根據(jù)權(quán)利要求23所述的無(wú)線(xiàn)設(shè)備,其中所述臨時(shí)位置是一外圍設(shè)備和一遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者。
29.一種包含在一計(jì)算機(jī)可讀媒介上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序能夠利用一無(wú)線(xiàn)設(shè)備上一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序,所述計(jì)算機(jī)程序包含可操作以接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的代碼;可操作以經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的代碼;可操作以響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的代碼;可操作以檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的代碼;可操作以終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的代碼;可操作以利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的代碼;和可操作以起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的代碼。
30.根據(jù)權(quán)利要求29所述的計(jì)算機(jī)程序,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
31.一種用于處理經(jīng)由一網(wǎng)絡(luò)與一客戶(hù)端計(jì)算設(shè)備的安全通信的無(wú)線(xiàn)設(shè)備,其包含用于接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的裝置;用于經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本的裝置;用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中的裝置;用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行的裝置;用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的裝置;用于利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序的裝置;和用于起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行的裝置。
32.根據(jù)權(quán)利要求31所述的無(wú)線(xiàn)設(shè)備,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
33.一種利用一無(wú)線(xiàn)設(shè)備上一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的方法,其包含接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求;經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本;響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中;檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的實(shí)際執(zhí)行;終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行;和起始在對(duì)所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行。
34.根據(jù)權(quán)利要求33所述的方法,其中由所述無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求。
35.根據(jù)權(quán)利要求33所述的方法,其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求。
36.根據(jù)權(quán)利要求33所述的方法,其中應(yīng)用程序的所述不同版本為一先前版本。
37.根據(jù)權(quán)利要求33所述的方法,其中所述駐存的可執(zhí)行應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
38.根據(jù)權(quán)利要求33所述的方法,其中所述臨時(shí)位置為一外圍設(shè)備和一遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者。
39.一種含有一駐存的可執(zhí)行應(yīng)用程序的無(wú)線(xiàn)設(shè)備,其包含經(jīng)配置以接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的邏輯;經(jīng)配置以經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的邏輯;經(jīng)配置以響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中的邏輯;經(jīng)配置以檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的實(shí)際執(zhí)行的邏輯;經(jīng)配置以終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的邏輯;和經(jīng)配置以起始在對(duì)所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行的邏輯。
40.根據(jù)權(quán)利要求39所述的無(wú)線(xiàn)設(shè)備,其中由所述無(wú)線(xiàn)設(shè)備起始所述請(qǐng)求。
41.根據(jù)權(quán)利要求39所述的無(wú)線(xiàn)設(shè)備,其中通過(guò)用戶(hù)輸入的檢測(cè)起始所述請(qǐng)求。
42.根據(jù)權(quán)利要求39所述的無(wú)線(xiàn)設(shè)備,其中應(yīng)用程序的所述不同版本為一先前版本。
43.根據(jù)權(quán)利要求39所述的無(wú)線(xiàn)設(shè)備,其中所述駐存的可執(zhí)行應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
44.根據(jù)權(quán)利要求39所述的無(wú)線(xiàn)設(shè)備,其中所述升級(jí)位置為一外圍設(shè)備和一遠(yuǎn)程網(wǎng)絡(luò)位置中的至少一者。
45.一種包含在一計(jì)算機(jī)可讀媒介上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序能夠利用一無(wú)線(xiàn)設(shè)備上一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序,所述計(jì)算機(jī)程序包含可操作以接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的代碼;可操作以經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的代碼;可操作以響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中的代碼;可操作以檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的實(shí)際執(zhí)行的代碼;可操作以終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的代碼;和可操作以起始在對(duì)所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行的代碼。
46.根據(jù)權(quán)利要求45的計(jì)算機(jī)程序,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
47.一種含有一駐存的可執(zhí)行應(yīng)用程序的無(wú)線(xiàn)設(shè)備,其包含用于接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求的裝置;用于經(jīng)由一網(wǎng)絡(luò)來(lái)接收所述應(yīng)用程序的所述不同版本的裝置;用于響應(yīng)接收所述利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本代替所述應(yīng)用程序的請(qǐng)求而將所述應(yīng)用程序的所述版本存儲(chǔ)于一升級(jí)位置中的裝置;用于檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序在一實(shí)際應(yīng)用程序位置中的實(shí)際執(zhí)行的裝置;用于終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行的裝置;和用于起始在對(duì)所述升級(jí)位置和所述實(shí)際應(yīng)用程序位置的一連續(xù)搜索中檢測(cè)到的第一應(yīng)用程序的執(zhí)行的裝置。
48.根據(jù)權(quán)利要求47所述的無(wú)線(xiàn)設(shè)備,其中所述應(yīng)用程序?yàn)橐粩U(kuò)展部分、一腳本和內(nèi)容數(shù)據(jù)中的至少一者。
全文摘要
本發(fā)明揭示一種用于在一無(wú)線(xiàn)設(shè)備上的一軟件應(yīng)用程序的執(zhí)行期間對(duì)所述軟件應(yīng)用程序進(jìn)行可選升級(jí)的系統(tǒng)和方法。所述系統(tǒng)包括接收一利用一駐存的可執(zhí)行應(yīng)用程序的一不同版本來(lái)代替所述應(yīng)用程序的請(qǐng)求。所述系統(tǒng)進(jìn)一步包括檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的實(shí)際執(zhí)行。所述系統(tǒng)還包括經(jīng)由一網(wǎng)絡(luò)接收所述應(yīng)用程序的所述不同版本。并且,所述系統(tǒng)包括響應(yīng)檢測(cè)所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行而將所述應(yīng)用程序的所述不同版本存儲(chǔ)于一臨時(shí)位置中。另外,所述系統(tǒng)包括終止所述駐存的可執(zhí)行應(yīng)用程序的所述實(shí)際執(zhí)行。所述系統(tǒng)還包括利用存儲(chǔ)于所述臨時(shí)位置中的所述駐存的可執(zhí)行應(yīng)用程序的所述不同版本來(lái)覆寫(xiě)所述應(yīng)用程序。此外,所述系統(tǒng)包括起始所述應(yīng)用程序的所述不同版本的實(shí)際執(zhí)行。
文檔編號(hào)G06F9/45GK101069155SQ200480038569
公開(kāi)日2007年11月7日 申請(qǐng)日期2004年10月28日 優(yōu)先權(quán)日2003年10月29日
發(fā)明者斯蒂芬·A·斯普利格 申請(qǐng)人:高通股份有限公司