利用附件選擇文本預測結果的制作方法【專利摘要】本申請涉及利用附件選擇文本預測結果。一種使用非鍵盤型附件在文本輸入字段中輸入文本的方法,包括選擇字符以便輸入到便攜式計算裝置呈現(xiàn)的文本字段中。便攜式計算裝置基于該字符確定文本建議是否可用。如果文本建議可用,便攜式計算裝置可以確定文本建議并將其發(fā)送到附件,附件進而可以在顯示器上顯示建議。操作附件的用戶可以選擇文本建議之一,明確拒絕文本建議,或者忽略文本建議。如果選擇了一個文本建議,附件可以發(fā)送所選擇的文本到便攜式計算裝置以便填充文本字段?!緦@f明】利用附件選擇文本預測結果[0001]相關申請的交叉參考[0002]本申請要求2011年3月14日提交的美國專利申請N0.13/047,561的優(yōu)先權,為所有目的將其全部內容并入此處作為參考?!?br>背景技術:
】[0003]消費者日益需要能夠執(zhí)行多個任務的裝置。近來智能電話和其他便攜式通信裝置的進步使得這些裝置盡可能有多種用途。[0004]在很多情況下,這些消費裝置必須與其他裝置結合工作來實現(xiàn)擴展的功能。這種其他裝置通常被稱為附件(accessories)。附件通常與消費裝置結合執(zhí)行某種專門功能。例如,具有文本輸入能力的消費裝置可以被連接到外部鍵盤附件來進行文本輸入,因為消費裝置的鍵盤可能不易操作,特別是不易被手有殘疾或手的使用受限制的人士操作。目前在市場上有很多用于這種消費裝置的附件在出售。[0005]通常難以使用提供比外部鍵盤更少的用戶可操作控件的附件(例如操縱桿)來輸入文本輸入。結合消費裝置所提供的屏上鍵盤使用這種附件來輸入文本輸入通??赡苁琴M時的并且使得用戶很沮喪?!?br/>發(fā)明內容】[0006]本發(fā)明的實施例總地來說涉及用于便攜式計算裝置的附件。更具體地,本發(fā)明的特定實施例提供一種用于使用與傳統(tǒng)鍵盤相比具有較少的用于文本輸入的控件的附件來以快速和有效的方式輸入文本的方法。[0007]在一些實施例中,附件可以被配置為與計算裝置一起工作。該附件可以包括顯示器和一個或多個用戶控件,諸如按鈕、跟蹤板等等。當用戶希望在便攜式計算裝置上的文本輸入字段中輸入文本時,可以操縱該附件的用戶控件來從便攜式計算裝置所呈現(xiàn)的屏上鍵盤選擇一個或多個字符。一旦用戶使用附件選擇了字符,便攜式計算裝置可以基于所選擇的字符提供一個或多個單詞建議。該一個或多個單詞建議可以被發(fā)送到附件并被顯示在附件的顯示器上。用戶然后可以從建議的單詞中選擇一個單詞,忽略建議并選擇下一個字符,或者明確拒絕建議。如果用戶選擇了建議的單詞中的一個,該單詞被發(fā)送到便攜式計算裝置并且隨后被顯示在便攜式計算裝置所呈現(xiàn)的文本字段中。[0008]本發(fā)明的其他實施例提供一種附件,該附件能夠被配置為從便攜式計算裝置接收包括一個或多個單詞建議的命令。在認證過程期間,該附件可以通知便攜式計算裝置它能夠接收文本建議,如果可用的話。對于便攜式計算裝置呈現(xiàn)的每個文本字段,便攜式計算裝置可以確定文本預測/建議特征是否可用于該文本輸入字段。如果文本預測/建議特征可用于特定的文本輸入字段,便攜式計算裝置可以向附件發(fā)送消息,向附件通知:無論何時該附件選擇了該文本輸入字段,文本預測/建議特征可用。此后,一旦用戶例如從便攜式計算裝置上呈現(xiàn)的屏上鍵盤選擇了字符,計算裝置可以基于選擇的字符建議一個或多個單詞并且向附件發(fā)送包括該一個或多個單詞的命令。附件可以顯示從便攜式計算裝置接收的單詞建議,并使用戶能夠從接收到的單詞中選擇一個單詞。一旦用戶選擇了單詞,附件可以向便攜式計算裝置發(fā)送包括所選擇單詞的另一個命令。[0009]下面的詳細描述以及附圖將提供對本發(fā)明的特性和優(yōu)點的更好理解?!緦@綀D】【附圖說明】[0010]圖1不出便攜式計算裝置(portablecomputingdevice,PCD)。[0011]圖2示出根據(jù)本發(fā)明實施例的附件。[0012]圖3示出根據(jù)本發(fā)明實施例的系統(tǒng)的框圖。[0013]圖4是示出根據(jù)本發(fā)明實施可以在附件和便攜式計算裝置之間交換的一些命令的表格。[0014]圖5是示出根據(jù)本發(fā)明實施例的PCD和附件的操作的功能圖。[0015]圖6A-6C是根據(jù)本發(fā)明實施例用于預測文本的過程的流程圖。[0016]圖7A和7B是根據(jù)本發(fā)明實施例用于使用附件輸入文本的過程的流程圖?!揪唧w實施方式】[0017]本發(fā)明的實施例總地來說涉及使用附件在便攜式計算裝置上輸入文本。更具體地,本發(fā)明的特定實施例提供一種用于使用除鍵盤之外的附件輸入文本的方法。這種附件的例子可以包括操縱桿、遙控器、和比傳統(tǒng)鍵盤具有更少的用于文本輸入的控件的附件。[0018]傳統(tǒng)上,有兩種將文本輸入到文本輸入字段中的基本方法。第一種方法包括使用可以被耦合到主裝置例如計算機、便攜式計算裝置等以便輸入文本的傳統(tǒng)鍵盤。在第二種方法中,主裝置可以顯示屏上鍵盤。用戶可以使用非鍵盤型裝置例如鼠標,一次一個字符地導航屏上鍵盤,來選擇字符以便輸入到文本字段中。這種文本輸入方法很麻煩和費時,特別是如果要輸入大量文本的話。[0019]在用戶具有某些妨礙其使用傳統(tǒng)鍵盤的殘疾的情況下,使用上述傳統(tǒng)過程的文本輸入過程可能特別有挑戰(zhàn)性。幫助有殘疾的人士輸入文本將是有用的。[0020]本發(fā)明的一些實施例提供一種用于將文本輸入到便攜式計算裝置所呈現(xiàn)的文本字段中的方法。在該方法中,當便攜式計算裝置呈現(xiàn)一個需要被填充的字段時,它可以向附件發(fā)送消息。該消息可以包括關于文本預測/建議特征是否可用于文本字段的指示。在一些實施例中,附件可以使便攜式計算裝置預先(例如,在認證期間)知道它是否能夠接收文本預測/建議。一旦用戶使用附件將一個字符或幾個字符的序列輸入到文本字段中,便攜式計算裝置可以基于輸入的字符確定一個或多個可能的文本建議,例如單詞。此后,便攜式計算裝置可以經(jīng)由一個命令發(fā)送該一個或多個文本建議到附件。在一些實施例中,附件可以在與附件相關聯(lián)的顯示器上顯示該一個或多個文本建議。用戶然后可以從文本建議中選擇一個文本建議。附件然后可以將該選擇的文本建議發(fā)送到便攜式計算裝置以便填充到文本字段中。[0021]在一些實施例中,取代顯示建議的文本,附件可以使接收到的文本建議聽覺化(audibilize)。用戶可以聽到文本建議,從這些文本建議中選擇一個文本建議,并將選擇的文本建議說回到附件中。然后附件可以將說出的文本建議轉換為相應的文本并將其發(fā)送到便攜式計算裝置以便填充文本字段。[0022]在另一些實施例中,用戶可以選擇忽略文本建議。在這種情況下,用戶可以繼續(xù)輸入所期望單詞的下一個字符,或者明確拒絕文本建議并向便攜式計算裝置發(fā)送拒絕文本建議的指示。當用戶拒絕從便攜式計算裝置接收的文本建議并輸入一個不同的單詞時,便攜式計算裝置可以使用該輸入作為學習過程的一部分以便將來更好地預測/建議文本。隨著時間的推移,便攜式計算裝置可以基于從各種文本字段的輸入收集的歷史數(shù)據(jù)而針對特定用戶定制化。[0023]圖1示出根據(jù)本發(fā)明實施例的便攜式計算裝置(P⑶)100。P⑶100可以包括屏幕101,按鈕102,和連接器103,以及其他特征。屏幕101可以是包括觸覺界面的觸摸屏。用戶可以經(jīng)由用戶接口(未示出)和屏幕101與P⑶100交互。按鈕102可以被用來將P⑶100返回其“原始(home)”狀態(tài)。連接器103可以是能夠連接到外部裝置/附件,例如充電器,塢站(dock)等的多針連接器。在一些實施例中,連接器103可以被配置成與附件上的相應連接器配合。在一些實施例中,PCD100可以包括膝上型計算機、智能電話、個人媒體播放器、便攜式數(shù)字助理等等。[0024]圖2示出根據(jù)本發(fā)明實施例的附件200。附件200可以包括用戶可操作控件輸入202和204,顯示器206,和連接器208。用戶可操作控件202和204可以被用來操縱能在P⑶100上顯示的光標的位置。用戶可操作控件202可以允許光標水平和垂直地移動以便將光標定位在顯示器101上的任何特定位置。在一些實施例中,用戶控件202也可以被用來導航在屏幕206上顯示的內容。用戶控件204可以是能被用來選擇PCD100或附件200上的特定項目的按鈕。顯示器206可以顯示信息,例如從便攜式計算裝置接收的單詞建議。連接器208可以是能連接到外部裝置例如另一個附件等的多針連接器。在一些實施例中,連接器208可以被配置為與便攜式計算裝置上的相應連接器相配合。附件200可以是具有將文本輸入到耦合到它的外部系統(tǒng)中的功能的任何附件。[0025]圖3是根據(jù)本發(fā)明實施例的系統(tǒng)300的框圖。系統(tǒng)300可以包括P⑶302(例如實現(xiàn)圖1的PCD100)和附件320(例如實現(xiàn)圖2的附件200)。[0026]本實施例中的PCD302可以提供能夠與應用等相關聯(lián)的文本輸入字段。例如,文本輸入字段可以是用戶觀看的網(wǎng)站的一部分,或者駐留在PCD302上的字處理應用的一部分。P⑶302可以包括處理器304,存儲裝置306,用戶接口308,和附件輸入/輸出(I/O)接口31LPCD302可以執(zhí)行文本預測程序,后者分析輸入到文本字段中的字符連同在該字符之前輸入的零個或多個字符/單詞,并基于該分析確定一個或多個潛在單詞。[0027]存儲裝置306例如可以利用盤、閃存、或其他非易失性存儲介質實現(xiàn)。在一些實施例中,存儲裝置306可以存儲詞典311,后者可以被PCD302使用來預測/建議單詞。存儲裝置306也可以存儲一個或多個應用程序310。每個應用程序可以提供用于執(zhí)行一個或多個任務的功能。例如,一個應用程序可以提供字處理能力等等,另一個應用程序可以提供瀏覽互聯(lián)網(wǎng)的能力等等。應用程序310中的一個或多個可以呈現(xiàn)文本字段,該文本字段可以被經(jīng)用戶接口308或附件從用戶接收的文本填充。[0028]存儲裝置306也可以存儲其他信息,諸如關于用戶的聯(lián)系人的信息(姓名、地址、電話號碼等等);安排的約會和事件;筆記;和/或其他個人信息。在另一些實施例中,存儲裝置306可以存儲一個或多個要被處理器304執(zhí)行的程序(例如視頻游戲程序,個人信息管理程序等等)。[0029]用戶接口308可以包括輸入控件,諸如觸摸板、觸摸屏、滾動輪、點擊輪、撥盤、按鈕、鍵盤、麥克風等等,以及輸出裝置,諸如視頻屏幕、指示燈、揚聲器、頭戴式耳機插孔等等,以及支持電子裝置(例如,數(shù)?;蚰?shù)轉換器、信號處理器等等)。用戶可以操作用戶接口308的各種輸入控件來調用P⑶302的功能,并且可以經(jīng)用戶接口308觀看和/或收聽來自PCD302的輸出。[0030]能被實現(xiàn)為一個或多個集成電路(例如傳統(tǒng)微處理器或微控制器)的處理器304可以控制P⑶302的操作。例如,響應于經(jīng)用戶接口308或附件接收的字符輸入,處理器304可以響應于字符輸入導航存儲在存儲裝置306中的詞典311,并基于接收到的字符確定一個或多個可能的單詞。處理器304可以執(zhí)行存儲在存儲裝置306中的應用程序310,并經(jīng)用戶接口308將執(zhí)行結果呈現(xiàn)給用戶。在一些實施例中,處理器302可以包括文本預測引擎316。文本預測引擎316可以分析文本字段中最近輸入的字符,并基于該字符確定一個或多個文本建議。在一些實施例中,除了最近輸入的字符之外,預測引擎316還可以分析在最近輸入的字符之前輸入的一個或多個字符和/或文本,來確定句子或部分單詞的上下文,并基于最近輸入的字符和上下文確定一個或多個潛在文本建議。在一些實施例中,如果附件拒絕建議的文本/單詞,預測引擎316可以從該拒絕中“學習”并使用該信息來改善其分析。[0031]附件I/O接口314可以允許P⑶302與各種附件通信。例如,附件I/O接口314可以支持到操縱桿、遙控器等的連接。在一個實施例中,附件I/o接口314包括與在蘋果公司制造并出售的iPod?產品上使用的連接器相對應的30針連接器。另選地或附加地,附件I/O接口314可以包括不同的連接器和/或無線接口(例如藍牙等等)。[0032]接口316可以允許P⑶302與網(wǎng)絡上的其他裝置通信,并與其他裝置交換信息。例如,在一些實施例中,網(wǎng)絡接口316可以被用來與外部數(shù)據(jù)庫連接,以便確定潛在的文本建議。在一個實施例中,詞典311可以周期性地與外部數(shù)據(jù)庫同步,以確保詞典311總包括最新的信息。在一些實施例中,接口316可以包括射頻(RF)收發(fā)器組件,用于訪問無線語音和/或數(shù)據(jù)網(wǎng)絡(例如使用蜂窩電話技術,高級數(shù)據(jù)網(wǎng)絡技術,諸如3G、4G、或EDGE、W1-Fi(IEEE802.11族標準),或其他移動通信技術,或其任何組合),GPS接收器組件,和/或其他組件。在一些實施例中,接口3`16可以提供有線網(wǎng)絡連接性(例如以太網(wǎng)),作為無線接口的附加或取代無線接口。接口316可以使用硬件(例如天線,調制器/解調器,編碼器/解碼器,和其他模擬和/或數(shù)字信號處理電路)和軟件組件的組合來實現(xiàn)。[0033]附件320包括控制器324,用戶控件322,PCDI/O接口326,存儲器328,和輸出裝置330??刂破?24可以包括例如執(zhí)行程序代碼來執(zhí)行各種功能諸如數(shù)字音頻解碼,模擬或數(shù)字音頻和/或視頻處理等的微處理器或微控制器。用戶控件322可以包括輸入控件諸如觸摸板、觸摸屏、卷動輪、點擊輪、撥盤、按鈕、鍵盤、麥克風、操縱桿、按鈕等等。用戶可以操作用戶控件322來調用附件320的功能。另外,在一些實施例中,用戶可以經(jīng)用戶控件322操作PCD302。在一些實施例中,用戶控件322可以位于遠離附件的地方。例如,用戶控件322可以實現(xiàn)在可通信地耦合到附件320并且可以被用來控制附件320執(zhí)行的各種功能的遙控裝置(未示出)中。P⑶I/O接口326可以允許附件320與P⑶302(或另一個P⑶)通?目。[0034]可以利用易失性和/或非易失性存儲器實現(xiàn)的存儲器328提供對包括從P⑶302獲得的信息的各種信息的存儲。例如,在一些實施例中,附件320可以從PCD302接收潛在文本建議的列表。該信息的任何部分或全部可以被存儲在存儲器328中。附件320從PCD302獲得的信息的高速緩存是可選的;在使用的情況下,高速緩存可以通過避免從PCD302重復請求信息來幫助加速附件320的性能。[0035]可以例如實現(xiàn)為一個或多個集成電路的輸出裝置330提供輸出各種類型信息的能力。例如,輸出裝置330可以包括顯示屏或用于外部顯示屏的驅動器電路和連接器,由此使得文本、視頻和/或靜態(tài)圖像能夠呈現(xiàn)給用戶。附加地或者作為替代,輸出裝置330也可以包括一個或多個揚聲器或者用于外部揚聲器的驅動器電路和連接器,由此使得音頻能夠呈現(xiàn)給用戶。在一個實施例中,控制器324可以經(jīng)P⑶I/O接口326從P⑶302接收一個或多個文本建議,并且可以將經(jīng)過或未經(jīng)過進一步處理的文本建議提供給輸出裝置330;輸出裝置330可以對接收到的文本建議進行適當轉換以便呈現(xiàn)給用戶。在一些實施例中,用戶可以經(jīng)輸出裝置330觀看和/或收聽來自附件320的輸出。[0036]附件320可以是能夠提供用于選擇P⑶302上的字符的用戶控件和將從P⑶302接收的單詞列表呈現(xiàn)給用戶的任何附件。實現(xiàn)附件320的附件的例子例如包括操縱桿、遙控器等等。在一個實施例中,P⑶I/O接口326包括與在蘋果公司制造并出售的iPhone?產品上使用的連接器相匹配的30針連接器。P⑶I/O接口326也可以包括其他類型的連接器,例如通用串行總線(USB)或火線連接器,和/或無線接口(例如藍牙等等)。[0037]可以理解,此處描述的系統(tǒng)配置和組件是說明性的,可以做出變形和修改。P⑶和/或附件可以具有這里沒有具體描述的其他能力。[0038]另外,盡管此處參考特定方框描述了P⑶和附件,應該理解這些方框被定義來方便描述而不旨在意味著組成部件的特定物理安排。另外,這些方框不需要對應于物理上不同的組件。這些方框可以被配置為例如通過對處理器編程或提供適當?shù)目刂齐娐穪韴?zhí)行各種操作,并且取決于如何獲得初始配置,各種方框可以是也可以不是可重新配置的。本發(fā)明的實施例可以以多種裝置實現(xiàn),包括利用電路和軟件的任何組合實現(xiàn)的電子裝置。[0039]PCD302的附件I/O接口314和附件320的PCDI/O接口326允許PCD302連接至Ij附件320并隨后從附件320斷開連接。如這里所使用的,每當附件I/O接口314與P⑶I/O接口326之間的通信信道打開時,P⑶302和附件320是“連接”的,而每當通信信道關閉時,P⑶302和附件320是“斷開連接”的。連接可以通過物理附連(例如P⑶302的各匹配連接器與附件320之間)、間接連接例如電纜、或通過建立無線通信信道來實現(xiàn)。類似地,斷開連接可以通過物理分離、斷開電纜、對附件320或PCD302斷電、或關閉無線通信信道來實現(xiàn)。因此,可以使用多種通信信道,包括有線信道,諸如USB、火線、或通用異步接收器/發(fā)送器(“UART”)、或無線信道例如藍牙。在一些實施例中,計算裝置與附件之間的多個通信信道可以同時打開,或者計算裝置可以被連接到多個附件,每個附件使用一個不同的通信信道。[0040]不管具體通信信道如何,只要P⑶302和附件320互相連接,裝置就可以通過根據(jù)協(xié)議交換命令和數(shù)據(jù)來通信。協(xié)議定義用于在PCD302與附件320之間發(fā)送消息的格式。例如,協(xié)議可以規(guī)定每條消息在具有報頭和可選的有效負荷的數(shù)據(jù)包中發(fā)送。報頭提供基本信息(例如開始指示符,數(shù)據(jù)包長度,和要由接收方處理的命令),而有效負荷提供與命令相關聯(lián)的任何數(shù)據(jù);相關聯(lián)數(shù)據(jù)的量對于不同命令可以不同,一些命令可以允許可變長度有效負荷。在各種實施例中,協(xié)議可以定義特定命令來指明要由接收方采取的動作;通知任務的完成,狀態(tài)的改變,或錯誤的發(fā)生;和/或識別相關聯(lián)數(shù)據(jù)的性質。在一些實施例中,命令可以被定義成使得特定命令僅在一個方向上有效。數(shù)據(jù)包也可以包括本領域已知的檢錯或糾錯碼。[0041]在一些實施例中,被設計為彼此可互操作的每個附件320和每個P⑶302至少支持一個“通用”隱語(lingo),后者包括對所有這些裝置共用的命令。通用隱語可以包括使得PCD和附件能夠向彼此識別它們本身并且提供關于它們各自能力的總體信息的命令。通用隱語也可以包括PCD可以用來驗證附件的聲稱的身份和能力(或反之亦然)的認證命令,并且如果認證不成功則附件(或PCD)可以被阻止調用特定命令或隱語。[0042]在識別過程期間,附件例如可以使用通用隱語中的命令通知P⑶它可以接受對于文本字段的單詞建議。如果附件能夠接受文本建議,則PCD可以打開這個特征使得每當在PCD上遇到文本字段,它可以向附件發(fā)送一個通知,向附件通知文本預測/建議特征可用于該文本輸入字段。[0043]圖4示出根據(jù)本發(fā)明實施例的表格400,列出可以在主裝置與附件之間交換的命令。這些命令可以被并入遠程隱語(或其他命令組),由此允許附件通知主裝置它能夠接受文本建議,以及主裝置發(fā)送文本建議到附件。[0044]TextlnputSuggestion(文本輸入建議)命令可以由PO)發(fā)送到附件。有效負荷可以包括PCD基于文本字段中輸入的最后一個字符和/或最近的字符確定的一個或多個文本建議。[0045]附件可以用AcceptTextlnputSuggesstion(接受文本輸入建議)命令或DeclineTextlnputSuggestion(拒絕文本輸入建議)命令來響應。AcceptTextlnputSuggesstion命令的有效負荷可以包括附件從經(jīng)TextlnputSuggestion命令接收的一個或多個文本建議中選擇的文本建議。在一些實施例中,在TextlnputSuggestion命令包括單個文本建議的情況下,AcceptTextlnputSuggesstion命令可以根本不具有有效負荷。在這種情況下,僅僅發(fā)送AcceptTextlnputSuggesstion命令可以用作對經(jīng)TextlnputSuggestion命令接收的單個文本建議的接受。[0046]DeclineTextlnputSuggestion命令可以被附件發(fā)送到PMD作為對TextlnputSuggestion命令的替代響應。DeclineTextlnputSuggestion命令可以不具有任何有效負荷。通過發(fā)送該命令,附件可以明確拒絕PCD提供的文本建議。[0047]在一些實施例中,附件可以既不發(fā)送AcceptTextlnputSuggesstion命令也不發(fā)送DeclineTextlnputSuggestion命令來響應于TextlnputSuggestion命令。相反,附件可以發(fā)送信號到PCD,指示選擇用于填充文本字段的下一個字符。該響應可以用作對PCD提供的文本建議的事實拒絕。在一些實施例中,該響應與發(fā)送DeclineTextlnputSuggestion命令之間的主要區(qū)別是,發(fā)送DeclineTextlnputSuggestion命令通知PO)文本建議是不正確的,而不是僅僅被用戶忽略。PCD可以使用該信息來改善其預測引擎以便將來提供更相關的預測。[0048]CursorMove(光標移到)命令可以被附件發(fā)送到PMD以便沿PMD上顯示的屏上鍵盤移動光標。CursorMove命令的有效負荷可以是移動方向。例如,光標可以針對其當前位置向上、向下、向左、或向右移動。在一些實施例中,CursorMove命令可以被用來將光標置于屏上鍵盤上的期望字符之上。[0049]CursorSelect(光標選擇)命令可以被附件發(fā)送到PMD以便選擇屏上鍵盤上的字符。例如,在使用CursorMove命令將光標置于一個字符之上后,附件可以發(fā)送CursorSelect命令來選擇該字符。在一些實施例中,CursorSelect命令可以不具有任何有效負荷。通過發(fā)送CursorSelect命令,附件通知PMD選擇被光標指向/突出顯示的字符。上面描述的字符選擇命令可以使用與用來傳遞文本建議命令相同的協(xié)議/接口來傳遞。另夕卜,應該理解CursorMove命令和CursorSelect命令是示例性的,本領域技術人員將理解,可以使用用于移動光標和選擇字符的許多其他命令/技術。例如,在一些實施例中,用戶可以將字符說到附件中。附件可以分析用戶的音頻輸入并確定字符。然后附件可以發(fā)送命令到PMD,例如InputCharacter(輸入字符)命令,字符作為該命令的有效負荷。[0050]可以理解,此處描述的命令是說明性的,可以做出變形和修改。另外,也可以提供其他命令。在一些實施例中,附件可以在識別或認證過程期間發(fā)送命令到P⑶以向P⑶指示,如果文本建議可用的話,附件能夠接受文本建議。響應于此,PCD可以設置配置標記(或打開此特征)以允許發(fā)送文本建議到附件。PCD的默認選項可以是關閉該特征。[0051]如上所述,本發(fā)明的特定實施例提供用于使用不具有常規(guī)鍵盤提供的功能的附件來輸入文本的方法。圖5是根據(jù)本發(fā)明實施例示出文本預測/建議特征的功能圖。[0052]圖5示出PCD500(與圖1的PCDlOO相似)和附件520(與圖2的附件200相似)。圖5示出文本被寫并被顯示在P⑶500的顯示器506上。在一個實施例中,用戶可以操縱附件520的方向控件522以將光標508定位在P⑶500的屏上鍵盤502上的字符之上。在用戶定位光標508后,用戶可以按壓附件520上的按鈕524來選擇字符。一旦被選擇,該字符然后可以顯示在P⑶500的顯示器506上。當P⑶500基于最后輸入的字符或字符序列確定文本建議可用,P⑶500可以產生文本預測框504并將其顯示在顯示器506上。文本預測框504可以包括一個或多個文本預測/建議。同時,PQ3500可以例如使用TextlnputSuggestion命令發(fā)送一個或多個文本預測/建議到附件520。附件520可以在與附件520相關聯(lián)的顯示器526上顯示接收的文本建議。此時,附件520可以改變其操作模式,并且,取代在P⑶500上的文本字段中繼續(xù)進一步文本輸入,附件520可以允許用戶選擇接收到的文本建議之一。在一些實施例中,用戶可以使用用戶控件522來導航顯示器526中顯示的列表并按壓按鈕524來選擇文本建議之一。選擇的文本建議例如可以使用AcceptTextlnputSuggesstion命令被發(fā)送到P⑶500。選擇的文本/單詞然后可以顯示在顯示器506上。此后,附件520可以再次改變其模式以允許從屏上鍵盤502選擇字符。[0053]如果用戶想要忽略從P⑶500接收的文本建議,用戶可以按壓按鈕528或附件上為此目的指定的任何其他按鈕。按壓按鈕528可以將附件轉回到通過從屏上鍵盤502選擇另一個字符來繼續(xù)在文本字段中進行文本輸入。在一些實施例中,用戶也可以使用按鈕524或528之一或附件制造商指定的任何其他按鈕/機制來明確拒絕從PCD500接收到的文本建議。在一些實施例中,如果文本建議被垂直列在顯示器526上,按壓左或右控件522可以通知:用戶想要忽略文本建議。[0054]應該理解,圖5提供的圖示描述操縱附件上的用戶控件來從屏上鍵盤選擇字符并且選擇P⑶提供的文本建議。在一些實施例中,用戶可以經(jīng)耦合到P⑶的音頻輸入裝置輸入字符到P⑶中。一旦P⑶接收到音頻輸入,它可以將音頻轉換為文本并在其顯示器上顯示字符。基于字符,PCD可以確定一個或多個文本建議并將其提供給附件。附件可以使接收到的文本建議聽覺化,以便呈現(xiàn)給用戶。用戶可以通過提供音頻輸入到附件來接受、拒絕或忽略文本建議,附件進而可以解釋音頻輸入并發(fā)送適當命令到P⑶。在一些實施例中,取代提供音頻輸入到PCD來選擇字符,用戶可以提供音頻輸入到附件,附件可以解釋音頻并發(fā)送命令來選擇要在顯示器上顯示的適當字符。[0055]在一些實施例中,用戶可以說出整個單詞或單詞的一部分。P⑶可以接收該音頻輸入并且基于接收到的音頻信息確定用戶說出的單詞。基于該確定,PCD可以確定一個或多個文本建議并將其發(fā)送到附件。然后用戶可以使用上述技術中的任何技術來接受、拒絕、或忽略文本建議。[0056]如上面討論的,P⑶可以接收字符輸入并基于該字符或在該字符之前輸入的字符序列確定一個或多個單詞。圖6A-6C是用于根據(jù)本發(fā)明實施例預測文本的過程600的流程圖。過程600例如可以由圖2的P⑶200執(zhí)行。[0057]作為過程600的一部分,P⑶可以從附件接收輸入,該輸入指明已經(jīng)選擇了一個字符用來填充當前激活的文本輸入字段(框602)。PCD可以確定所選擇的字符是相關的字符序列(例如一個單詞)的一部分還是一個單獨的字符(框604)。在一些實施例中,P⑶的預測引擎可以做出該確定。在一些實施例中,預測引擎可以基于在當前字符之前輸入的字符或字符序列確定句子的上下文,來確定當前輸入的字符是單獨字符還是單詞的一部分。如果確定該字符是單獨字符而不是單詞的一部分,則僅有該字符被PCD顯示(框606)并且過程返回到框602。如果PCD確定該字符是相關的字符序列的一部分,則PCD可以基于在該字符之前輸入的字符或字符序列確定一個或多個文本建議,例如單詞(框608)?;谧址蜃址蛄蓄A測文本的現(xiàn)有算法可以被用來確定文本建議。一旦確定,該一個或多個文本建議可以被傳遞給附件(框610)。此后,P⑶可以接收來自附件的輸入(框612)。如上所述,來自附件的輸入可以包括以下三個響應之一:(a)附件接受來自所接收到的文本建議的文本建議并且發(fā)送選擇的文本建議到P⑶;(b)附件明確拒絕文本建議;或者(C)附件簡單地忽略文本建議并為文本字段選擇下一個字符。因此,在PCD接收到來自附件的響應之后,PCD可以確定該響應是否指示用戶已經(jīng)接受文本建議之一,如果是,該響應是否包括選擇的文本建議(框614)。如圖6B所示,如果來自附件的響應包括文本建議之一,P⑶可以顯示選擇的文本建議(框616)并且過程返回到框602。[0058]如圖6C中所示,如果來自附件的響應不包括來自所述一個或多個文本建議的文本建議,PCD可以確定來自附件的響應是否表明用戶拒絕了建議(框618)。如果來自附件的響應表明拒絕了文本建議,PCD可以提供該信息到文本預測引擎供將來使用(框620)。如果確定用戶沒有明確拒絕文本建議,PCD可以確定從附件接收的響應是否包括另一個字符(框622),如果是,該字符顯示在P⑶上(框624),并且過程返回到框604。[0059]應該理解,此處描述的過程600是說明性的,并且可以做出變形和修改。被描述為按順序的動作可以被并行執(zhí)行,動作的順序可以改變,以及動作可以被修改或組合。例如,在從附件接收到字符選擇之前,PCD可以通知附件,文本預測特征可用于特定的文本輸入字段。這可以使得附件能夠預期文本建議并由此調整其操作模式。[0060]圖7A和7B是根據(jù)本發(fā)明實施例使用附件輸入文本的過程700的流程圖。過程700例如可以通過圖3的附件320執(zhí)行。[0061]使用附件的用戶控件的用戶可以發(fā)送消息到P⑶,指示選擇由P⑶呈現(xiàn)的文本輸入字段框(702)。此后,附件可以從PCD接收指示文本預測/建議特征可用于文本字段的消息(框704)。附件然后可以接收用戶輸入,指示選擇要輸入到文本輸入字段的字符(框706)。附件然后可以發(fā)送信號到PCD,指示選擇用于填充文本字段的字符(框708)。接著,附件可以從PCD接收消息,包括一個或多個文本建議,例如基于所選擇字符的單詞或相關的字符序列(框710)。一旦附件接收到文本建議,它可以將接收到的文本建議呈現(xiàn)給用戶,例如呈現(xiàn)在顯示器上(框712)。此后附件可以接收用戶輸入(框714)。[0062]如圖7B所示,附件可以分析用戶輸入來確定要執(zhí)行的動作(框716)。在一些實施例中,附件可以執(zhí)行三個動作之一。附件可以從接收到的文本建議選擇一個文本建議,并將選擇的文本建議發(fā)送到P⑶(框718)?;蛘撸郊梢园l(fā)送消息到P⑶,拒絕文本建議(720),后面跟隨指示選擇下一個字符的信號,或者附件可以忽略文本建議并且作為替代發(fā)送一個信號,指示選擇用于輸入到文本字段的下一個字符(722)。應該理解,圖7示出的三個選項不是可用于附件的僅有的選項。附件不限于這三個示出的響應,本領域技術人員將理解,附件可以被編程為在框710接收到消息之后執(zhí)行其他動作。例如,在一些實施例中,附件可以響應于接收到的包括文本建議的消息使接收到的文本建議聽覺化。[0063]應該理解,此處描述的過程700是說明性的,可以做出變形和修改。被描述為按順序的動作可以被并行執(zhí)行,動作的順序可以改變,動作可以被修改或組合。例如,在接收到文本建議后,附件可以在與附件相關聯(lián)的顯示器上顯示文本建議。在一些實施例中,一旦附件接收到文本建議,附件可以改變其操作模式,使得附件可以禁止向PCD發(fā)送信號指示選擇下一個字符。相反,附件可以僅允許用戶例如通過使用附件的用戶控件來導航接收到的文本建議,并對接收到的文本建議執(zhí)行動作,例如接受或拒絕。一旦用戶已經(jīng)對接收到的文本建議執(zhí)行了動作,附件可以轉回到其先前的操作模式,并允許例如從PCD的屏上鍵盤選擇下一個字符。[0064]盡管已經(jīng)關于特定實施例描述了本發(fā)明,本領域技術人員將理解,可以做出各種修改。例如,在認證過程期間附件可以響應于來自P⑶的詢問向P⑶通知其能力。在一些實施例中,附件可以通知PCD,附件能夠接受文本建議,如果可用的話。此處描述的特定命令和事件的順序是說明性的,可以使用命令和事件順序的其他組合。[0065]另外,可以使用專用組件和/或可編程處理器和/或其他可編程裝置的任何組合來實現(xiàn)本發(fā)明的實施例。盡管上面描述的實施例可能參考了特定硬件和軟件組件,本領域技術人員將理解,也可以使用硬件和/或軟件組件的不同組合,描述為用硬件實現(xiàn)的特定操作也可以用軟件實現(xiàn),或反之亦然。[0066]包含本發(fā)明各種特征的計算機程序可以被編碼在各種非瞬時性計算機可讀介質上以便存儲和/或傳輸;適當?shù)拿襟w包括磁盤或磁帶,光存儲介質諸如光盤(CD)或DVD(數(shù)字多用盤),閃存等等。用程序代碼編碼的計算機可讀介質可以利用兼容裝置封裝,或者從其他裝置單獨提供(例如經(jīng)互聯(lián)網(wǎng)下載)。[0067]因此,盡管已經(jīng)關于特定實施例描述了本發(fā)明,應該理解,本發(fā)明旨在涵蓋落入后面權利要求范圍的所有修改和等同物。【權利要求】1.一種使用可通信地耦合到便攜式計算裝置的附件的方法,該方法包括由附件執(zhí)行下述步驟:向便攜式計算裝置傳遞第一信號,該第一信號指示選擇文本輸入字段;從便攜式計算裝置接收文本預測特征可用于文本輸入字段的指示;向便攜式計算裝置發(fā)送第二信號,該第二信號指示選擇用于文本輸入字段的字符;從便攜式計算裝置接收至少部分地基于所選擇字符而選擇的一個或多個文本建議;和向便攜式計算裝置發(fā)送第三信號,該第三信號指示從一個或多個接收到的文本建議選擇文本建議。2.如權利要求1所述的方法,還包括:在附件的顯示器上顯示所述一個或多個接收到的文本建議。3.如權利要求1所述的方法,還包括:在接收到所述一個或多個文本建議之后,改變操作模式以允許從所述一個或多個文本建議選擇文本建議。4.如權利要求1所述的方法,還包括:使用音頻輸出單元使所述一個或多個接收到的文本建議聽覺化。5.如權利要求1所述的方法,其中還包括:在用戶輸出裝置上呈現(xiàn)述一個或多個接收到的文本建議;和經(jīng)輸入裝置接收用戶輸入,該用戶輸入指示從一個或多個接收到的單詞選擇文本建議,其中第三信號至少部分地基于接收到的用戶輸入。6.如權利要求5所述的方法,其中輸入裝置包括語音識別模塊。7.如權利要求1所述的方法,其中所述一個或多個文本建議包括單詞。8.一種使用可通信地與附件耦合的便攜式計算裝置的方法,該方法包括由便攜式計算裝置執(zhí)行下述步驟:從附件接收第一輸入,該第一輸入指示選擇文本輸入字段從附件接收第二輸入,該第二輸入指示選擇字符;分析該字符以確定該字符是否為單詞的一部分;如果該字符是單詞的一部分則基于該字符確定一個或多個建議的單詞;將所述一個或多個建議的單詞傳遞到附件;從附件接收第三輸入,該第三輸入指示從所述一個或多個建議的單詞選擇一個單詞;和用所選擇的單詞填充文本輸入字段。9.如權利要求8所述的方法,其中傳遞所述一個或多個建議的單詞包括向附件發(fā)送命令,該命令包括所述一個或多個單詞。10.一種附件,包括:控制器;耦合到控制器的顯示器;耦合到控制器并被配置為與便攜式計算裝置通信的接口;和耦合到控制器的一個或多個用戶輸入控件,其中控制器被配置為:經(jīng)接口向便攜式計算裝置傳遞第一信號,該第一信號指示選擇文本輸入字段;從便攜式計算裝置接收文本預測特征可用于文本輸入字段的指示;向便攜式計算裝置發(fā)送第二信號,該第二信號指示選擇用于文本輸入字段的字符;基于所選擇的字符從便攜式計算裝置接收一個或多個文本建議;在顯示器上顯示所述一個或多個文本選擇;經(jīng)所述一個或多個用戶輸入控件接收指示從所述一個或多個文本建議中選擇文本建議的輸入;和向便攜式計算裝置發(fā)送第三信號,該第三信號指示選擇文本建議。11.如權利要求10所述的附件,其中所述控制器還被配置為經(jīng)音頻輸出裝置輸出所述一個或多個文本建議。12.如權利要求10所述的附件,其中所述一個或多個用戶輸入控件包括操縱桿。13.如權利要求10所述的附件,其中所述指示選擇文本建議的輸入由附件的用戶提供。14.一種非瞬時計算機可讀介質,包括當被附件內的控制器執(zhí)行時使控制器執(zhí)行下述方法的指令,該方法包括:向便攜式計算裝置發(fā)送第一命令,通知便攜式計算裝置附件被配置為接受文本建議;向便攜式計算裝置發(fā)送第二命令,該第二命令向便攜式計算裝置指示選擇便攜式計算裝置呈現(xiàn)的文本字段;從便攜式計算裝置接收第三命令,該第三命令指示文本建議特征可用于文本字段;向便攜式計算裝置發(fā)送第四命令,該第四命令指示選擇用于輸入到文本字段中的字符;從便攜式計算裝置接收第五命令,該第五命令包括一個或多個單詞的列表,該一個或多個單詞是基于所選擇字符和/或在所選擇字符之前輸入的字符序列確定的;和向便攜式計算裝置發(fā)送第六命令,該第六命令包括從所述一個或多個單詞的列表中選擇的單詞。15.如權利要求14所述的計算機可讀介質,其中所述方法還包括顯示所述一個或多個單詞的列表。16.如權利要求14所述的計算機可讀介質,其中所述方法還包括在接收到第五命令之后,改變附件的操作模式以僅允許從所述一個或多個單詞的列表選擇單詞。17.如權利要求14所述的計算機可讀介質,其中在發(fā)送第六命令之前,接收指示從所述一個或多個單詞的列表選擇單詞的輸入。18.一種便攜式計算裝置,包括:處理器;耦合到處理器的存儲器;和配置為與附件通信的附件接口,其中與附件接口相配合的處理器被配置為:從附件接收第一輸入,該第一輸入指示選擇文本輸入字段;向附件發(fā)送通知,該通知指示文本預測特征可用于文本輸入字段;從附件接收第二輸入,該第二輸入指示選擇字符;至少部分地基于該字符確定一個或多個單詞;將所述一個或多個單詞傳遞到附件;從附件接收第三輸入,該第三輸入指示從所述一個或多個單詞選擇單詞;和用所選擇的單詞填充文本輸入字段。19.如權利要求18所述的便攜式計算裝置,其中處理器被進一步配置為從附件接收消息,該消息指示附件被啟用來接收文本建議。20.如權利要求18所述的便攜式計算裝置,其中處理器被進一步配置為經(jīng)耦合到便攜式計算裝置的語音識別模塊接收第二輸入。21.如權利要求18所述的便攜式計算裝置,其中處理器被進一步配置為分析在所選擇字符之前輸入的一個或多個字符來確`定上下文并基于上下文確定所述一個或多個單詞。【文檔編號】G06F3/023GK103620528SQ201280007288【公開日】2014年3月5日申請日期:2012年3月9日優(yōu)先權日:2011年3月14日【發(fā)明者】E·W·福奧申請人:蘋果公司