放射狀(radial)菜單用戶界面(UI)(也被稱為圓形菜單或轉(zhuǎn)盤菜單UI)通常包括與較傳統(tǒng)的線性菜單UI范式形成對比的圓形布局設計。該布局和線性菜單UI與放射狀菜單UI的使用區(qū)別是顯著的,并且這兩種范式都具有優(yōu)點、缺點、和用戶吸引力。與線性菜單相比,放射狀菜單提供了獨特的和完全不同的視覺和使用體驗。線性菜單UI通常位于遠離用戶的當前關注且并不總是環(huán)境相關的。然而,對放射狀菜單UI的接受度持續(xù)滯后于更傳統(tǒng)的線性菜單范式。
某些放射狀菜單UI可能是過度雜亂的、失去方向的、和/或提供欠佳的用戶體驗。例如,部分由于在圓形區(qū)域內(nèi)的用于菜單控制的較受限制的可用顯示區(qū)域,開發(fā)者可能嘗試在每個扇形圖或楔片中設置太多的控制或選項,這得到了可能導致增加的輸入差錯和錯誤的較小的點擊目標。諸如項的密度、項的間距、項的形狀、等等之類的放射狀菜單參數(shù)對放射狀菜單UI的可用性和接受度具有直接影響。
技術(shù)實現(xiàn)要素:
本發(fā)明內(nèi)容被提供為以簡化的形式介紹對概念的選擇,下面在具體實施方式中進一步描述了這些概念。本發(fā)明內(nèi)容并非旨在標識所請求保護的主題的關鍵因素或主要特征,也不旨在輔助確定所請求保護的主題的范圍。
實施例提供了圓形或放射狀菜單特征,但不是如此限制。實施例的一種設備包括放射狀菜單用戶界面(UI),該放射狀菜單界面被配置為響應于第一用戶交互而顯示主菜單項,以及響應于對相關聯(lián)的主菜單項的致動而顯示次級菜單項,其中,顯示次級菜單項包括對選定的主菜單項的同步顯示。實施例的一種方法部分地起到如下作用:通過響應于第一用戶交互而顯示多個第一級菜單項和響應于對所顯示的第一級菜單項的致動而顯示多個第二級菜單項,其中,顯示多個第二級菜單項包括對多個第二級菜單項 相對于所顯示的第一級菜單項的顯示進行動畫化。包括其它實施例。
根據(jù)對以下具體實施方式的閱讀和對相關聯(lián)的附圖的概述,這些和其它特征和優(yōu)點將顯而易見。將理解的是,前述的通用描述和以下具體實施方式兩者都僅僅是解釋性的,而并非如所請求保護地限制本發(fā)明。
附圖說明
圖1是包括放射狀菜單特征的示例性設備/系統(tǒng)的框圖。
圖2是使用放射狀菜單UI描繪示例性過程的流程圖。
圖3A-圖3H描繪了被配置為具有放射狀菜單特征的示例性手持式計算設備。
圖4是示出了用于各實施例的實施方式的示例性計算環(huán)境的框圖。
圖5A-圖5B示出了可以借助來對實施例進行實踐移動計算設備。
圖6示出了包括一個或多個客戶端設備的系統(tǒng)架構(gòu)的一個實施例。
具體實施方式
圖1是示例性計算設備/系統(tǒng)100的框圖,該計算設備/系統(tǒng)100包括圓形或放射狀菜單用戶界面(UI)的特征,但并非如此限制。放射狀菜單UI特征被配置為與各內(nèi)容類型、環(huán)境(context)、應用、和/或操作系統(tǒng)(O/S)一起使用。例如,放射狀菜單UI特征可以作為選擇應用和/或OS組件的部分而被包括。如下面所描述的,實施例的放射狀菜單UI特征提供響應于交互式輸入(例如觸摸或手勢動作、鍵盤輸入、鼠標或筆動作、聲音輸入、等等)而激活的至少主菜單和次級菜單等級。放射狀菜單UI特征允許多種用戶交互,包括使得用戶能夠激活菜單、激活子菜單、執(zhí)行命令、滾動菜單項、提供環(huán)境的對象圖庫、以及下面所描述的其它特征。
如在圖1中示出的并根據(jù)實施例,設備/系統(tǒng)100包括圓形或放射狀菜單組件102,其部分地起到提供被配置為顯示周向設置的菜單項(例如,見圖3D-圖3H)的單個圓圈的放射狀菜單UI的作用。一個實施例的放射狀菜單UI被配置為在不擴展圓形空間或不需要外部延伸的情況下,同時顯示選定的主菜單項(例如,第一級菜單項)以及與選定的主菜單項相關聯(lián)的多個次級菜單項中的一個或多個項,這在下面進一步進行描述??梢岳斫? 的是,設備/系統(tǒng)100被配置為儲存和執(zhí)行多個用戶應用并包括處理、存儲器、顯示器、聯(lián)網(wǎng)、和/或其它資源(被共同示出為104)。
如下面進一步描述的,實施例的放射狀菜單組件102被配置為提供放射狀菜單UI,該放射狀菜單UI使用動畫作為顯示主菜單項和/或次級菜單項的一部分。實施例的放射狀菜單組件102包括復雜的程序代碼,該程序代碼被配置為顯示放射狀菜單UI,該放射狀菜單UI使得用戶能夠有效地導航并定位菜單項,而同時持續(xù)顯示選定的主菜單項作為如下的一部分:保持對用戶的導向和對引起次級菜單項的顯示的進入點的引用。放射狀菜單UI允許用戶高效地導航菜單項并發(fā)出命令(例如,應用表格格式、應用文本格式、應用視頻格式、應用窗體、等等),作為獲得某個期望的結(jié)果的部分。
根據(jù)實施例,放射狀菜單組件102可用于當用戶選擇某個內(nèi)容、對象、或其它計算機實現(xiàn)的項時顯示放射狀菜單UI。當首次致動時,實施例的放射狀菜單UI被配置為顯示周向設置的主菜單項的單個圓形。實施例的每個主菜單項都被配置為觸發(fā)對多個次級菜單項中的一個或多個次級菜單項的顯示,該多個次級菜單項操作為根據(jù)用戶選擇獲得期望的結(jié)果。例如,可以選擇改變表格格式的次級菜單項,以調(diào)整對表格呈現(xiàn)的顯示。撤銷或類似操作可以與放射狀菜單UI一起使用,以覆蓋任何不期望的結(jié)果。如下面所描述的,放射狀菜單UI可以被配置為,在同步顯示相關聯(lián)的主菜單項的同時,對次級菜單項進行顯示和/或動畫化。
實施例的放射狀菜單組件102包括復雜的程序代碼,該程序代碼部分地起到如下作用:持續(xù)顯示散布在多個被顯示的次級菜單項之間的選定的主菜單項(例如,見圖3F和圖3H),作為對用于顯示相關聯(lián)的次級菜單項的進入點的引用進行保持的一部分。與傳統(tǒng)的放射狀菜單的實施方式相反,在不需要擴展放射狀空間的尺寸也不需要外部延伸的情況下,在顯示相關聯(lián)的次級菜單項的同時保持顯示選定的主菜單項。放射狀菜單組件102使得用戶能夠利用多種輸入類型,包括觸摸輸入、鼠標輸入、聲輸入、以及其它使得用戶能夠高效地導航并使用放射狀菜單項的輸入。
放射狀菜單組件102部分地起到如下作用:管理對至少主要的和次級的(也被稱為第一級和第二級)周向設置的菜單項的顯示。如上文和下文 進一步描述的,一個實施例的放射狀菜單組件102被配置為至少部分地基于環(huán)境、設備類型、和/或應用類型來動態(tài)填充菜單項。例如,放射狀菜單組件102可以用于顯示放射狀菜單UI,該放射狀菜單UI包括涉及文字處理應用菜單、電子數(shù)據(jù)表應用菜單等等的主菜單項和次級菜單項。作為進一步的示例,放射狀菜單組件102可以操作為基于相關聯(lián)的設備/系統(tǒng)的尺寸或可用屏幕區(qū)域來控制對放射狀菜單UI和相關聯(lián)的菜單項的顯示。下面進一步描述了另外的放射狀菜單特征。
此外,本文中所描述的客戶端設備/系統(tǒng)可以被配置有至少一個處理器、系統(tǒng)存儲器、聯(lián)網(wǎng)設備、顯示器、和/或其它組件。系統(tǒng)存儲器可以包括易失性(例如,隨機存取存儲器(RAM))、非易失性(例如,只讀存儲器(ROM))、閃存、等等。系統(tǒng)存儲器可以包括操作系統(tǒng)或者可由最終用戶使用的各種應用程序。可以理解的是,本文中所描述的實施例還可以結(jié)合其它操作系統(tǒng)、設備/系統(tǒng)類型、和/或應用程序來實施。
各個實施例可以與多個計算機配置(包括手持式設備、微處理器系統(tǒng)、基于微處理器或可編程的消費電子設備、微型計算機、大型計算機、等等)一起使用。各個實施例可以在使用通過一個或多個通信網(wǎng)絡進行通信的遠程處理設備/系統(tǒng)的分布式計算環(huán)境中實施。在分布式計算環(huán)境中,程序模塊或代碼可以位于本地存儲器或遠程存儲器兩者中。在片上系統(tǒng)(SOC)架構(gòu)中,中央處理單元、圖像處理器、存儲器、USB控制器、功率管理電路、無線電設備(WiFi、蜂窩、等等)、和/或其它組件可以用于提供應用功能。
圖2是描繪了使用放射狀菜單UI的示例性過程200的流程圖。在202處,過程200通過顯示放射狀菜單UI來開始,該放射狀菜單UI響應于用戶交互而包括多個主菜單項。例如,平板設備用戶可以使用響應于所安裝的應用的應用環(huán)境而顯示特定的主菜單項的放射狀菜單UI。如果用戶在204處退出放射狀菜單UI,則過程200轉(zhuǎn)入206并等待進一步的用戶交互。
如果用戶在204處并不退出放射狀菜單UI,則過程200轉(zhuǎn)入208并起到如下作用:響應于選定的主菜單項的致動,顯示具有多個次級菜單項連同選定的主菜單項的放射狀菜單UI。在一個實施例中,選定的主菜單項在多個次級菜單項中的兩個次級菜單項之間被對比地顯示。根據(jù)一個實施例, 過程200在208處起到如下作用:根據(jù)由選定的主菜單項的邊界限定的動畫邊界來動畫化對次級菜單項的顯示。如果次級菜單項在210處并未致動且用戶并不在212處導航返回次級菜單,過程200轉(zhuǎn)入206并等待用戶輸入。
如果次級菜單項并未在210處致動,但用戶并未在212處導航回到主菜單,則過程200返回到202。如果在210處致動次級菜單項,則過程200轉(zhuǎn)入214并起到應用命令或執(zhí)行與次級菜單項的致動相關聯(lián)的動作的作用和/或在返回206之前折疊放射狀菜單UI。在一個實施例中,在應用命令或執(zhí)行動作之后,過程200可以在214處被配置為返回到對主菜單項的顯示,而不是折疊或退出放射狀菜單UI。盡管針對圖2中的示例性流程描述了操作的某個數(shù)量和順序,但可以理解的是,可以根據(jù)期望的實施方式來使用其它數(shù)量和/或順序。
圖3A-圖3H描繪了被配置有圓形或放射狀菜單特征的示例性手持式計算設備300,但并不限于此。本領域技術(shù)人員將認識到,設備300包括處理、圖形、存儲器、聯(lián)網(wǎng)、以及起到部分地提供放射狀菜單特征的方面的作用的其它操作組件。放射狀菜單特征允許用戶高效地導航和定位菜單項,這允許用戶執(zhí)行命令(例如,應用表格格式、應用文本格式、應用視頻格式、應用窗體、等等)作為達到某個期望的結(jié)果的一部分。例如,放射狀菜單特征可以被實現(xiàn)為特定于應用的組件和/或O/S組件的一部分,其中,平板計算機(例如,SURFACE設備)或智能手機(例如,WINDOWS手機)作為示例。
如在圖3A中示出的,設備300當前執(zhí)行應用以在用戶與電子數(shù)據(jù)表交互時顯示電子數(shù)據(jù)表的數(shù)據(jù)。對于所描繪的實施方式,當用戶選擇內(nèi)容時,選擇邊界302將當前的用戶選擇囊括在內(nèi),并包括部分地起到控制最終選擇哪些內(nèi)容的作用并結(jié)合放射狀菜單特征使用的手柄(handle)304。例如,當使用觸摸屏時,用戶可以使用指尖按住手柄304并滑動指尖以將手柄304移動到特定位置,舉例來說,例如特定的行和/或列的單元(cell)。盡管對于該示例,電子數(shù)據(jù)表類型的應用被用作為用于使用放射狀菜單特征的環(huán)境(context),但可以理解的是,可以利用其它應用和/或環(huán)境來實現(xiàn)放射狀菜單特征。例如,放射狀菜單特征可以被包括作為文字處理應用、繪圖應 用、數(shù)據(jù)庫應用、視頻和圖像應用、和其它應用類型。
圖3B描繪了在用戶已經(jīng)松開手柄304來限定選定的內(nèi)容之后的設備300。根據(jù)如在圖3B中示出的實施例,作為進行了選擇(例如,移開指尖、松開鼠標按鈕、等等)的結(jié)果,復雜的程序代碼起到如下作用:將觸發(fā)界面306鄰近于選定的內(nèi)容而顯示。根據(jù)實施例,當觸發(fā)界面306被致動(例如,輕擊、點擊、等等)時,復雜的程序代碼起到如下作用:將觸發(fā)界面306動畫化和/或轉(zhuǎn)換成圖3D中示出的放射狀菜單UI 308。
圖3C描繪了在利用主菜單項或第一級菜單項填充放射狀菜單UI 308的最終的周向或徑向尺寸(如通過圖3D中的示例示出的)之前,與將觸發(fā)界面306擴大成較大直徑的圓形顯示307相關聯(lián)的中間動畫步驟??梢岳斫獾氖牵陲@示放射狀菜單UI 308的最終周向尺寸之前,可以存在多個動畫或不存在中間動畫,這可以取決于可用的屏幕基板面(screen real estate)、可讀性設置、或某種其它因素。在一個實施例中,放射狀菜單UI 308(包括任何主菜單項和/或次級菜單項)可以被配置為在致動觸發(fā)界面306之后在不執(zhí)行任何中間顯示動畫或步驟的情況下進行顯示。例如,一旦主菜單項被選擇,放射狀菜單UI 308就可以被配置為實時或接近實時地操作,以相對于選定的主菜單項同時顯示多個次級菜單項。
圖3D描繪了顯示放射狀菜單UI 308的設備300,該放射狀菜單UI 308包括周向地設置在外邊界320內(nèi)的多個主菜單項或第一級菜單項310、312、314、316、和318,對于該示例,外邊界320被配置為圓形或基本上圓形。對于該實施方式,每個菜單項都被配置成楔形形狀或扇形圖形狀。然而,可以理解的是,可以使用其它數(shù)量和/或形狀的菜單項。根據(jù)實施例,可以致動(例如,輕擊、點擊、等等)每個主菜單項,以觸發(fā)對多個次級或第二級菜單項的顯示,其中,多個次級菜單項中的每個次級菜單項都被配置為當被致動時施加動作或執(zhí)行命令。
圖3E描繪了在致動主菜單項310之后對次級菜單項的顯示進行動畫化的同時的放射狀菜單UI 308。對于該示例,對主菜單項310的致動起到如下作用:從主菜單項310的第一邊界或部分322開始,以旋轉(zhuǎn)方式朝向第二邊界或部分323對多個次級菜單項中的一個或多個菜單項的顯示進行動畫化。如在圖3E中所示出的,在其中次級菜單項324、326、328、和330 已經(jīng)從第一邊界322朝向第二邊界323旋轉(zhuǎn)地動畫化的動畫期間的時間點示出了放射狀菜單UI 308。盡管未示出,旋轉(zhuǎn)動畫以從第一邊界322放射(emanate)并朝向第二邊界323旋轉(zhuǎn)的次級菜單項330開始,接著是從第一邊界322放射并朝向第二邊界323旋轉(zhuǎn)的次級菜單項328,等等。
繼續(xù)參照圖3E,與傳統(tǒng)的放射狀菜單實施方式相比,在顯示和/或動畫化對次級菜單項中的一個或多個次級菜單項的顯示的同時,主菜單項310仍然在相同的位置顯示。除了主菜單項310以外,所顯示的次級菜單項取代先前顯示的主菜單項。取決于次級菜單項的數(shù)量,額外的次級菜單項可以被隱藏,并當用戶與次級菜單項交互時顯現(xiàn)。放射狀菜單UI 308被配置為接收多個輸入(包括滾動(例如,滑動、等等))以及其它使得用戶能夠高效地導航并使用放射狀菜單UI 308的輸入類型。
現(xiàn)在參考圖3F,次級菜單項的動畫通過如下方式繼續(xù):隨著從主菜單項310的第一邊界322起依次放射的額外的次級菜單項332、334和336的顯示,以旋轉(zhuǎn)的方式遍歷。如對于圖3F中的示例示出的,用戶具有由所顯示的(以及可能隱藏的)次級菜單項所提供的多個表格式選項,而同時繼續(xù)持續(xù)顯示主菜單項310。如以上所描述的,在顯示次級菜單項的同時持續(xù)顯示主菜單項310提供了對進入點的引用,該進入點顯現(xiàn)了對次級菜單項的顯示,并起到使用戶確定方向而不使用戶失去方向的作用。
本文中所描述的放射狀菜單UI特征部分地起到如下作用:部分地由于作為結(jié)果的(resultant)輸入數(shù)量和通過致動主菜單項和次級菜單項來執(zhí)行動作/命令所需要的時間量而提升延長的電池壽命和更有效的組件用途,引起了設備300的減小的功耗。用戶不再被要求使用額外的輸入作為為識別與所顯示的次級菜單項相關聯(lián)的進入點而進行回溯(backtraking)的一部分。在替代的實施例中,除了啟動次級菜單項以外,主菜單項中的一個或多個菜單項還可以被配置為:當被致動時,對選定的內(nèi)容、對象等等執(zhí)行命令和/或執(zhí)行動作。放射狀菜單UI 308并不限于兩個菜單項等級,并且可以包括額外的控制等級和/或其它配置。
可以以多種方式(包括在對次級菜單項的致動之后,輕擊/點擊外邊界320的外部,或者通過某種其它經(jīng)定義的交互)來關閉或退出放射狀菜單UI 308。例如,用戶可以輕擊外邊界320的外部,以折疊放射狀菜單UI 308。 作為另一個示例,一旦用戶已經(jīng)致動(例如,輕擊或點擊)次級菜單項330并將相關聯(lián)的表格格式施加到選定的電子數(shù)據(jù)表,放射狀菜單UI 308就可以折疊或關閉。在另一個實施例中,放射狀菜單UI 308可以被配置為從顯示次級菜單項轉(zhuǎn)換回顯示主菜單項,以再次提供多個可能的進入點以用于訪問次級菜單項,而不是在經(jīng)定義的交互時折疊或關閉。
再次參考圖3D并另外參考圖3G,假設響應于另外的用戶交互,設備300再次顯示包括多個主菜單項或第一級菜單項310、312、314、316、和318的放射狀菜單UI 308。如以上所描述的,放射狀菜單UI 308可以被配置為基于環(huán)境、應用類型、設備/系統(tǒng)類型、或某種其它因素來顯示不同類型的菜單項。如在圖3G中示出的,響應于對主菜單項312的選擇,放射狀菜單UI 308再次起到對與主菜單項312相關聯(lián)的次級菜單項的顯示進行動畫化的作用。對主菜單項312的致動起到如下作用:從主菜單項312的第一邊界或部分338開始,以旋轉(zhuǎn)方式朝向第二邊界或部分340,將對多個次級菜單項中的一個或多個次級菜單項的顯示動畫化。
如在圖3G中示出的,在動畫期間的一個時間點示出了放射狀菜單UI 308,在此情況下次級菜單項342和344已經(jīng)從第一邊界338朝向第二邊界340以旋轉(zhuǎn)方式動畫化。盡管未示出,旋轉(zhuǎn)的動畫以從第一邊界338放射并朝向第二邊界340旋轉(zhuǎn)的次級菜單項344開始,接著是從第一邊界338放射并朝向第二邊界340旋轉(zhuǎn)的次級菜單項342。如以上描述的,根據(jù)實施例并與傳統(tǒng)的放射狀菜單的實施方式相反,當顯示次級菜單項和/或動畫化對次級菜單項的顯示時,仍然在相同位置顯示主菜單項312。除了主菜單項312以外,所顯示的次級菜單項取代先前顯示的主菜單項。取決于次級菜單項的數(shù)量,額外的次級菜單項可以是隱藏的,并且當用戶與次級菜單項交互時顯現(xiàn)。
現(xiàn)在參考圖3H,次級菜單項的動畫通過如下方式繼續(xù):隨著從主菜單項312的第一邊界338起依次放射的額外的次級菜單項346-354的顯示,以旋轉(zhuǎn)的方式遍歷。如對于圖3H中的示例示出的,用戶具有用于經(jīng)由所顯示的次級菜單項342-354進行選擇的多個表格選項,并部分地由于持續(xù)顯示的主菜單項312以及相關聯(lián)的次級菜單項而保持定向。如以上所描述的,在顯示次級菜單項的同時持續(xù)顯示主菜單項310,起到保持對進入點的引用 的作用,該進入點(entry point)引起對次級菜單項的顯示。
可以理解的是,放射狀菜單UI 308和相關聯(lián)的菜單項的相鄰的顯示位置或在環(huán)境中的顯示位置克服了與如下相關聯(lián)的問題:需要用戶移動遠離當前關注,并且尋求對某個從當前關注的菜單界面分離的或以其它方式移開的菜單動作進行定位以及施加。關于用戶的選擇而將放射狀菜單UI 308接近地顯示,允許用戶當在放射狀菜單UI 308周圍導航時對當前任務保持關注。放射狀菜單UI 308被調(diào)整大小并且被配置為使得用戶能夠方便地并毫不費力地定位周向設置的菜單項和/或施加任何一個或多個相關聯(lián)的菜單動作。每個菜單項都可以被調(diào)整大小并且被配置作為觸摸目標或點擊目標,該目標包括文本和/或用于預備識別每個菜單項的圖標/符號。作為實施方式的示例,與針對具有較大顯示區(qū)域的平板設備的較大直徑相比,對于具有有限的顯示區(qū)域的智能電話類型的設備,可以包括具有較小直徑的放射狀菜單UI 308。放射狀菜單UI 308可以被配置為響應于縮放或其它用戶交互而動態(tài)調(diào)整尺寸。
可以理解的是,本文中所描述的各個特征可以被實現(xiàn)為包括硬件和軟件組件的處理器驅(qū)動的計算機環(huán)境的部分。此外,盡管為了說明的目的,上面描述了某些實施例和示例,但其它實施例可以包括在內(nèi)并且是可用的,并且所描述的實施例不應當用于限制權(quán)利要求。適當?shù)某绦蜓b置包括用于指導計算機系統(tǒng)或設備執(zhí)行過程或方法的步驟的任何裝置,例如包括,包括耦合到計算機存儲器的處理單元和算術(shù)邏輯電路的系統(tǒng),這些系統(tǒng)具有儲存在計算機存儲器中的能力,計算機存儲器包括被配置為儲存數(shù)據(jù)和程序指令或代碼的電子電路。
示例性的制品包括可與任何適當?shù)臄?shù)據(jù)處理系統(tǒng)一起使用的計算機程序產(chǎn)品。盡管上面描述了某個數(shù)量和類型的組件,但可以理解的是,可以根據(jù)各個實施例而包括其它數(shù)量和/或類型和/或配置。因此,組件的功能還可以根據(jù)期望的實施方式而劃分和/或與其它組件功能進行組合。如本文中所使用的術(shù)語計算機可讀介質(zhì)可包括計算機儲存介質(zhì)或計算機儲存器。實施例的計算機儲存器儲存起到執(zhí)行某種功能的程序代碼或指令的作用。計算機儲存器和計算機儲存介質(zhì)可以包括用于儲存信息(例如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、等等)的以任何方法或技術(shù)實現(xiàn)的易失性和非 易失性、可移動和不可移動介質(zhì)。
系統(tǒng)存儲器、可移動儲存器、和不可移動儲存器都是計算機儲存介質(zhì)的示例(即,存儲器存儲設備)。計算機儲存介質(zhì)可以包括,但不限于,RAM、ROM、電可擦除只讀存儲器(EEPROM)、閃存或其它存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光儲存、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設備、或可用于儲存信息且可以由計算設備訪問的任何其它介質(zhì)。任何這樣的計算機儲存介質(zhì)都可以是設備或系統(tǒng)的一部分。作為示例而非限制,通信介質(zhì)可以包括諸如有線網(wǎng)絡或直接線連接之類的有線介質(zhì),以及諸如聲學、射頻(RF)、紅外線、和其他無線介質(zhì)之類無線介質(zhì)。
本文中所描述的實施例和示例并非旨在限制,并且其它實施例是可用的。此外,以上所描述的組件可以被實現(xiàn)為聯(lián)網(wǎng)的、分布式的、和/或其它計算機實現(xiàn)的環(huán)境的一部分。組件可以經(jīng)由有線、無線、和/或通信網(wǎng)絡的組合進行通信。網(wǎng)絡組件和/或組件之間的耦合可以包括任何類型、數(shù)量、和/或組合的網(wǎng)絡和對應的網(wǎng)絡組件,該對應的網(wǎng)絡組件包括但不限于廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、專有網(wǎng)絡、后端網(wǎng)絡、蜂窩網(wǎng)絡、等等。
客戶端計算設備/系統(tǒng)和服務器可以是任何類型和/或組合的基于處理器的設備或系統(tǒng)。此外,服務器功能可以包括許多組件并包括其它服務器。用單數(shù)時態(tài)描述的計算環(huán)境中的組件可以包括這些組件的多個實例。盡管某些實施例包括軟件的實施方式,但它們并非被如此限制,并且包括硬件、或混合硬件/軟件的解決方案。
本說明書中使用的術(shù)語(例如組件、模塊、系統(tǒng)、設備、云、網(wǎng)絡、和其它術(shù)語)通常描述包括硬件、軟件、固件和/或其它項的計算機相關的操作環(huán)境。組件可以使用處理器、可執(zhí)行文檔、和/或其它代碼來使用過程。示例性的組件包括應用、在應用上運行的服務器、和/或耦合至服務器以用于接收通信項的電子通信客戶端。計算機資源可以包括諸如數(shù)字信號處理器、微處理器、多核處理器、等等之類的處理器和存儲器資源,以及諸如磁、光、和/或其它存儲設備、智能存儲器、閃存、等等之類的存儲器組件。通信組件可用于傳輸計算機可讀信息,作為使用一個或多個通信網(wǎng)絡(舉 例來說,例如互聯(lián)網(wǎng))來發(fā)送、接收、和/或顯現(xiàn)電子通信項目的一部分??梢园ㄆ渌鼘嵤├团渲?。
現(xiàn)在參考圖4,以下討論旨在提供對其中可以實施實施例的適當?shù)挠嬎悱h(huán)境的簡要的、通用的描述。盡管在結(jié)合在個人計算機上的操作系統(tǒng)上運行的程序模塊執(zhí)行的程序模塊的通用背景中進行了描述,但本領域技術(shù)人員將認識到,本發(fā)明還可以與其它類型的計算系統(tǒng)和程序模塊來實施。
通常,程序模塊包括執(zhí)行具體任務或?qū)嵤┚唧w抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)、和其它類型的結(jié)構(gòu)。此外,本領域技術(shù)人員可以理解的是,可以利用其它計算機系統(tǒng)配置(包括手持式設備、微處理器系統(tǒng)、基于微處理器或可編程消費電子產(chǎn)品、迷你計算機、主機計算機等等)來實施本發(fā)明。本發(fā)明還可以在分布式計算環(huán)境中實施,其中,由通過通信網(wǎng)絡鏈接的遠程處理設備來執(zhí)行任務。在分布式計算環(huán)境中,程序模塊可以位于本地和遠程存儲器存儲設備兩者中。
如在圖4中示出的,計算機2包括通用服務器、臺式機、膝上電腦、手持式、或能夠執(zhí)行包括使用圓形或放射狀特征的應用或應用功能的一個或多個執(zhí)行程序的其它類型的計算機。計算機2包括至少一個中央處理單元8(“CPU”)、系統(tǒng)存儲器12(包括隨機存取存儲器18(“RAM”)和只讀存儲器(“ROM”)20)、以及將存儲器耦合至CPU 8的系統(tǒng)總線10。包含有助于在計算機內(nèi)的元件之間傳輸信息(例如在啟動期間)的基本例程的基本輸入/輸出系統(tǒng)儲存在ROM 20中。計算機2還包括用于儲存操作系統(tǒng)24、應用程序、和其它程序模塊/資源26的大容量存儲設備14。
大容量存儲設備14通過連接到總線10的大容量儲存控制器(未示出)連接到CPU 8。大容量存儲設備14及其相關聯(lián)的計算機可讀介質(zhì)為計算機2提供了非易失性儲存。盡管對本文中包含的計算機可讀介質(zhì)的描述指代大容量存儲設備(例如硬盤或CD-ROM驅(qū)動器),但本領域技術(shù)人員應當意識到,計算機可讀介質(zhì)可以是可由計算機2訪問或利用的任何可用的介質(zhì)。
根據(jù)各實施例,計算機2可以使用通過網(wǎng)絡4(舉例來說,例如本地網(wǎng)絡、互聯(lián)網(wǎng)、等等)至遠程計算機的邏輯連接而在聯(lián)網(wǎng)環(huán)境中操作。計算機2可以通過連接至總線10的網(wǎng)絡接口單元16連接到網(wǎng)絡4。應當意識到,網(wǎng)絡接口單元16還可以用于連接至其它類型的網(wǎng)絡和遠程計算系統(tǒng)。 計算機2還可以包括用于接收和處理來自多個其它設備(例如,鍵盤、鼠標、等等(未示出))的輸入的輸入/輸出控制器22。類似地,輸入/輸出控制器22可以向顯示屏、打印機、或其它類型的輸出設備提供輸出。
如上面簡要引用的,多個程序模塊和數(shù)據(jù)文件可以儲存在計算機2的大容量存儲設備14和RAM 18中,包括適合于控制聯(lián)網(wǎng)個人計算機的操作的操作系統(tǒng)24,例如華盛頓州雷蒙德市的微軟公司的WINDOWS操作系統(tǒng)。大容量存儲設備14和RAM 18還可以儲存一個或多個程序模塊。具體來說,大容量存儲設備14和RAM 18可以儲存應用程序,例如文字處理、電子數(shù)據(jù)表、繪圖、電子郵件、和其它應用和/或程序模塊、等等。
圖5A-圖5B示出了可用來實施實施例的移動計算設備500,例如移動電話、智能電話、平板個人計算機、膝上型計算機等。參考圖5A,示出了用于實現(xiàn)實施例的移動計算設備500的實施例。在一基本配置中,移動計算設備500是具有輸入元件和輸出元件兩者的手持式計算機。移動計算設備500通常包括允許用戶將信息輸入到移動計算設備500中的顯示器505和一個或多個輸入按鈕510。移動計算設備500的顯示器505還可以用作為輸入設備(例如,觸摸屏顯示器)。如果包括的話,可選的側(cè)面輸入元件515允許進一步的用戶輸入。側(cè)面輸入元件515可以是旋轉(zhuǎn)開關、按鈕、或任何其它類型的手動輸入元件。在替代實施例中,移動計算設備500可包括更多或更少的輸入元件。例如,在某些實施例中,顯示器505可以不是觸摸屏。
在又一替代實施例中,移動計算設備500是便攜式電話系統(tǒng),例如蜂窩電話。移動計算設備500還可包括可選的小鍵盤535。可選的小鍵盤535可以是物理小鍵盤或者在觸摸屏顯示器上生成的“軟”小鍵盤。在各實施例中,輸出元件包括用于示出圖形用戶界面(GUI)的顯示器505、視覺指示器520(例如,發(fā)光二極管)、和/或音頻換能器525(例如,揚聲器)。在某些實施例中,移動計算設備500包括用于為用戶提供觸覺反饋的振動換能器。在又一個實施例中,移動計算設備500包括輸入和/或輸出端口,例如音頻輸入(例如,話筒插孔)、音頻輸出(例如,耳機插孔)、以及視頻輸出(例如,HDMI端口),以用于向外部設備發(fā)送信號或者從外部設備接收信號。
圖5B示出了移動計算設備的一個實施例的架構(gòu)的框圖。即,移動計算設備500可包括用于實現(xiàn)某些實施例的系統(tǒng)(即,架構(gòu))502。在一個實施例中,系統(tǒng)502被實現(xiàn)為能夠運行一個或多個應用(例如,瀏覽器、電子郵件、日程安排、通信管理器、消息傳送客戶端、游戲、以及媒體客戶端/播放器)的“智能電話”。在某些實施例中,系統(tǒng)502被集成為計算設備,例如集成的個人數(shù)字助理(PDA)和無線電話。
一個或多個應用566(包括利用圓形或放射狀菜單界面的應用程序)可被加載到存儲器562中并在操作系統(tǒng)564上或與操作系統(tǒng)564相關聯(lián)地運行。應用程序的示例包括電話撥號程序、電子郵件程序、個人信息管理(PIM)程序、文字處理程序、電子數(shù)據(jù)表格程序、互聯(lián)網(wǎng)瀏覽器程序、消息傳送程序等等。系統(tǒng)502還包括存儲器562內(nèi)的非易失性儲存區(qū)域568。
非易失性儲存區(qū)域568可用于儲存在系統(tǒng)502斷電時不會丟失的持久信息。應用程序566可使用信息并將信息儲存在非易失性儲存區(qū)域568中,例如電子郵件應用使用的電子郵件或其他消息等。同步應用(未示出)也可駐留于系統(tǒng)502上且被編程為與駐留在主機計算機上的對應的同步應用交互,以保持非易失性儲存區(qū)域568中儲存的信息與主機計算機處儲存的對應信息同步。如應當意識到的,其它應用可被加載到存儲器562中且在設備500上運行。
系統(tǒng)502具有可被實現(xiàn)為一個或多個電池的電源570。電源570還可包括外部功率源,例如補充電池或?qū)﹄姵刂匦鲁潆姷腁C適配器或加電對接托架。系統(tǒng)502還可包括執(zhí)行發(fā)送和接收無線電頻率通信的功能的無線電572。無線電572經(jīng)由通信運營商或服務供應商促進了系統(tǒng)502與“外部世界”之間的無線連接。來往無線電572的傳輸是在操作系統(tǒng)564的控制下進行的。換言之,無線電572接收的通信可經(jīng)由操作系統(tǒng)564傳播到應用566,反之亦然。
視覺指示器520可用于提供視覺通知和/或音頻接口574可用于經(jīng)由音頻換能器525產(chǎn)生聽覺通知。在所示出的實施例中,視頻指示器520是發(fā)光二極管(LED)并且音頻換能器525是揚聲器。這些設備可以直接耦合至電源570,從而當被激活時,即使為了節(jié)省電池功率而可能關閉處理器560和其他組件,它們也在一段由通知機制指示的持續(xù)時間保持通電。LED 可以被編程為無限地保持通電,直到用戶采取行動來指示設備的通電狀態(tài)為止。
音頻接口574用于向用戶提供聽覺信號并從用戶接收聽覺信號。例如,除了耦合到音頻換能器525以外,音頻接口574還可耦合到話筒以接收聽覺輸入,例如便于電話對話。根據(jù)實施例,話筒也可充當音頻傳感器來便于對通知的控制,如下文將描述的。系統(tǒng)502可進一步包括使得板載相機530的操作能夠記錄靜止圖像、視頻流等的視頻接口576。例如,該移動計算設備500還可包括附加數(shù)據(jù)存儲設備(可移動的/或不可移動的),例如,磁盤、光盤、或磁帶。此類附加儲存器在圖5B中用非易失性儲存區(qū)域568示出。
移動計算設備500生成或捕捉的且經(jīng)系統(tǒng)502儲存的數(shù)據(jù)/信息可如上所述本地儲存在移動計算設備500上,或數(shù)據(jù)可被儲存在可由設備經(jīng)由無線電572或經(jīng)由移動計算設備500和與移動計算設備500相關聯(lián)的單獨的計算設備之間的有線連接訪問的任何數(shù)量的儲存介質(zhì)上,該單獨的計算設備例如為在諸如因特網(wǎng)之類的分布式計算網(wǎng)絡中的服務器計算機。如應當意識到的,此類數(shù)據(jù)/信息可通過移動計算設備500、經(jīng)由無線電572或經(jīng)由分布式計算網(wǎng)絡來被訪問。類似地,這些數(shù)據(jù)/信息可根據(jù)公知的數(shù)據(jù)/信息傳送和儲存手段來容易地在計算設備之間傳送以儲存和使用,這些手段包括電子郵件和協(xié)作數(shù)據(jù)/信息共享系統(tǒng)。
圖6示出包括一個或多個客戶端設備的系統(tǒng)的架構(gòu)的一個實施例。包括電子文檔(包括文本)的內(nèi)容可以儲存在不同的通信信道或其他儲存類型中。例如,可使用目錄服務622、web門戶624、郵箱服務626、即時消息收發(fā)存貯628、和/或社交網(wǎng)絡站點630來儲存各種信息。作為一個示例,服務器620可通過網(wǎng)絡615(舉例來說,例如互聯(lián)網(wǎng)或其它網(wǎng)絡)進行通信。舉例來說,客戶端計算設備可以被實現(xiàn)為通用的計算設備602并且體現(xiàn)在個人計算機、平板計算設備604、和/或移動計算設備606(例如,智能電話)中,這些客戶端中的任何客戶端都可以使用來自存貯616的內(nèi)容。
以上參考方法、系統(tǒng)和計算機程序產(chǎn)品的框圖和/或操作說明例如描述了實施例??蛑兴⒚鞯母鞴δ?動作可以按不同于任何流程圖所示的次序出現(xiàn)。例如,取決于所涉及的功能/動作,連續(xù)示出的兩個框?qū)嶋H上可以基 本上同時執(zhí)行,或者這些框有時可以按相反的次序來執(zhí)行。
對本申請中提供的一個或多個實施例的描述和說明并非旨在以任何方式限制如所請求保護的本發(fā)明的范圍。在本申請中所提供的實施例、示例、和細節(jié)被認為足以傳達所有權(quán)并使得其他人能夠制造和使用所請求保護的發(fā)明的最佳模式。所請求保護的發(fā)明不應當被解釋為受限于在本申請中提供的任何實施例、示例、或細節(jié)。不管組合還是單獨地示出或描述,各個特征(結(jié)構(gòu)和方法兩者)旨在選擇性地被包括或省略以生成具有特定的一組特征的實施例。已經(jīng)提供了本申請的描述和說明,本領域技術(shù)人員可以想到落入本申請中體現(xiàn)的總體創(chuàng)造性概念的較寬泛方面的精神內(nèi)的、不脫離所請求保護的發(fā)明的較寬泛范圍的變型、修改、和替代的實施例。
應當意識到,各個實施例可以被實現(xiàn)為(1)計算機執(zhí)行的動作或在計算系統(tǒng)上運行的程序模塊的序列和/或被實現(xiàn)為(2)計算系統(tǒng)內(nèi)的互聯(lián)的機器邏輯電路或電路模塊。實施方式是取決于實施本發(fā)明的計算系統(tǒng)的性能要求的一種選擇。因此,包括相關算法的邏輯操作可以被廣泛地稱為操作、結(jié)構(gòu)裝置、動作或模塊。本領域技術(shù)人員將認識到,在不脫離如本文中所闡述的權(quán)利要求內(nèi)記載的本發(fā)明的精神和范圍的情況下,這些操作、結(jié)構(gòu)裝置、動作和模塊可以用軟件、固件、專用數(shù)字邏輯及其任意組合來實現(xiàn)。
盡管本發(fā)明已經(jīng)結(jié)合各個示例性實施例進行描述,但本領域普通技術(shù)人員將理解的是,在所附權(quán)利要求的范圍內(nèi),可以對這些實施例進行許多修改。因此,本發(fā)明的范圍并非旨在以任何方式由以上描述來限定,而是完全參考所附權(quán)利要求來確定。