專利名稱:分層用戶界面的制作方法
技術領域:
本發明涉及用戶界面,特別涉及用于與移動通信網絡一起使用的設備的用戶界面。
背景技術:
現在,下載圖像、鈴聲、墻紙等使用戶修改他們的移動電話的外觀有重要的市場。由于商業原因,希望移動網絡操作者和/或內容供應商能在一定程度上控制移動設備顯示屏上顯示的用戶界面。實現用戶界面的傳統方法缺乏靈活性和使這種配置能夠得以實現的可配置性。
發明內容
根據本發明的第一方面,提供了一種生成設備的用戶界面的方法,該方法包括以下步驟(a)生成多個用戶界面元素集合,多個用戶界面元素集合中的每個包括一個或者多個用戶界面元素,其中該用戶界面元素或者每個用戶界面元素與用戶界面的定義的區域相關聯;(b)將多個用戶界面元素集合中的每個排成序列;(c)查詢多個用戶界面元素集合中的每個,以選擇在用戶界面中使用的多個用戶界面元素,依照步驟(b)中執行的順序查詢各集合,其中如果多于一個用戶界面元素與用戶界面的相同區域相關聯,則選擇的用戶界面元素從步驟(b)中確定的序列中第一個出現的元素集合中取出;和(d)依照步驟(c)中選擇的多個用戶界面元素,繪制用戶界面。
根據本發明的第二方面,提供了一種包括顯示裝置和由顯示裝置顯示的用戶界面的設備,在使用中該設備配置成(a)生成多個用戶界面元素集合,多個用戶界面元素集合中的每個包括一個或者多個用戶界面元素,其中該用戶界面元素或者每個用戶界面元素與用戶界面的定義的區域相關聯;(b)將多個用戶界面元素集合中的每個排成序列;(c)查詢多個用戶界面元素集合中的每個,以選擇在用戶界面中使用的多個用戶界面元素,根據步驟(b)中執行的順序查詢各集合,其中如果多于一個用戶界面元素與用戶界面的相同區域相關聯,則選擇的用戶界面元素從步驟(b)中確定的序列中第一個出現的元素集合中取出;和(d)根據步驟(c)中選擇的多個用戶界面元素,繪制用戶界面。
根據本發明的第三方面,提供了一種包括用于執行上述方法中的任意方法的計算機可執行代碼的數據載體。
圖1示出了結合本發明的系統的示意圖;圖2更詳細地示出了服務器的結構和操作;圖3示出了用于移動設備的軟件的示意圖;圖4示出了四個分級平面的示意圖;和圖5示出了根據本發明的一個實施例的包括用戶界面的設備的示意圖。
具體實施例方式
現將僅通過例證的方式,并結合附圖,對本發明進行說明,其中圖1示出了結合本發明的系統的示意圖。該系統包括服務器100、內容工具箱200、移動設備300、操作支持系統(OSS)700、內容供給500和用戶界面(UI)源600。使用中,服務器100將內容數據和UI數據傳遞給移動設備300、301……,其中每個移動設備都包括軟件包400。服務器100通過接口與OSS 700連接,該OSS是傳統上被用于操作移動網絡的那些操作支持系統,例如,記帳、帳戶管理等等。服務器100還與內容工具箱200通過接口連接內容工具箱從UI源600、601…接收數據,并將UI數據打包,使得服務器能將打包的UI數據傳輸到包括在移動設備300中的軟件包400。服務器從多個內容供給接收數據,并且該數據被處理并打包,使得它能夠被傳送到軟件包400,或者使得移動設備300能使用軟件包400存取數據。
該系統可被視為分成三個分離的域操作者域50包括由移動網絡操作者(MNO)操作的系統和儀器;用戶域60包括多個移動設備;以及,第三方域70包括可由若干不同實體控制或者操作的內容供給和UI供給。
圖2更詳細地示出了服務器100的結構和操作。服務器100包括發布組件110和內容服務器組件150。發布組件包括數據庫111、導入隊列112、內容工具箱接口113、用戶界面114和目錄11 5。操作中,發布組件在內容工具箱接口從內容工具箱接收內容。內容以包括一個或者多個trig和一個或者多個triglet的包(parcel)210a、210b…(見下文)的形式出現。trig是用于諸如移動電話的移動設備的用戶界面,并且triglet是能夠用于擴展或者修改trig的數據文件。如果一個包包括多于一個trig,則其中一個trig可以是主trig,從主trig可導出其它trig。
發布組件用戶界面114可用于把包導入數據庫111中,并且該處理使得各個trig和triglet的引用被加載到導入隊列114中,其可包括多個包210a、210b…的引用。可使用用戶界面檢查包的內容,并且包的內容可被傳送到目錄。
MNO可以具有幾個發布域,例如,一個發布域用于若干國家或者地區中的各個目標服務器。各個區域被處理成與其它區域隔離,并且擁有它自己的發布方案,描述在即時的并且分級的環境下目標是如何發布到內容服務器上的。發布組件GUI對各個域提供幾種不同的外觀,使得操作者能完全管理內容的發布。目錄包括存儲在目錄中的trig的引用和用于將內容傳達到各域的更新信道和供給信道。對于各個域,操作者使用發布組件GUI來設置域結構和從目錄分配trig給各個域節點。為了幫助操作者有效地選擇trig,目錄中提供了過濾器,使得僅顯示相關的項目。
內容服務器組件150是網絡服務器的標準實現,并且因而容易理解縮放模型。服務器的能力可使用在基準條件下指示網絡服務器能夠處理的同時發生的會話數目的“SPECweb99”接入數來評價。公布的SPECweb99接入數范圍從404到21,000,典型商用網絡服務器的SPECweb99接入數大約為5,000。一百萬個用戶站的典型配置情況,每小時更新一次內容,僅需要SPECweb99接入數為1,112的額定值的網絡服務器。成功的配置將使得服務使用增加,其可通過啟用額外的服務器來建立既可縮放又對故障有高彈性的基礎設施來提供。
可通過WAP網關建立從移動設備到服務器的連接。這種情況下,網絡服務器會話存在于WAP網關和網絡服務器之間,而不是移動電話和網絡服務器之間。當通過WAP網關建立對文件的請求時,與網絡服務器的會話僅僅持續與將文件從網絡服務器傳送到WAP網關所花費時間相同的時間,即,因為連接帶寬將會非常高并且延遲將會極低,所以會話極短。
可替代地,可建立移動電話和網絡服務器之間的直接連接。這種情況下,網絡服務器將需要在把數據下載到電話所花費的時間內保持會話開放。
有兩種類型的內容是由內容服務器組件傳送的典型地大約為100KB的trig和典型地大約為1KB的定期更新的triglet。trig下載產生的業務和現有內容下載生成的業務非常相似。這樣,充分理解了相關的問題。在MNO的業務模型中定期的triglet更新的下載是新特征,但是因為更新的規模小,其典型地裝在一個數據包中,可能會顯示業務仍然可以由典型的網絡服務器處理。
在triglet下載的情況下,典型地只需要一個數據包來傳送1KB。假設GPRS網絡中往返行程的延遲為2秒,網絡服務器將需要保持典型會話開放大約4秒。對于一百萬個用戶站,他們的手機上帶有trig,其內容每小時更新,這意味著網絡服務器上每秒278次命中和1112個同時發生的會話。如前面所述,這個數目很好地處于典型網絡服務器的能力之內。
圖3示出了用于移動設備300的軟件400的示意圖,軟件400包括標記語言繪制器410、更新管理器420、網絡通信代理425、資源管理器430、虛擬文件系統435、執行器管理器440、多個執行器445a,445,…、本地UI繪制器450、支持管理器460、trig管理器465和標記語言分析器470。
優選的是,軟件使用TrigML運行,TrigML是XML應用程序,并且標記語言繪制器410繪制用于在移動設備300上顯示的TrigXML代碼。標記語言繪制器還使用TrigML分析器來分析TrigML資源、設備屏幕上的顯示內容,并控制送受話器上內容的替換和表示。本地UI繪制器用于顯示不需使用TrigML就能顯示的UI組件,并用于顯示錯誤信息。
以設備特有的方式來提供和安裝軟件400。例如,對于諾基亞60系列設備,使用SIS文件來安裝軟件,而對于MS智能手機設備,使用CAB文件來安裝軟件。類似地,以設備特有的方式處理軟件升級。可以以更受限的格式來提供軟件,作為僅繪制它內置的內容的獨立的應用程序即,軟件設置有內置的trig,但是以后不能添加額外的trig。供給的trig可通過無線電被升級。
Trig管理器465提供對資源管理器430和標記語言繪制器的接口。通常它負責trig管理。這包括持續獲知使用中的trig,改變當前trig,啟動時選擇trig,選擇另一個trig作為被破壞的trig的備用,維持已安裝的trig的集合,識別特定trig被安裝到資源管理器的位置,并讀取trig的更新信道定義并適當地配置更新管理器。
資源管理器提供了永久存儲在設備上的抽象概念,即,作為真實文件來存儲文件,或者作為數據庫中的記錄。資源管理器提供對標記語言繪制器和更新管理器的文件系統接口。它負責處理文件路徑邏輯,區分真實資源文件和執行器屬性,將trig相關的路徑映射到絕對路徑上,通過接口連接trig管理器并提供對更新管理器的修改接口。
更新管理器處理Trig和Triglet的接收和應用。更新管理器提供對繪制器和trig管理器的接口并負責當被繪制器命令時,初始化手動更新;當由trig管理器這樣配置時,控制并實現自動更新信道;指示手動更新的進度,并在網絡連接和/或設備電源意外丟失后恢復更新。更新分組格式可定義為XML模式的二進制序列化。
支持管理器提供了用于其它組件用來報告發生事件或者錯誤的接口。根據錯誤的嚴重程度,支持管理器將記錄事件,并且/或者給出錯誤信息彈出框。
XML是用于定義更新分組格式和TrigML內容的方便的數據格式化語言。出于帶寬和存儲效率的原因,文本XML被序列化為二進制表示。更新分組和TrigML分段都由同一組件,標記語言分析器,進行分析。軟件中XML的任何進一步使用,都必須使用二進制XML編碼并因此再次使用分析器。
執行器管理器440監督軟件中出現的執行器445的集合。它的使用情況是當內容正向執行器發送事件時,由繪制器使用;由想要通知屬性值已改變的執行器使用,和要要發射事件的執行器(見下文)來使用。
軟件可包括運行至少兩個線程的多線程應用程序,比較可能取決于包括多少和什么種類的執行器。軟件主要在一個線程中運行,稱為主線程。主線程用于運行同時與其它組件通信的繪制器。執行器通常具有對繪制器的同步接口。如果執行器由于其功能需要額外的線程,則執行器負責管理線程間通信。優選的是,使用輕量級的消息框架以避免不必要的代碼重復,其中許多執行器需要線程間通信。
除主線程以外,更新管理器運行網絡線程。網絡線程被用于下載更新分組,并從主線程中被分離出來,以允許在分組到達之前繪制器一直不受影響。更新管理器負責處理線程間消息傳遞,使得當應用更新分組中定義的改變的時候,更新管理器同時與繪制器和資源管理器通信。
繪制器接收關于按鍵的信息。如果在編譯的時候沒有為一個鍵配置行為,則它被當作TrigML內容事件發送到當前焦點組件。然后,如TrigML的通常事件處理邏輯定義的那樣處理內容事件。
例如,如果按鍵被按下,‘按鍵’事件被傳送到具有為相應鍵設置的參數的繪制器。當該鍵被釋放時,‘!按鍵’事件被傳送到繪制器。如果在延長的一段時間保持鍵的按下狀態,‘長按鍵’事件被傳送到繪制器。釋放的時候,‘!長按鍵’和‘!按鍵’兩個事件都被傳送到繪制器。
通過加載所定義的資源名稱,啟動/默認,來啟動trig。啟動/默認中定義的TrigML作為內容根節點的新內容被分析。
在安裝后,trig首次由軟件運行的時候,通過加載資源名啟動/首次,來啟動trig。軟件可將trig是否已經被運行記錄到該trig的頂層文件夾中的文件里。根據移動設備使用的平臺,軟件的自動啟動可被設置為編譯時的配置選項。而且,自動啟動以后把軟件放在后臺也可以是構造時的配置選項。
啟動器可以對用戶顯示為應用程序圖標,并且選擇它會啟動帶有該啟動器所指定的trig的軟件(該trig可由啟動器圖標和/或者名稱指示)。當使用啟動器啟動trig時,可以指定‘進入點’參數。該參數是‘啟動’文件夾中找到的文件的資源名。如果該trig以前沒有運行過,則該文件也沒有使用過,這種情況下,使用稱為‘首次’的文件來代替。
軟件使用存儲在設備上的虛擬文件系統中的內容資源文件。文件系統被描述為虛擬的,是因為它可以不被實現為傳統的文件系統,然而,對資源的所有引用都是文件路徑,如同存儲在文件夾和文件的分級系統中一樣。而且,軟件存儲下列信息中的一些或者全部使用統計;活動用戶計數;trig管理器狀態;TrigML分段和更新信道定義(序列化為二進制XML);PNG圖像;編碼為UTF-8 OTA然后在平臺特有的編碼過程中存儲的純文本;其它平臺特有的資源,例如,鈴聲文件、背景圖像等等。
或者在執行器屬性值改變的時候,或者在文件被triglet替換的時候,文件系統中的文件能夠被改變。當/attrs目錄中的文件改變時,立刻通知繪制器并且更新和刷新內容樹的相關分支。當圖像和文本資源改變時,繪制器表現為受影響的資源立刻被重新加載(可以刷新整個內容樹,也可以僅刷新受影響的分支)。當TrigML分段改變的時候,繪制器表現為它沒有得到通知,并繼續顯示其當前的并且可能過時的內容。這是為了避免軟件需要保持<include>元素和<load>當前內容的歷史。
軟件400以設備特有的方式被提供給移動設備。作為安裝的一部分,可提供一個或者多個trig,例如,存儲為未壓縮的更新分組。啟動的時候,分組可以被擴展并安裝到文件系統。
執行器445是發布屬性值并處理和發射事件的組件。執行器同時與繪制器通信。如果執行器需要同步行為,則執行器負責管理和與繪制器主線程外部的線程通信。可通過給執行器發送帶有<throw>元素的事件來通知它。執行器發射的事件可作為內容事件被傳送到內容樹這些可被送到元素Id或者‘top’。對執行器的接口是由執行器接口定義文件來定義的。這是XML文檔,其定義了屬性、類型、文件名、輸入事件和參數,以及輸出事件。執行器的集合可在軟件的編譯時間配置。
由于商業原因,希望MNO和/或內容提供者能夠在某種程度上控制將顯示在移動設備屏幕上的用戶界面。同樣重要的是,具有一定靈活性,允許用戶下載triglet或者新trig以修改它們設備的外觀,并且還對由使用中的trig或者triglet確定的顯示圖像進行進一步的改變。
用戶界面的內容被存儲在檔案文件中,并且應用程序(app)的UI可由一個或者多個檔案文件來定義。各個檔案文件可包含多項資源(標記元素、圖像、文本等等)。檔案中的文件,和其它檔案文件格式一樣,以類似于已知文件夾/文件結構的方式被存儲在樹結構中。其中使用多于一個檔案文件來定義UI,需要的檔案文件按照嚴格的順序(或列表)排列。當需要某資源時,在各個檔案文件中搜索,搜索返回找到的第一個文件。
可以以這樣的方式對檔案文件進行排序,使得列表中較早從檔案文件中提取出的資源屏蔽檔案文件列表下部發現的檔案文件(或者文件)中所發現的資源。例如,如果有暫時模糊UI元素的需求,例如,一個窗口,則可在比包含要被模糊的UI元素的檔案文件更高級的檔案文件中定義屏蔽元素。
應注意,當用戶界面內容被解釋為繪制UI時,遮掩元素的添加使得模糊元素被繪制在UI內。因為模糊元素和要被屏蔽的UI元素占據UI的同一區域,并且模糊元素被保持在比包括要被屏蔽的元素的檔案文件更高層的檔案文件中,所以UI中只有模糊元素被顯示出來,從而只有模糊元素被繪制器取出用于繪制UI。因為模糊元素要被繪制出來,并且它和要屏蔽的元素占據相同的位置,所以繪制器不必取出要被屏蔽的元素。這種方法減少了繪制器取來用以繪制UI的數據量,從而減少了繪制UI需要的處理功率的量,并減少了繪制UI所花費的時間。
在設備上多于一個應用程序需要檔案文件(這樣的檔案文件可被稱為公共檔案或者基本檔案)的情況下,這種方法非常有用。然后,各應用程序能提供它們本身的應用程序特有的檔案文件,其屏蔽公共檔案文件中的一些資源并添加需要的更多的資源。各個應用程序具有它使用的檔案文件的列表,但是這些檔案文件中的一些也將被其它應用程序使用。這可理解為檔案文件的分級結構公共檔案文件處于分級結構的頂層,應用程序特有的檔案文件包括分級結構的較低層。因為不同的檔案文件將在分級結構的同一層中被找到,所以應用程序特有的檔案文件可稱為平面文件。
根據另一實施例,上述的布置可擴充為允許控制UI的配置和外觀。例如,因為UI是由和分級結構的不同層相關聯的檔案文件中存儲的各組件的交互作用有效組成的,所以可以把分級結構中的一層或多層分配給不同的實體,諸如,MNO、設備制造商、trig提供者、設備用戶等等。分級結構不同層的這種分配,例如,通過把分級結構的頂層分配給制造商,能使與設備制造商關聯的標志圖永久地顯示在UI內。如果網絡操作者,或者trig提供者,希望公布限時優惠,則可把合適的元素添加到與網絡操作者關聯的層中的檔案文件。分配到分級結構的最低級的實體能夠改變和修改沒有在分級結構的較高級別中的檔案文件中定義的所有UI組件。
圖4示出了四個分級平面405a-d的示意圖平面405a包括由MNO定義的UI組件;平面405b包括由設備制造商定義的UI組件;平面405c包括由trig定義的UI組件;并且,平面405d包括由用戶定義的UI組件。平面405a在分級結構中具有最高的位置,并且平面405d在分級結構中具有最低的位置。例如,平面405a中的mno_logo元素定義了使用的圖形元素及其在設備顯示屏上的位置。因為它處于分級結構的最高層,所以它將始終表現出并將采用高于試圖使用mno_logo所使用的像素的較低級元素的優先權。平面405d包括backgroundcolour(背景顏色)元素,其沒有在任何其它平面中被定義,從而在UI中將使用backgroundcolour中定義的顏色。
平面405c包括定義窗口標題使用的文本的屬性的windowtitle.txt元素。這可通過向平面405a或者405b添加windowtitle.txt元素以定義文本屬性來改寫,或者通過向平面405a或者405b添加windowtitle.txt_deleted元素以指示UI繪制器忽略任何后來的windowtitle.txt元素來改寫。
這使得UI的各個特征變得可配置,而且提供了一個框架,在該框架內,某些UI元素可以由諸如網絡操作者的實體來定義,在某種意義上阻止其它實體改變或者干擾那些定義的UI元素。
盡管前述的討論已經涉及存儲在檔案文件內的用戶界面內容,但是容易理解,用戶界面內容可替代地可存儲為其它形式,來提供文件集合,例如,未壓縮文件的文件夾,或者包括未壓縮文件和其它文件夾的文件夾。
在傳統的移動設備中,向用戶顯示關于電池強度、信號強度、新文本消息等等的信息。典型地,是通過操作系統向相關硬件或者軟件實體發送呼叫,并且UI解釋接收的回答并將其顯示出來,來獲取該信息的。
可使用TrigML標簽(見下文)<phonestatus>(或者<signalstrength>)在UI中顯示該信息。繪制該標簽使得收聽查詢對相關硬件和軟件實體開放。如果狀態發生變化,則UI繪制器得到通知,并且UI繪制器加載相關圖標或者圖形,以將狀態變化傳達給用戶。如果用戶改變UI內的視圖,標簽可以被撤回,并且收聽查詢終止。因為收聽查詢僅在標簽處于使用中的時候是有效的,所以該方法是更加資源高效的。
TrigML可使用常數變量來代替屬性值。用和<include>參數相同的語法來訪問常數變量,例如,$background_color。常數被視為trig中的全局變量,并被定義為在保留文件夾constants/中。constants/文件夾中的文件里包含的變量定義可以在編譯時用它們的值直接替換來解析。在可替代實施例中,constants/中的變量定義被編譯為全局變量,并且在內容分析時由軟件進行解析。這允許通過簡單替換它的一個或者全部常數文件來更新trig。
系統字符串詞典定義了整數值以用于所有已知字符串,即,保留字。這些有幾種類型,包括TrigML元素和屬性名(‘group’、‘res’、‘layer’、‘image’、‘x’),TrigML屬性值(例如‘left’、‘activate’、‘focus’)和公共資源路徑(例如‘attr’、‘start-up’、‘defaut’)。作為輸入,字符串詞典是可選的。Trig第一次被編譯的時候,它將沒有字符串詞典。第一次編譯生成字符串詞典,然后字符串詞典用于該trig的全部未來編譯。Triglet編譯必須有字符串詞典,字符串詞典定義了triglet正在修改的trig使用的全部字符串映射。
為了成功地繪制移動設備的用戶界面,標記語言必須具有以下性質簡明的頁面定義、一致的布置規則可在小型繪制器中執行,提供多個分層和任意重疊內容、事件模型,僅在UI的頁面間必須改變的顯示區域要求重新繪制,包括用于讀取屬性值、接收事件和發送事件的可擴展的對平臺的掛鉤(hook),并且在圖形表示上是靈活的。TrigML提供了這些特征和對提供在我們2004年2月19日提交的GB0403709.9號同時待審的申請中能找到的預期功能的元素和屬性的概述。
希望重新標記UI和產生連續更新流的成本達到最小。這是通過提供從創造性處理到向用戶傳輸數據的高效信息流來實現的。
稱為包的容器,被用于包含UI、UI更新和用于第三方的模板。包容納第三方產生、測試和傳送標記的UI和更新的所有必要信息。圖5示出了內容工具箱200的示意圖,其包括腳本環境220、測試和仿真環境230和維護環境240。
包處理包括五個處理階段1)腳本環境220提供設計用于一個或者多個UI的模板的方法和基于該模板的UI更新策略。
2)維護環境240提供了內容提供者可外購的良好控制和引導的環境中的快速UI和更新產品。
3)維護環境240‘預檢(pre-flight)’功能允許調度管理員檢查和調整他們從第三方接收的UI和更新。
4)發布組件110在調度點提供了UI和更新的管理,包括新版本升級。
5)發布組件110使得能夠從即時內容供給自動生成更新。
典型項目中,在腳本環境220中生成包用于內容提供者從模板生成重新標記UI,結合相同的‘感覺(feel)’但不同的‘外觀(look)’;內容提供者從模板生成更新,其對UI內容提供周期性的或者用戶選擇的變更;或者廣告代理從模板生成更新,其在周期性基礎上促進新的服務。
對于所有這些使用情況,維護環境240被用于輸入包,重新標記和重新配置內容,并創建用于提交給發布組件110的新包。在UI模板的設計中,應該考慮以下問題UI的哪部分可以被重新標記;UI的哪個特征需要在重新標記時或者遠程地進行配置;UI內容的哪部分可被更新;并且如果UI被重新標記,則用戶是否能選擇正在使用的內容供給。腳本環境220允許定義這些策略,并且使維護環境240作為各個策略的各個實例的執行者。
由包括模板UI或者用于編輯更新的腳本環境220生成包。完成編輯后,該包被保存到‘待發箱’,準備發送到維護環境240以發布到內容服務器。還提供了下面的‘打包(parcel)’功能。維護環境240可用于編輯/替換包中容納的資源。包可被輸出到仿真環境,以測試移動設備上的UI或者UI更新的性能。
可雙擊包的入口以啟動適當的編輯器(例如,圖像資源會啟動圖像編輯器)。所有資源的文本說明/注釋可插入到維護環境中,并顯示在維護環境的適當的部分中。菜單入口列表被處理為特有資源類型,各個入口代表它自身資源的子目錄(例如,標題、幫助字符串、圖像、滾動圖像、URL和鈴聲預覽)。
從公共基礎可導出許多不同的UI。典型地,公共基礎自身將實現大部分的界面,并且從它得到的trig將在其上實現諸如標記的小變動。Triglet能從Trig得到,并且它能優先于它選擇的來自父trig的任何資源(可選地,它可引進它自身的資源)。應注意,這里“資源”也是指TrigML,因此由Triglet來修改Trig的行為和布置就像它替換單個圖像或者一段文本一樣容易。
包可以包括一個或者多個基礎Trig(即,不是從任何其它trig得到的Trig)、一個或者多個從基礎trig得到的多個Trig、從任何trig得到的多個triglet,和從其它triglet得到的多個triglet。
圖5示出了包括根據本發明的一個實施例的用戶界面的設備800的示意圖。該設備包括顯示用戶界面815的顯示器810,和使用戶能夠與用戶界面815交互的用戶界面裝置820。處理器830執行存儲在一個或者多個存儲裝置840中的軟件,并且可提供一個或者多個無線通信接口850,使得能夠與其它設備和/或通信網絡進行通信。一個或者多個電池860可被容納用于為設備供電,設備也可包括容納電源和/或通信電纜的接口。
這些組件和接口的性質將取決于設備的性質。應該理解,這樣的用戶接口可在移動式或者蜂窩電話送受話器中實現,但是同樣也適用于其它便攜設備,諸如數碼相機、個人數字助理、數字音樂播放器、GPS導航設備、便攜式游戲控制臺等。而且,它還適用于包含用戶界面的其它設備,諸如膝上型電腦或者臺式計算機。
用戶界面裝置可包括多個按鈕,諸如數字鍵盤或者字母-數字鍵盤,或者觸摸屏或類似的。一個或者多個存儲設備可包括諸如記憶卡的一種形式的非易失存儲器,使得在掉電的情況下存儲的數據不會丟失。ROM存儲裝置可被提供用于存儲不需更新或者改變的數據。當較快響應時間支持頻繁存取的數據的超高速緩存時,一些RAM可被提供用于臨時存儲。設備還可接受用戶移動存儲卡,并且可選地,硬盤驅動器可用作存儲裝置。將通過平衡設備尺寸、功率消耗、所需存儲器容量等的不同需求,來確定使用的存儲裝置。
這樣的設備可被實施為實際上和任何無線通信網絡相結合,例如,第二代數字移動電話網絡(即,GSM、D-AMPS),所謂的2.5G網絡(即,GPRS、HSCSD、EDGE),第三代WCDMA或者CDMA-2000網絡和對這些或者類似網絡的改進和派生。在建筑物或者校園內也可使用其它技術,諸如藍牙、IrDa或者無線LAN(不管基于無線電還是光學系統)。USB和/或火線連接可被提供用于與其它設備進行數據同步,和/或用于電池充電。
用于實現這些方法和/或用于如上所述地配置設備的計算機軟件可設置在諸如軟盤、CD-ROM、DVD、非易失性存儲卡等的數據載體上。
本申請要求2004年2月19日提交的第0403709.9號UK專利申請的優先權,其內容結合在本文中作為參考。
權利要求
1.一種生成設備的用戶界面的方法,所述方法包括以下步驟(a)生成多個用戶界面元素集合,所述多個用戶界面元素集合中的每個包括一個或者多個用戶界面元素,其中所述用戶界面元素或者每個所述用戶界面元素與所述用戶界面的定義的區域相關聯;(b)將所述多個用戶界面元素集合中的每個排成序列;(c)查詢所述多個用戶界面元素集合中的每個,以選擇在所述用戶界面中使用的多個用戶界面元素,依照步驟(b)中執行的所述順序查詢所述集合,其中如果多于一個用戶界面元素與所述用戶界面的相同區域關聯,則所述選擇的用戶界面元素從步驟(b)中確定的所述序列中第一個出現的元素集合中取出;和(d)依照步驟(c)中選擇的所述多個用戶界面元素,繪制所述用戶界面。
2.如權利要求1所述的方法,其中在步驟(c)中選擇的并在步驟(d)中繪制的第一個用戶界面元素可以通過以下步驟從所述繪制的用戶界面中移除i)在用戶界面元素集合中插入另一個用戶界面元素,使得在步驟(b)中包含所述另一個用戶界面元素的所述用戶界面元素集合被排在包含所述第一個用戶界面元素的所述用戶界面元素集合之前;ii)其中所述另一個用戶界面元素與所述第一個用戶界面元素所關聯的用戶界面區域相同。
3.如權利要求1所述的方法,其中在步驟(c)中選擇的并在步驟(d)中繪制的第一個用戶界面元素可以通過以下步驟從所述繪制的用戶界面中移除i)在步驟(b)中確定的所述有序序列中插入另一個用戶界面元素集合,使得所述另一個用戶界面元素集合被排在包括所述第一個用戶界面元素的所述用戶界面元素集合之前;ii)所述另一個用戶界面元素集合包括另一個用戶界面元素,其中所述另一個用戶界面元素與所述第一個用戶界面元素所關聯的用戶界面區域相同。
4.如權利要求1所述的方法,其中一個或者多個用戶界面元素被添加到所述UI,所述方法進一步包括,將一個或者多個用戶界面元素插入到所述多個用戶界面元素集合中的一個或者多個中的步驟。
5.如權利要求1所述的方法,其中一個或者多個用戶界面元素被添加到所述UI,所述方法進一步包括,生成一個或者多個另外的用戶界面元素集合的步驟,所述另外的用戶界面元素集合或者每個所述另外的用戶界面元素集合包括一個或者多個用戶界面元素。
6.如前述權利要求中任一項所述的方法,其中所述多個用戶界面元素集合中的一個或者多個與能通過所述用戶界面激活的應用程序相關聯。
7.如前述權利要求中任一項所述的方法,其中所述多個用戶界面元素集合中的一個或者多個與所述設備的制造商相關聯。
8.如前述權利要求中任一項所述的方法,其中所述多個用戶界面元素集合中的一個或者多個與所述設備的用戶相關聯。
9.一種包括顯示裝置和由所述顯示裝置顯示的用戶界面的設備,在使用中所述設備配置成(a)生成多個用戶界面元素集合,所述多個用戶界面元素集合中的每個包括一個或者多個用戶界面元素,其中所述用戶界面元素或者每個所述用戶界面元素與所述用戶界面的定義的區域相關聯;(b)將所述多個用戶界面元素集合中的每個排成序列;(c)查詢所述多個用戶界面元素集合中的每個,以選擇在所述用戶界面中使用的多個用戶界面元素,根據步驟(b)中執行的所述順序查詢所述集合,其中如果多于一個用戶界面元素與所述用戶界面的相同區域相關聯,則所述選擇的用戶界面元素從步驟(b)中確定的所述序列中第一個出現的元素集合中取出;和(d)根據步驟(c)中選擇的所述多個用戶界面元素,繪制所述用戶界面。
10.如權利要求9所述的設備,其中,在使用中,在步驟(c)中選擇的并在步驟(d)中繪制的第一個用戶界面元素從所述繪制的用戶界面中移除,所述設備進一步配置成i)在用戶界面元素集合中插入另一個用戶界面元素,使得在步驟(b)中包含所述另一個用戶界面元素的所述用戶界面元素集合被排在包含所述第一個用戶界面元素的所述用戶界面元素集合之前;ii)其中所述另一個用戶界面元素與所述第一個用戶界面元素所關聯的用戶界面區域相同。
11.如權利要求9所述的設備,其中,在使用中,在步驟(c)中選擇的并在步驟(d)中繪制的第一個用戶界面元素從所述繪制的用戶界面中移除,所述設備進一步配置成i)在步驟(b)中確定的所述有序序列中插入另一個用戶界面元素集合,使得所述另一個用戶界面元素集合被排在包括所述第一個用戶界面元素的所述用戶界面元素集合之前;ii)所述另一個用戶界面元素集合包括另一個用戶界面元素,所述另一個用戶界面元素與所述第一個用戶界面元素所關聯的用戶界面區域相同。
12.如權利要求9所述的設備,其中一個或者多個用戶界面元素被添加到所述UI,所述設備進一步被配置成,在使用中,將一個或者多個用戶界面元素插入到所述多個用戶界面元素集合中的一個或者多個中。
13.如權利要求9所述的設備,其中一個或者多個用戶界面元素被添加到所述UI,所述設備進一步被配置成,在使用中,生成一個或者多個另外的用戶界面元素集合,所述另外的用戶界面元素集合或者每個所述另外的用戶界面元素集合包括一個或者多個用戶界面元素。
14.如權利要求9至13中任一項所述的設備,其中所述多個用戶界面元素集合中的一個或者多個與能通過所述用戶界面激活的應用程序相關聯。
15.如權利要求9至14中任一項所述的設備,其中所述多個用戶界面元素集合中的一個或者多個與所述設備的制造商相關聯。
16.如權利要求9至15中任一項所述的設備,其中所述多個用戶界面元素集合中的一個或者多個與所述設備的用戶相關聯。
17.如權利要求9至16中任一項所述的設備,其中所述設備進一步包括一個或者多個用于與無線通信網絡通信的無線通信接口,和與無線通信網絡的操作者相關聯的所述多個用戶界面元素集合中的一個或者多個。
18.一種包括用于執行權利要求1至8中任一項所述的方法的計算機可執行代碼的數據載體。
全文摘要
一種用于包含多層的設備的用戶界面。用戶界面的內容和多層中的一層相關聯。
文檔編號H04M1/725GK1914596SQ200580003899
公開日2007年2月14日 申請日期2005年2月21日 優先權日2004年2月19日
發明者S·G·布特林, N·H·克拉里, N·C·布魯克 申請人:高通劍橋有限公司