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

訪問(wèn)設(shè)備的附件的制作方法

文檔序號(hào):7609813閱讀:228來(lái)源:國(guó)知局
專利名稱:訪問(wèn)設(shè)備的附件的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及由應(yīng)用程序訪問(wèn)(access)附件功能。所述應(yīng)用程序可以使用用于訪問(wèn)附件特性的程序庫(kù)。本發(fā)明尤其涉及但不限于Java程序庫(kù)。
背景技術(shù)
用于移動(dòng)設(shè)備的附件的數(shù)量正在增加。在本說(shuō)明書中,術(shù)語(yǔ)“附件”是指當(dāng)使附件與移動(dòng)設(shè)備通信連接時(shí)為移動(dòng)設(shè)備帶來(lái)一個(gè)或多個(gè)新特性的附加設(shè)備。許多這樣的附件需要程序庫(kù)或驅(qū)動(dòng)程序,通過(guò)所述程序庫(kù)或驅(qū)動(dòng)程序,運(yùn)行在移動(dòng)設(shè)備中的諸如Java應(yīng)用程序之類的應(yīng)用程序使用這些附件。建立所述程序庫(kù)以使得能夠訪問(wèn)和控制附件。對(duì)于不同附件的這種程序庫(kù)通常由例如移動(dòng)設(shè)備的制造商存儲(chǔ)在移動(dòng)設(shè)備中。可能存在存儲(chǔ)在移動(dòng)設(shè)備中的多個(gè)這樣的程序庫(kù),以保證移動(dòng)設(shè)備能夠使用不同種類的附件。然而,用戶可能僅僅使用有限數(shù)量的附件,如果有的話,并且不同的用戶可能使用不用的附件。因此,永久存儲(chǔ)在移動(dòng)設(shè)備中并且用戶并不需要的程序庫(kù)沒(méi)有必要保留移動(dòng)設(shè)備的常常十分有限的存儲(chǔ)容量。存在解決這個(gè)問(wèn)題的若干技術(shù),但是所有技術(shù)都具有局限性。
目前,利用附件的程序庫(kù)在制造階段就已需要被放入移動(dòng)設(shè)備中。然而,在此階段未必知道可連接到移動(dòng)設(shè)備的所有可能的附件。為了使應(yīng)用程序使用先前未知的附件,用戶將需要能夠自己更新移動(dòng)設(shè)備軟件平臺(tái)以支持新的附件。用戶將需要識(shí)別哪個(gè)程序庫(kù)應(yīng)該與新附件一起使用。程序庫(kù)可以從附件制造商萬(wàn)維網(wǎng)服務(wù)器或者與附件一起來(lái)的存儲(chǔ)介質(zhì)中下載。從萬(wàn)維網(wǎng)下載需要網(wǎng)絡(luò)連接以及能夠下載程序庫(kù)的設(shè)備。
在計(jì)算機(jī)工業(yè)中,使用共享或動(dòng)態(tài)鏈接程序庫(kù)是公知技術(shù)。在這種情況下程序庫(kù)駐留在計(jì)算機(jī)存儲(chǔ)介質(zhì)上,或者在一些情況下從網(wǎng)絡(luò)中下載程序庫(kù)。也有其他公知的解決方案,其中一些例子是-利用所謂的Jini網(wǎng)絡(luò)技術(shù)來(lái)發(fā)現(xiàn)和使用網(wǎng)絡(luò)服務(wù);
-使用通用即插即用(UPnP)把設(shè)備連接到“Windows”環(huán)境中;-將應(yīng)用程序從萬(wàn)維網(wǎng)動(dòng)態(tài)地下載到設(shè)備并執(zhí)行它們;-將記憶棒、存儲(chǔ)卡等附加到設(shè)備上,并將資源(例如圖片、音樂(lè))從記憶棒加載到設(shè)備和/或從設(shè)備加載到記憶棒;以及-將擁有應(yīng)用程序的記憶棒、存儲(chǔ)卡等附加到設(shè)備上,加載這些應(yīng)用程序并在設(shè)備上執(zhí)行它們。
然而,上述解決方案存在局限性和問(wèn)題。Jini技術(shù)是重量級(jí)的(heavyweight)并且以集成網(wǎng)絡(luò)服務(wù)為目標(biāo)。UpnP是Windows專用的,并且不允許在設(shè)備上下載和執(zhí)行代碼。下載應(yīng)用程序或資源(例如圖片、音樂(lè))不同于下載使所有應(yīng)用程序能夠使用附件的程序庫(kù)。
如果將用于所有可能的(將來(lái)的)附件的Java程序庫(kù)放到設(shè)備的Java平臺(tái)上,那么這對(duì)設(shè)備的存儲(chǔ)消耗具有負(fù)面影響。另外,應(yīng)用程序需要有辦法來(lái)識(shí)別哪些附件實(shí)際上在使用以及哪些只有可用的占位程序庫(kù)。
如果附件的開(kāi)發(fā)不與程序庫(kù)的開(kāi)發(fā)相結(jié)合,那么在附件和程序庫(kù)之間可能存在兼容性和互用性問(wèn)題。而且,如果附件是在程序庫(kù)的開(kāi)發(fā)之后開(kāi)發(fā)的,就可能發(fā)生程序庫(kù)不支持附件的所有特性。
Java應(yīng)用程序的生命周期包括用戶定位應(yīng)用程序、將應(yīng)用程序下載到設(shè)備、安裝它、使用它、以及從設(shè)備中清除它。應(yīng)用程序下載典型地例如從服務(wù)器通過(guò)無(wú)線電進(jìn)行,或者通過(guò)電纜或無(wú)線鏈路從PC本地地進(jìn)行。有可能使用附件來(lái)增強(qiáng)所述應(yīng)用程序的生命周期階段和改善用戶體驗(yàn)。
歐洲專利公布EP 1347623公開(kāi)了為附件設(shè)備將應(yīng)用軟件下載到移動(dòng)設(shè)備。應(yīng)用軟件被存儲(chǔ)在附件的存儲(chǔ)器上,應(yīng)用軟件可以是獨(dú)立于Java小程序或Symbian應(yīng)用程序的平臺(tái)。移動(dòng)設(shè)備可以包括Java VM(虛擬機(jī)),例如kJava VM或MIDP Java VM,或者Symbian OS(操作系統(tǒng))。當(dāng)附件被連接到移動(dòng)設(shè)備時(shí),它被檢測(cè)到并開(kāi)始從附件下載應(yīng)用軟件。當(dāng)應(yīng)用軟件被下載到移動(dòng)設(shè)備上時(shí),它能被啟動(dòng)并用于控制附件和與附件交換信息。在移動(dòng)設(shè)備和附件之間的連接和信息傳送是通過(guò)智能附件管理器進(jìn)行的。它具有用于不同種類連接的內(nèi)置應(yīng)用編程接口(API)。通過(guò)使用此下載方法,下載的應(yīng)用程序可以使用從其下載應(yīng)用程序的附件的特性。然而,該方法并不自動(dòng)地使運(yùn)行在移動(dòng)設(shè)備上的其他應(yīng)用程序能夠使用該附件的特性。

發(fā)明內(nèi)容
本發(fā)明涉及帶來(lái)一種用于由運(yùn)行在移動(dòng)設(shè)備上的應(yīng)用程序訪問(wèn)附件功能的應(yīng)用編程接口(API)。應(yīng)用程序能夠使用一個(gè)用于訪問(wèn)附件特性的程序庫(kù)。而且該程序庫(kù)也從附件被安裝到設(shè)備上。程序庫(kù)被建立成能夠訪問(wèn)和控制該附件。由于當(dāng)物理附件可用時(shí)該程序庫(kù)變得可用,所以使用該程序庫(kù)的應(yīng)用程序能夠確保訪問(wèn)該附件。
本發(fā)明中的解決方案是API和API的執(zhí)行(implementation)也在該附件內(nèi)被帶到該設(shè)備上。當(dāng)這種類型的附件被附加到該設(shè)備上時(shí),任何應(yīng)用程序都能夠通過(guò)API來(lái)使用該附件,而不僅僅是為所討論的附件專門設(shè)計(jì)的那些應(yīng)用程序。
本發(fā)明的一個(gè)中心思想在于,由附件帶來(lái)的應(yīng)用程序庫(kù)被建立在附件功能性之上。當(dāng)把具有程序庫(kù)的附件帶到該設(shè)備上時(shí),任何在該設(shè)備上運(yùn)行的授權(quán)的應(yīng)用程序能夠通過(guò)程序庫(kù)提供的API來(lái)訪問(wèn)附件功能。
根據(jù)本發(fā)明的一個(gè)方面,提供一種電子設(shè)備,該電子設(shè)備包括-用于提供與附件連接的接口;所述附件包括-用于使所述電子設(shè)備能夠使用附件的程序庫(kù),其中該電子設(shè)備進(jìn)一步包括用于以使所述程序庫(kù)可用于電子設(shè)備這樣的方式提供所述程序庫(kù)的裝置。
根據(jù)本發(fā)明的第二方面,提供一種附件,該附件包括-用于使電子設(shè)備能夠使用附件的程序庫(kù);以及-用于提供與電子設(shè)備連接的接口。
根據(jù)本發(fā)明的第三方面,提供一種系統(tǒng),該系統(tǒng)包括-電子設(shè)備;-附件;-在所述附件中用于使電子設(shè)備能夠使用附件的程序庫(kù);-用于在所述電子設(shè)備和所述附件之間提供連接的接口;以及-用于以使所述程序庫(kù)可用于電子設(shè)備這樣的方式提供所述程序庫(kù)的裝置。
根據(jù)本發(fā)明的第四方面,提供一種用于由電子設(shè)備訪問(wèn)附件的方法,該方法包括-將用于使電子設(shè)備能夠使用該附件的程序庫(kù)包括在所述附件中;-在所述電子設(shè)備和所述附件之間提供連接;以及-以使所述程序庫(kù)可用于電子設(shè)備這樣的方式提供所述程序庫(kù)。
根據(jù)本發(fā)明的第五方面,提供一種計(jì)算機(jī)程序產(chǎn)品,用于存儲(chǔ)包括用于由電子設(shè)備訪問(wèn)附件的計(jì)算機(jī)可執(zhí)行步驟的計(jì)算機(jī)程序,該附件包括用于使電子設(shè)備能夠使用附件的程序庫(kù),其中該計(jì)算機(jī)程序包括用于下述的計(jì)算機(jī)可執(zhí)行步驟-在所述電子設(shè)備和所述附件之間提供連接;以及-以使所述程序庫(kù)可用于電子設(shè)備這樣的方式提供所述程序庫(kù)。
根據(jù)本發(fā)明的第六方面,提供一種用于提供對(duì)電子設(shè)備的附件的訪問(wèn)的方法,該方法包括-將用于使電子設(shè)備能夠使用附件的程序庫(kù)存儲(chǔ)在附件中;-在所述電子設(shè)備和所述附件之間提供連接;以及-以使所述程序庫(kù)可用于電子設(shè)備這樣的方式提供所述程序庫(kù)。
本發(fā)明提供了用于使附件功能可用于在設(shè)備上運(yùn)行的Java應(yīng)用程序的更多方便的機(jī)制。在制造階段不必在設(shè)備中建立對(duì)附件的支持。
在附件需要對(duì)設(shè)備進(jìn)行軟件更新以便操作的情況下,本發(fā)明使該更新過(guò)程容易。該過(guò)程接近于自動(dòng),并且用戶不必為下載以及程序庫(kù)和附件的兼容性問(wèn)題所煩擾。
如果所提供的程序庫(kù)執(zhí)行(標(biāo)準(zhǔn)化的)API,那么所有建立在該API之上的應(yīng)用程序在設(shè)備上變得可執(zhí)行。
本發(fā)明比Jini更輕便,并且在具有小容量存儲(chǔ)器的嵌入式設(shè)備中也可執(zhí)行,以及不限于Java技術(shù)。
本發(fā)明的主要益處之一是移動(dòng)設(shè)備的所有應(yīng)用程序都具有使用附件的服務(wù)的可能性。
附件可以是例如GPS(全球定位系統(tǒng))附件。當(dāng)它被附加到設(shè)備上時(shí),設(shè)備能夠自動(dòng)加載API和執(zhí)行。當(dāng)API和執(zhí)行被加載到設(shè)備上時(shí),任何想使用GPS信息的應(yīng)用程序都能通過(guò)API向GPS附件要求它。當(dāng)然,如果該API是像在上面例子中用于J2ME的Location(定位)API之類的標(biāo)準(zhǔn)化API之一的話,通常可以得到最大的益處。附件的另一非限定性例子是溫度、傾斜或加速度傳感器等。


在下文中將參考附圖更詳細(xì)地描述本發(fā)明,其中圖1說(shuō)明了設(shè)備中附件程序庫(kù)的使用,圖2示出根據(jù)本發(fā)明的設(shè)備的示例實(shí)施例,以及圖3作為簡(jiǎn)化框圖示出根據(jù)本發(fā)明的系統(tǒng)的示例實(shí)施例,以及圖4a-4c作為流程圖示出根據(jù)本發(fā)明的方法的示例實(shí)施例的一些步驟。
具體實(shí)施例方式
在下文中,將使用Java程序庫(kù)作為程序庫(kù)的例子來(lái)描述本發(fā)明,但是本發(fā)明并不僅僅限于Java環(huán)境和Java程序庫(kù)。其他可能的環(huán)境例如是Qualcomm的BREWTM和Microsoft的NETTMFramework。還假設(shè)設(shè)備1具有帶有附加容量的Java平臺(tái)(典型為J2METMMIDP;JavaTM2平臺(tái),MicroEdition,MobileInformation Device Profile)以給設(shè)備1動(dòng)態(tài)安裝程序庫(kù)。設(shè)備1可以是能夠運(yùn)行應(yīng)用程序并且由用于將附件2與設(shè)備1連接的連接裝置提供的任何設(shè)備。圖3示出為這樣一個(gè)設(shè)備1的例子的框圖。設(shè)備1包括控制單元11,尤其用于控制設(shè)備1操作以及用于在設(shè)備1上運(yùn)行應(yīng)用程序??刂茊卧?.1可以被實(shí)施為獨(dú)立電路,例如一個(gè)或多個(gè)處理器,或者被實(shí)施為集成電路,例如ASIC(專用集成電路)。設(shè)備還包括用于存儲(chǔ)應(yīng)用程序、API、程序庫(kù)、控制軟件、數(shù)據(jù)等的存儲(chǔ)器1.2。存儲(chǔ)器1.2可以由只讀存儲(chǔ)器和隨機(jī)存取存儲(chǔ)器組成。在設(shè)備1中還提供接口1.3以用于提供與附件2的連接。接口1.3可以包括有線連接裝置和/或無(wú)線連接裝置。除了接口1.3以外,設(shè)備1還可以包括通信裝置1.4,例如移動(dòng)通信裝置,用于與通信網(wǎng)和/或與另一設(shè)備(未示出)一起執(zhí)行通信任務(wù)。設(shè)備1進(jìn)一步包括用戶接口,所述用戶接口包括例如顯示器1.5、鍵盤1.6、話筒1.7和/或揚(yáng)聲器/頭戴受話器1.8。
附件2包括用于控制附件2的操作的控制單元2.1。附件2還包括存儲(chǔ)器2.2以存儲(chǔ)(圖4a和4b中的塊401)尤其為附件2而開(kāi)發(fā)的一個(gè)程序庫(kù)3(圖1)或多個(gè)程序庫(kù)。還存在用于將附件2與設(shè)備1相連(圖4a中的塊402)的接口2.3。
如果在設(shè)備1和附件2之間的連接是有線連接,那么設(shè)備1的接口1.3和附件2的接口2.3可以包括連接器。如果該連接是無(wú)線的,那么所述接口1.3、2.3都包括能夠利用例如無(wú)線通信或光通信進(jìn)行通信的發(fā)送器和接收器。
在下文中將進(jìn)一步參考圖4a到4c的流程圖更詳細(xì)地描述根據(jù)本發(fā)明的示例實(shí)施例的方法。首先,假設(shè)了設(shè)備1和附件2之間的有線連接。還假設(shè)當(dāng)附件2被附加404到設(shè)備1時(shí)設(shè)備1接通,并且一個(gè)或多個(gè)程序庫(kù)將從附件2被下載407到設(shè)備1。在設(shè)備1中,接口1.3檢測(cè)405附件2的附加。該檢測(cè)可以基于接口1.3的檢測(cè)線上的讀出電壓電平或者基于通過(guò)接口1.3的數(shù)據(jù)總線從附件2接收消息。在檢測(cè)到附件2的附加之后,設(shè)備1發(fā)現(xiàn)附件2并識(shí)別它。該識(shí)別可以基于例如從附件2接收包括識(shí)別消息的信息,或者設(shè)備1可以讀取來(lái)自附件2的存儲(chǔ)器2.2的識(shí)別數(shù)據(jù)。設(shè)備1還發(fā)現(xiàn)406是否有一個(gè)或多個(gè)可下載的程序庫(kù)3被存儲(chǔ)在附件2中。如果發(fā)現(xiàn)了至少一個(gè)可下載的程序庫(kù)3被存儲(chǔ)在附件2中,那么程序庫(kù)3可以被自動(dòng)安裝到設(shè)備1,或者設(shè)備1可向設(shè)備1的用戶請(qǐng)求確認(rèn)下載。
例如可以如下執(zhí)行下載407。設(shè)備1開(kāi)始與附件2通信以用于從附件2下載該程序庫(kù)3或多個(gè)程序庫(kù)到設(shè)備1。向設(shè)備1附加附件2以及它們之間的通信可以基于適用于傳送程序庫(kù)數(shù)據(jù)的任何合適的標(biāo)準(zhǔn)或非標(biāo)準(zhǔn)的通信方法。下載的程序庫(kù)3在設(shè)備1中被接收,并且被存儲(chǔ)408在設(shè)備的存儲(chǔ)器1.2中。標(biāo)準(zhǔn)連接的例子是藍(lán)牙、USB和I2C。
另一方面,如果當(dāng)設(shè)備1斷電時(shí)附件2被連接到設(shè)備1,仍然執(zhí)行相同類型的步驟。在某一階段,設(shè)備1檢測(cè)到405它與附件2連接。該設(shè)備發(fā)現(xiàn)附件2并識(shí)別它,以及下載407程序庫(kù)3或使它直接可用于來(lái)自附件2的應(yīng)用程序。
在圖1中示出了設(shè)備1和附件2之間的關(guān)系。在設(shè)備1中,硬件(HW)和軟件(SW)可以被看作向設(shè)備1的操作提供了平臺(tái)4。設(shè)備1的平臺(tái)4包括硬件部分4.1、包括控制軟件和設(shè)備1的應(yīng)用程序的軟件部分4.2、標(biāo)準(zhǔn)Java程序庫(kù)4.3以及通用附件支持程序庫(kù)4.4。設(shè)備1的平臺(tái)4還包括用于存儲(chǔ)Java應(yīng)用程序的Java應(yīng)用程序部分4.6以及用于存儲(chǔ)從附件2下載的程序庫(kù)3的附件程序庫(kù)4.5。還提供了標(biāo)準(zhǔn)化的Java API 4.7、由下載的附件程序庫(kù)執(zhí)行的Java附件程序庫(kù)API 4.12以及內(nèi)部的Java API 4.8。標(biāo)準(zhǔn)化的Java API 4.7用作標(biāo)準(zhǔn)Java程序庫(kù)和Java應(yīng)用程序之間的接口。Java附件程序庫(kù)API4.12為應(yīng)用程序提供附件的功能。內(nèi)部的Java API 4.8用作附件程序庫(kù)4.5和通用附件支持程序庫(kù)4.4之間的接口以訪問(wèn)附件的功能。設(shè)備1的平臺(tái)4還包括應(yīng)用管理軟件(AMS)4.9以作為Java系統(tǒng)的一部分,其控制Java應(yīng)用程序的執(zhí)行、安裝和刪除。設(shè)備1的平臺(tái)4進(jìn)一步包括附件服務(wù)器4.10,用于控制至少檢測(cè)附件2的附加和拆離。附件服務(wù)器4.10訪問(wèn)硬件4.1的期望部分以執(zhí)行檢測(cè),例如通過(guò)檢查接口1.3的狀態(tài)。
附件平臺(tái)5包括硬件部分5.1和程序庫(kù)3。
在程序庫(kù)3的安裝階段6,附件2例如可以提供以下信息給設(shè)備1程序庫(kù)位置、名稱、大小、版本和廠商。設(shè)備Java平臺(tái)4使用此信息來(lái)安裝程序庫(kù)3。
當(dāng)根據(jù)本發(fā)明使用附件2的程序庫(kù)時(shí),還應(yīng)當(dāng)考慮一些其他問(wèn)題。在附件2中可能有多于一個(gè)的程序庫(kù)3可用,其中設(shè)備1的平臺(tái)4應(yīng)該能夠管理所有程序庫(kù)。附件2還可以包括能夠被加載到設(shè)備的應(yīng)用程序。應(yīng)用程序可能需要在它們開(kāi)始執(zhí)行前安裝伴隨的程序庫(kù)。在這種情況下,設(shè)備1的平臺(tái)4應(yīng)該在開(kāi)始執(zhí)行應(yīng)用程序前首先使409必需的程序庫(kù)3可用于應(yīng)用程序。
可能存在一些限制,以至于不允許一些(未授權(quán))應(yīng)用程序使用附件程序庫(kù)3。這可由例如Java平臺(tái)安全設(shè)置來(lái)管理。如果要使用該附件,例如對(duì)于若干具有不同Java平臺(tái)的不同電話型號(hào),那么一些Java平臺(tái)可能已經(jīng)包括附件2攜帶的程序庫(kù)3。Java平臺(tái)應(yīng)該也能夠處理這樣的情況。在本發(fā)明的一個(gè)實(shí)施例中,動(dòng)態(tài)安裝的Java程序庫(kù)3正在使用現(xiàn)有的內(nèi)部Java API 4.8。現(xiàn)有的JavaAPI 4.7、4.8也包括已經(jīng)安裝的動(dòng)態(tài)程序庫(kù)。
假設(shè)存在運(yùn)行在設(shè)備1上的應(yīng)用程序,其希望使用所附加的附件2的程序庫(kù)3。平臺(tái)4檢查程序庫(kù)4.5的狀態(tài),并且如果附件2是可用的則允許使用。附件2的程序庫(kù)4.5可以通過(guò)通用附件支持程序庫(kù)4.4與附件2進(jìn)行通信7。
當(dāng)附件2被從設(shè)備1拆離410(圖4c)時(shí),設(shè)備的接口1.3檢測(cè)到這種情況。接著,設(shè)備1可以使412所有從附件2下載的程序庫(kù)4.5對(duì)設(shè)備1的應(yīng)用程序不可用。這可以通過(guò)從存儲(chǔ)器1.2中刪除從附件2所下載的程序庫(kù)4.5和/或通過(guò)對(duì)指示程序庫(kù)4.5的不可用性的狀態(tài)設(shè)置標(biāo)志或某一其他指示符來(lái)執(zhí)行。
在本發(fā)明的另一個(gè)實(shí)施例中,附件的程序庫(kù)3沒(méi)有被下載到設(shè)備1上,但是通過(guò)使用其他方法使它們對(duì)設(shè)備1是可用的。這可以被執(zhí)行,例如以使附件2被加電并通過(guò)有線或無(wú)線的方式與設(shè)備1連接。當(dāng)設(shè)備1檢測(cè)到存在附件2時(shí),它執(zhí)行類似的識(shí)別步驟,并且發(fā)現(xiàn)附件2是否包括設(shè)備1的應(yīng)用程序能夠使用的程序庫(kù)3。設(shè)備1把關(guān)于這種程序庫(kù)3或多個(gè)程序庫(kù)的信息添加到平臺(tái)4。當(dāng)運(yùn)行在設(shè)備1上的應(yīng)用程序訪問(wèn)程序庫(kù)3時(shí),設(shè)備1和附件2進(jìn)行通信以使附件2的程序庫(kù)3可由該應(yīng)用程序訪問(wèn),就像程序庫(kù)3安裝在設(shè)備1的平臺(tái)4上一樣。這種方法可能需要在安裝階段修改Java平臺(tái),以在運(yùn)行時(shí)間期間從附件2中找到程序庫(kù)3。
在以下的實(shí)施例中將更詳細(xì)地描述根據(jù)本發(fā)明的方法的細(xì)節(jié)。
實(shí)施方式替代存在幾種實(shí)施本發(fā)明的可能性。一種典型的情況將是作為帶有附加到電話上的附件2的設(shè)備1的移動(dòng)電話。設(shè)備1具有一個(gè)帶有附加容量的Java平臺(tái)(典型為J2ME MIDP),以給平臺(tái)4動(dòng)態(tài)地安裝程序庫(kù)3。
在一個(gè)示例實(shí)施方式中,允許動(dòng)態(tài)地附加和拆離附件2而不需要重啟設(shè)備1、Java平臺(tái)4或者甚至應(yīng)用程序。在這種實(shí)施方式中,由附件2提供的該程序庫(kù)/多個(gè)程序庫(kù)3分別在附加附件2時(shí)被透明地安裝到Java平臺(tái)4上,以及在拆離附件2時(shí)被從Java平臺(tái)卸載。在一個(gè)典型的實(shí)施方式中,當(dāng)應(yīng)用程序啟動(dòng)時(shí),檢查可能的動(dòng)態(tài)程序庫(kù)3的可用性。如果所需的程序庫(kù)3是可用的,那么應(yīng)用程序就可以開(kāi)始執(zhí)行。向應(yīng)用程序提供有關(guān)程序庫(kù)3的可用性的信息的一種可能性將是Java平臺(tái),該Java平臺(tái)被修改以使它包括為應(yīng)用程序詢問(wèn)當(dāng)前可用的程序庫(kù)的裝置。
示例實(shí)施方式在下文中將參考圖2對(duì)于GPS附件描述可能的動(dòng)態(tài)程序庫(kù)實(shí)施方案的例子。
附件2是設(shè)備1的蓋8,其包括GPS接收器8.1和羅盤8.2。設(shè)備1的顯示器1.5和鍵盤1.6用作用戶的接口,以及存儲(chǔ)器1.2用作存儲(chǔ)位置數(shù)據(jù)。在這個(gè)例子中,蓋8沒(méi)有任何按鈕或顯示器,但是只在與顯示器1.6和鍵盤1.5的鍵的相應(yīng)位置上具有孔8.3,以使蓋8安裝在設(shè)備1的上面。
首次的發(fā)現(xiàn)當(dāng)蓋8被附加到設(shè)備1上時(shí),產(chǎn)生了中斷,并且向附件服務(wù)器4.10發(fā)送事件。附件服務(wù)器4.10初始化用于與蓋8通信的接口管理模塊4.11。接口管理模塊4.11被配置為向附件接口1.3提供低層接口,以及它被用于例如解釋通過(guò)附件接口1.3從附件2接收的消息,以形成要由附件接口1.3傳送給附件2的消息,以及基于附件接口1.3的物理信息來(lái)檢測(cè)附件2的附加和拆離。在執(zhí)行初始化后,通過(guò)經(jīng)由接口管理模塊4.11的通信,附件服務(wù)器4.10發(fā)現(xiàn)蓋8的類型。設(shè)備1還發(fā)現(xiàn)它是否包括任何可下載的程序庫(kù)3。當(dāng)設(shè)備1確定了附件是蓋8并且存在至少一個(gè)要下載的程序庫(kù)3時(shí),設(shè)備執(zhí)行程序庫(kù)3的下載(或者如上所公開(kāi)的,使蓋的程序庫(kù)3通過(guò)某一其他方法可由設(shè)備的應(yīng)用程序訪問(wèn))。在這個(gè)例子中,設(shè)備1包括定位應(yīng)用程序4.13??梢詮目梢苿?dòng)存儲(chǔ)介質(zhì)、從通信網(wǎng)絡(luò)中由設(shè)備的制造商等安裝定位應(yīng)用程序4.13。應(yīng)該認(rèn)識(shí)到,蓋的GPS接收器8.1可以通過(guò)從電話的應(yīng)用程序菜單中手動(dòng)地或者在設(shè)備1檢測(cè)到蓋8的附加并執(zhí)行蓋8的程序庫(kù)3的安裝時(shí)自動(dòng)地啟動(dòng)設(shè)備1的定位應(yīng)用程序或任何其他定位應(yīng)用程序來(lái)使用。
定位應(yīng)用程序4.13可以例如建立在J2ME的Location API之上。蓋8可以把Location API支持添加到以前沒(méi)有任何定位功能或用于訪問(wèn)它的API的設(shè)備1上。
如果蓋8具有用于通知蓋8的操作需要Java API應(yīng)用程序的屬性(例如JavaRequiredAPI),那么管理軟件4.9就對(duì)照設(shè)備1中現(xiàn)有可用的API來(lái)檢查屬性值。假設(shè)應(yīng)用管理軟件4.9以與它記錄可用MIDlet相同的方式來(lái)記錄可用的API。如果這樣的API已經(jīng)存在,那么應(yīng)用管理軟件4.9將進(jìn)入應(yīng)用程序準(zhǔn)備階段。如果API不存在,那么應(yīng)用管理軟件4.9需要在它能夠繼續(xù)到應(yīng)用程序準(zhǔn)備之前進(jìn)行API準(zhǔn)備??梢詮腏avaAPIImplementation屬性讀取所需的API程序庫(kù)3的位置,該屬性指向蓋8的文件系統(tǒng)中適當(dāng)?shù)膉ar文件(Java archive)。
如果蓋8具有屬性JavaControlApplication,那么應(yīng)用程序準(zhǔn)備例如以下列方式進(jìn)行應(yīng)用管理軟件4.9通過(guò)發(fā)送消息安裝(url)到應(yīng)用管理軟件服務(wù)器來(lái)啟動(dòng)應(yīng)用程序準(zhǔn)備。應(yīng)用程序的url指向蓋8的文件系統(tǒng)中的文件。
作為概要,該發(fā)現(xiàn)從蓋中找到例如以下屬性


API的準(zhǔn)備和安裝如果設(shè)備1不具有現(xiàn)有的Java Location API,那么應(yīng)用管理軟件4.9需要配置VM的類裝入器以開(kāi)始使用來(lái)自附件存儲(chǔ)器2.2的定位API程序庫(kù)。JavaAPIImplementation屬性值被附加在VM“類路徑”(根據(jù)執(zhí)行,這可以是其他情形)上。通知應(yīng)用管理軟件4.9有關(guān)新API和“LocationAPI”入口被添加到應(yīng)用管理軟件4.9的可用API的列表中。
如果設(shè)備1已經(jīng)具有按照默認(rèn)存在的Java Location API,那么由于安全的限制,不可能用蓋8的Location API執(zhí)行代替設(shè)備Location API執(zhí)行。另外,如果本執(zhí)行正在使用對(duì)蓋8的Location API執(zhí)行不可用的設(shè)備特性,那么代替設(shè)備1Location API執(zhí)行可能是不可行的。
應(yīng)用程序的準(zhǔn)備和安裝應(yīng)用管理軟件4.9讀取具有例如以下屬性的清單

在讀取清單后,應(yīng)用管理軟件4.9檢查是否滿足最小的簡(jiǎn)檔、配置和擴(kuò)展要求。如果滿足,應(yīng)用管理軟件4.9就向用戶顯示屬性MIDlet-描述的內(nèi)容并要求允許繼續(xù)。如果用戶接受繼續(xù),那么安裝如下繼續(xù)LocationMidlet被插入應(yīng)用程序或附件菜單中。如果JAR通過(guò)終端1文件系統(tǒng)是可訪問(wèn)的,那么它不需要被復(fù)制到設(shè)備1的存儲(chǔ)器1.2。代之以,蓋8中的JAR可以在執(zhí)行期間被用于類裝入。
后續(xù)的發(fā)現(xiàn)對(duì)于蓋的發(fā)現(xiàn)假設(shè)發(fā)現(xiàn)過(guò)程是相同的,因?yàn)樵摪l(fā)現(xiàn)過(guò)程僅在蓋8被安裝時(shí)運(yùn)行,并且改變蓋8將使API程序庫(kù)3不可訪問(wèn)并刪除對(duì)它們的引用。
應(yīng)用程序的執(zhí)行當(dāng)用戶從應(yīng)用程序菜單選擇MIDlet時(shí),開(kāi)始執(zhí)行應(yīng)用程序。定位應(yīng)用程序MIDlet顯示地圖以及在中間顯示用戶的當(dāng)前的位置。定位應(yīng)用程序使用蓋8的GPS接收器8.1的位置信息和蓋8的羅盤8.2的羅盤方位信息。當(dāng)用戶位置改變時(shí),相應(yīng)地更新地圖,從而使用戶位置始終保持在屏幕的中間。如果用戶轉(zhuǎn)向,那么地圖旋轉(zhuǎn)以使地圖的北基本上在指向羅盤的北向。這使得對(duì)于一般人而言導(dǎo)航更容易。然而,有可能應(yīng)用程序4.13顯示了帶有指向用戶方向的箭頭的靜態(tài)地圖。這里應(yīng)該注意到,羅盤方位信息不同于只能顯示運(yùn)動(dòng)方向的GPS方向數(shù)據(jù)。
定位應(yīng)用程序4.13可以從基于城市、街道地址、坐標(biāo)和/或其他標(biāo)準(zhǔn)的專用服務(wù)器(未示出)中下載地圖。航路點(diǎn)可由用戶設(shè)置或者從基于一些搜索標(biāo)準(zhǔn)(例如鄰近的飯店)的服務(wù)器接收,并且定位應(yīng)用程序4.13能夠顯示某一航路點(diǎn)的方向和距離。航路點(diǎn)和地圖能夠被存儲(chǔ)到記錄管理系統(tǒng)(RMS)中。一個(gè)附加特性可以是用戶能夠向基于一些航路點(diǎn)的服務(wù)器要求路線圖?;谖谋镜穆酚芍噶顣?huì)以路線圖被返回,并且它們可以與在車輛導(dǎo)航系統(tǒng)中相同的方式被使用。
由于定位蓋8包括Java Location API執(zhí)行,所以有可能下載并執(zhí)行基于該API的任何其他第三方的MIDlet。
通信/控制協(xié)議定位應(yīng)用程序4.13使用Java Location API以用于從蓋8獲得信息。Java Location API內(nèi)部執(zhí)行使用用于與蓋8通信的合適的通信協(xié)議(例如某一基于I2C的協(xié)議)。這需要設(shè)備1的Java環(huán)境能夠?yàn)橄螺d的Java Location API執(zhí)行提供這樣的Java協(xié)議API。
附件的除去附件服務(wù)器4.10還通知了除去,例如因?yàn)橛稍O(shè)備1的硬件產(chǎn)生的中斷。在除去時(shí),應(yīng)用管理軟件4.9被通知Java Location API執(zhí)行不再可用,并且所安裝的定位MIDlet不能執(zhí)行(發(fā)出ClassNotFoundException或VM內(nèi)部錯(cuò)誤)。應(yīng)用管理軟件4.9從其可用API的列表中刪除“LocationAPI”入口。
上述蓋8只是附件2的一個(gè)非限定性例子。作為附件2的另一個(gè)非限定性例子是包括傳感器、接收器等的設(shè)備1的電池。
更新附件在一些情況中,可能期望將附件2的程序庫(kù)和/或應(yīng)用編程接口更新為例如較新版本。例如,可以執(zhí)行更新程序,以使設(shè)備1從網(wǎng)絡(luò)中下載更新的版本并將其存儲(chǔ)到附件2中。附件2可以包括用于檢查對(duì)于新版本在附件的存儲(chǔ)器2.2中是否有足夠的存儲(chǔ)容量的裝置,因?yàn)樗螺d版本的程序庫(kù)和/或應(yīng)用編程接口的大小可能有所增加。附件2還可包括用于使設(shè)備1能夠把新版本的程序庫(kù)和/或應(yīng)用編程接口寫入附件的存儲(chǔ)器2.2的裝置。
考慮到上述教導(dǎo),對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō)下述應(yīng)該是明顯的,即本發(fā)明并不限于上述實(shí)施例,而是可以在所附權(quán)利要求書的范圍內(nèi)變化。
權(quán)利要求
1.一種電子設(shè)備,包括接口,用于提供與附件的連接;所述附件包括程序庫(kù),用于使所述電子設(shè)備能夠使用該附件;其中該電子設(shè)備進(jìn)一步包括用于提供可用于該電子設(shè)備的所述程序庫(kù)的裝置。
2.根據(jù)權(quán)利要求1所述的電子設(shè)備,所述附件進(jìn)一步包括應(yīng)用編程接口,其中該電子設(shè)備進(jìn)一步包括用于提供可用于該電子設(shè)備的所述應(yīng)用編程接口的裝置。
3.根據(jù)權(quán)利要求1所述的電子設(shè)備,包括用于直接從所述附件提供可用于該電子設(shè)備的所述程序庫(kù)的接口裝置。
4.根據(jù)權(quán)利要求1所述的電子設(shè)備,包括用于將所述程序庫(kù)下載到該電子設(shè)備的接口管理模塊。
5.根據(jù)權(quán)利要求1所述的電子設(shè)備,所述程序庫(kù)和所述應(yīng)用編程接口在所述附件與加載到該電子設(shè)備的應(yīng)用程序之間提供連接。
6.根據(jù)權(quán)利要求1所述的電子設(shè)備,所述接口包括用于檢測(cè)附件到電子設(shè)備的附加的檢測(cè)裝置。
7.根據(jù)權(quán)利要求1所述的電子設(shè)備,所述接口包括用于檢測(cè)附件從電子設(shè)備的拆離的檢測(cè)裝置。
8.根據(jù)權(quán)利要求7所述的電子設(shè)備,包括接口管理模塊,用于在檢測(cè)到附件拆離時(shí)使在加載到該電子設(shè)備的應(yīng)用程序與所述程序庫(kù)之間不能連接。
9.根據(jù)權(quán)利要求1所述的電子設(shè)備,該附件進(jìn)一步包括至少一個(gè)應(yīng)用程序,其中該電子設(shè)備包括用于將所述至少一個(gè)應(yīng)用程序從附件下載到設(shè)備的裝置。
10.根據(jù)權(quán)利要求2所述的電子設(shè)備,包括用于在開(kāi)始執(zhí)行所述應(yīng)用程序之前使所述應(yīng)用編程接口可用于加載到該電子設(shè)備的至少一個(gè)應(yīng)用程序的裝置。
11.一種附件,包括程序庫(kù),用于使電子設(shè)備能夠使用該附件;以及接口,用于提供與所述電子設(shè)備的連接。
12.根據(jù)權(quán)利要求11所述的附件,進(jìn)一步包括可用于在所述電子設(shè)備上的應(yīng)用程序的功能。
13.根據(jù)權(quán)利要求11所述的附件,進(jìn)一步包括應(yīng)用編程接口。
14.根據(jù)權(quán)利要求11所述的附件,包括用于直接從附件提供可用于所述電子設(shè)備的所述程序庫(kù)的接口裝置。
15.根據(jù)權(quán)利要求11所述的附件,其中所述程序庫(kù)是Java、C、C++、C#或Visual Basic代碼。
16.根據(jù)權(quán)利要求11所述的附件,所述接口包括用于指示附件到電子設(shè)備的附加的裝置。
17.根據(jù)權(quán)利要求11所述的附件,所述接口包括用于指示附件從電子設(shè)備的拆離的裝置。
18.根據(jù)權(quán)利要求11所述的附件,進(jìn)一步包括至少一個(gè)要被加載到電子設(shè)備的應(yīng)用程序。
19.一種系統(tǒng),包括電子設(shè)備;附件;在所述附件中用于使所述電子設(shè)備能夠使用該附件的程序庫(kù);接口,用于在所述電子設(shè)備和所述附件之間提供連接;以及裝置,用于提供可用于該電子設(shè)備的所述程序庫(kù)。
20.根據(jù)權(quán)利要求19所述的系統(tǒng),所述附件進(jìn)一步包括應(yīng)用編程接口,其中該系統(tǒng)進(jìn)一步包括用于提供可用于電子設(shè)備的所述應(yīng)用編程接口的裝置。
21.根據(jù)權(quán)利要求19所述的系統(tǒng),包括用于直接從所述附件提供可用于該電子設(shè)備的所述程序庫(kù)的接口裝置。
22.一種用于由電子設(shè)備訪問(wèn)附件的方法,包括將用于使所述電子設(shè)備能夠使用該附件的程序庫(kù)包括在所述附件中;在所述電子設(shè)備和所述附件之間提供連接;以及提供可用于該電子設(shè)備的所述程序庫(kù)。
23.根據(jù)權(quán)利要求22所述的方法,該附件進(jìn)一步包括應(yīng)用編程接口,其中該方法進(jìn)一步包括提供可用于該電子設(shè)備的所述應(yīng)用編程接口。
24.根據(jù)權(quán)利要求22所述的方法,包括直接從附件提供可用于所述電子設(shè)備的所述程序庫(kù)。
25.根據(jù)權(quán)利要求22所述的方法,該附件包括一個(gè)功能,其中該方法進(jìn)一步包括通過(guò)所述程序庫(kù)提供供所述電子設(shè)備使用的所述功能。
26.根據(jù)權(quán)利要求22所述的方法,包括檢測(cè)附件到移動(dòng)通信設(shè)備的附加。
27.根據(jù)權(quán)利要求26所述的方法,包括在檢測(cè)到附件的附加時(shí)將所述程序庫(kù)從附件下載到移動(dòng)通信設(shè)備。
28.根據(jù)權(quán)利要求22所述的方法,包括在加載到該電子設(shè)備的應(yīng)用程序和所述附件之間提供連接。
29.根據(jù)權(quán)利要求22所述的方法,包括檢測(cè)附件從該設(shè)備的拆離。
30.根據(jù)權(quán)利要求29所述的方法,包括在檢測(cè)到附件的拆離時(shí)使在加載到電子設(shè)備的應(yīng)用程序和所述附件之間不能連接。
31.根據(jù)權(quán)利要求22所述的方法,該附件包括至少一個(gè)應(yīng)用程序,其中該方法包括將所述至少一個(gè)應(yīng)用程序從附件下載到設(shè)備。
32.根據(jù)權(quán)利要求23所述的方法,包括在開(kāi)始執(zhí)行所述應(yīng)用程序之前,使所述應(yīng)用編程接口可用于加載到電子設(shè)備的至少一個(gè)應(yīng)用程序。
33.一種用于存儲(chǔ)計(jì)算機(jī)程序的計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序包括用于由電子設(shè)備訪問(wèn)附件的機(jī)器可執(zhí)行步驟,該附件包括用于使所述電子設(shè)備能夠使用該附件的程序庫(kù),其中該計(jì)算機(jī)程序包括用于下述的機(jī)器可執(zhí)行步驟在所述電子設(shè)備和所述附件之間提供連接;以及提供可用于電子設(shè)備的所述程序庫(kù)。
34.一種用于提供訪問(wèn)電子設(shè)備的附件的方法,該方法包括將用于使所述電子設(shè)備能夠使用該附件的程序庫(kù)存儲(chǔ)到附件中;在所述電子設(shè)備和所述附件之間提供連接;以及提供可用于電子設(shè)備的所述程序庫(kù)。
35.根據(jù)權(quán)利要求34所述的方法,進(jìn)一步包括將應(yīng)用編程接口存儲(chǔ)到附件中,以及提供可用于電子設(shè)備的所述應(yīng)用編程接口。
全文摘要
本發(fā)明涉及一種包括用于提供與附件連接的接口的電子設(shè)備。該附件包括用于使所述電子設(shè)備能夠使用該附件的程序庫(kù)。該電子設(shè)備進(jìn)一步包括用于提供可用于電子設(shè)備的所述程序庫(kù)的裝置。本發(fā)明還涉及一種移動(dòng)通信設(shè)備和一種系統(tǒng)。本發(fā)明進(jìn)一步涉及一種用于由電子設(shè)備的應(yīng)用程序訪問(wèn)附件功能的方法;一種用于執(zhí)行該方法的計(jì)算機(jī)程序產(chǎn)品;以及一種用于提供對(duì)電子設(shè)備的附件的訪問(wèn)的方法。
文檔編號(hào)H04B1/38GK1910895SQ200480039475
公開(kāi)日2007年2月7日 申請(qǐng)日期2004年12月22日 優(yōu)先權(quán)日2003年12月31日
發(fā)明者J·歐拉, K·勒伊泰奈, K·塞斯泰 申請(qǐng)人:諾基亞有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1