CN105183179A - 消息中的预制回答 - Google Patents

消息中的预制回答 Download PDF

Info

Publication number
CN105183179A
CN105183179A CN201510291041.5A CN201510291041A CN105183179A CN 105183179 A CN105183179 A CN 105183179A CN 201510291041 A CN201510291041 A CN 201510291041A CN 105183179 A CN105183179 A CN 105183179A
Authority
CN
China
Prior art keywords
message
characters
user
display
suggestion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510291041.5A
Other languages
English (en)
Inventor
L·Y·杨
G·帕加洛
L·B·赛哈恩
J·伍德
R·加西亚
J·R·贝勒加达
T·S·乔恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computer Inc filed Critical Apple Computer Inc
Priority to CN202010883767.9A priority Critical patent/CN112083815A/zh
Publication of CN105183179A publication Critical patent/CN105183179A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3469Fuel consumption; Energy use; Emission aspects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3697Output of additional, non-guidance related information, e.g. low fuel level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

本发明的各实施方式总体上涉及消息中的预制回答。具体地,在具有触敏显示器的电子设备处,显示消息记录,其中消息记录包括来自至少第一用户的至少一个消息。至少部分地基于至少一个消息,确定多个建议的一个或多个字符。在触敏显示器上,显示多个建议的一个或多个字符。检测触敏显示器上的输入。确定输入是否表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符。在消息记录中显示多个建议的一个或多个字符中所选择的一个建议的一个或多个字符。向第一用户发送所选择的一个或多个字符。

Description

消息中的预制回答
相关申请的交叉引用
本申请要求2014年5月30日提交的“CannedAnswersinMessages”的美国临时专利申请序列号62/005,958;和2015年3月7日提交的“CannedAnswersinMessages”的美国临时专利申请序列号62/129,790的优先权的权益。这些申请的内容通过引用方式整体并入于此。
本申请涉及以下共同未决的临时申请:2014年5月30日提交的“Device,Method,andGraphicalUserInterfaceforaPredictiveKeyboard”的美国专利申请序列号62/005,837;2014年9月5日提交的“Device,Method,andGraphicalUserInterfaceforaPredictiveKeyboard”的美国专利申请序列号62/046,876;2014年9月30日提交的“Device,Method,andGraphicalUserInterfaceforaPredictiveKeyboard”的美国专利申请序列号14/502,711;2014年5月30日提交的“Entropy-GuidedTextPredictionUsingCombinedWordandCharacterN-gramLanguageModels”的美国专利申请序列号62/005,825;2014年5月30日提交的“PredictiveTextInput”的美国专利申请序列号62/006,010;以及2014年5月30日提交的“TextPredictionUsingCombinedWordN-gramandUnigramLanguageModels”的美国专利申请序列号62/005,942。这些申请的内容通过引用方式整体并入于此。
技术领域
本公开总体上涉及消息传输,并且更具体地涉及用于建议用户可以选择以对传入消息做出响应的预测性回答的技术。
背景技术
便携式电子设备(特别是蜂窝电话)是受欢迎的用于基于消息的通信的设备。示例性基于消息的通信包括短消息服务(SMS)以及由加利福尼亚州、库比蒂诺的Apple公司提供的iMessage技术。然而,便携式电子设备小的外形规格给出了用户接口挑战。一个永久性挑战产生于这些设备通常采用的尺寸减少的键盘,其对于打字来说是次优的。这一困难被赋予更小设备以甚至更少的用于键盘放置的空间的电子封装技术的不断改进所恶化。用于预测用户对传入消息的可能响应的技术——由此减少对手动用户输入的需要——因而是期望的。
发明内容
在一些实施例中,用于对消息做出响应的方法包括:在具有触敏显示器的电子设备处:显示消息记录,消息记录包括来自至少第一用户的至少一个消息;至少部分地基于至少一个消息,确定多个建议的一个或多个字符;在触敏显示器上,显示多个建议的一个或多个字符;检测触敏显示器上的输入;确定输入是否表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符;以及依照确定输入表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符,在消息记录中显示多个建议的一个或多个字符中所选择的一个建议的一个或多个字符。
在一些实施例中,用于对消息做出响应的方法包括:在具有触敏显示器的电子设备处:在显示器的第一区域中,显示消息记录,消息记录包括来自至少第一用户的至少一个消息;在显示器的第二区域中,显示虚拟键盘,虚拟键盘包括若干字符键;以及在显示器的第三区域中,显示多个建议的一个或多个字符,至少部分地基于从第一用户接收的至少一个消息的内容来确定多个建议的字符。
在一些实施例中,用于对消息做出响应的方法包括:在具有触敏显示器的电子设备处:显示消息记录,消息记录包括来自至少第一用户的至少一个消息;至少部分地基于至少一个消息,确定多个建议的一个或多个字符;以及在触敏显示器上的第一区域中,显示多个建议的一个或多个字符中的第一建议的一个或多个字符,其中第一区域是与消息记录的背景视觉上区分开来的邻接区域。
在一些实施例中,用于对消息做出响应的方法包括:在具有触敏显示器的电子设备处:显示消息记录,消息记录包括来自至少第一用户的至少一个消息;至少部分地基于至少一个消息,确定多个建议的一个或多个字符;以及在消息记录的底部,显示表示多个建议的一个或多个字符中的第一建议的一个或多个字符的第一启示。
附图说明
图1A是图示依照一些示例的具有触敏显示器的便携式多功能设备的框图。
图1B是图示依照一些实施例的用于事件处理的示例性部件的框图。
图2图示依照一些实施例的具有触摸屏的便携式多功能设备。
图3是依照一些实施例的具有显示器和触敏表面的示例性多功能设备的框图。
图4A和图4B图示依照一些实施例的用于便携式多功能设备上的应用的菜单的示例性用户接口。
图5A至图5J图示用于使用预测性回答对消息做出响应的示例性用户接口。
图6A至图6E图示示例性类型的预测性回答。
图7是图示用于在电子设备之间转变的处理的流程图。
图8是图示用于在电子设备之间转变的处理的流程图。
图9是图示用于在电子设备之间转变的处理的流程图。
图10是图示用于在电子设备之间转变的处理的流程图。
图11至图15是依照一些实施例的电子设备的功能框图。
具体实施方式
在对本公开和实施例的以下描述中,参照其中通过图示的方式示出可被实践的具体实施例的附图。要理解的是,可以实践其它实施例和示例,并且可以做出改变,而不脱离本公开的范围。
下文中,图1A至图1B、图2和图3提供对用于执行本文中描述的技术的示例性设备的描述。为简洁起见,这些技术可被称为用于对用户消息做出响应的“预测性回答”。图4A至图4B、图5A至图5J和图6A至图6E图示用于调用预测性回答的示例性用户接口。图中的用户接口还用于图示下面描述的处理,包括图7至图10中的那些处理。
虽然以下描述使用术语第一、第二等来描述各种元件,但是这些元件不应该受术语的限制。这些术语仅用于区分不同的元件。例如,第一接触可被称为第二接触,并且相似地,第二接触可被称为第一接触,而不脱离本发明的范围。第一接触和第二接触两者皆是接触,但是它们不是相同的接触。
在本文中各种所述实施例的描述中使用的术语仅用于描述特定实施例的目的,并且不旨在于进行限制。如在各种所述实施例的描述以及所附权利要求中使用的,单数形式“一”、“一个”和“该”旨在于也包括复数形式,除非上下文另外明确指出。还将理解的是,如本文中使用的术语“和/或”指的是并且包含关联列出项中的一个或多个关联列出项的任何和所有可能组合。将进一步理解的是,术语“包括”、“包含”和/或“含有”在本说明中使用时指定所陈述的特征、整数、步骤、操作、元件和/或部件的存在,但是不排除存在或添加一个或多个其它特征、整数、步骤、操作、元件、部件、和/或它们的组。
术语“如果”根据上下文可被解释为意指“当……时”或者“在……时”或者“响应于确定”或者“响应于检测到”。相似地,短语“如果确定”或者“如果检测到[所陈述的条件或事件]”根据上下文可被解释为意指“在确定……时”或者“响应于确定”或者“在检测到[所陈述的条件或事件]时”或者“响应于检测到[所陈述的条件或事件]”。
描述了电子设备、用于这样的设备的用户接口、以及用于使用这样的设备的关联处理的实施例。在一些实施例中,设备是诸如移动电话之类的便携式通信设备,其还包含诸如PDA和/或音乐播放器功能之类的其它功能。便携式多功能设备的示例性实施例包括但不限于来自加利福尼亚州、库比蒂诺的Apple公司的iPod设备。还可以使用诸如具有触敏表面(例如,触摸屏显示器和/或触摸板)的膝上型或平板计算机之类的其它便携式设备。膝上型和平板计算机的示例性实施例包括但不限于来自加利福尼亚州、库比蒂诺的Apple公司的设备。还应该理解的是,在一些实施例中,设备不是便携式通信设备,而是台式计算机。台式计算机的示例性实施例包括但不限于来自加利福尼亚州、库比蒂诺的Apple公司的Mac
在随后的讨论中,描述包括显示器和触敏表面的电子设备。然而,应该理解的是,电子设备可选地包括诸如(一个或多个)按钮、物理键盘、鼠标和/或操纵杆之类的一个或多个其它物理用户接口设备。
设备可以支持各种应用,诸如以下应用中的一个或多个应用:画图应用、演示应用、文字处理应用、网站创建应用、盘编写应用、电子表格应用、游戏应用、电话应用、视频会议应用、电子邮件应用、即时消息传输应用、锻炼支持应用、照片管理应用、数字相机应用、数字视频相机应用、网络浏览应用、数字音乐播放器应用、和/或数字视频播放器应用。
在设备上执行的各种应用可选地使用诸如触敏表面之类的至少一个共同物理用户接口设备。触敏表面的一个或多个功能以及在设备上显示的对应信息可选地因应用的不同和/或在相应应用内调整和/或变化。以这种方式,设备的共同物理架构(诸如,触敏表面)可选地支持具有对用户来说直观和透明的用户接口的各种应用。
图1A和图1B是图示依照一些实施例的具有触敏显示器112的示例性便携式多功能设备100的框图。为了方便起见,触敏显示器112有时称为“触摸屏”。设备100可以包括存储器102。设备100可以包括存储器控制器122、一个或多个处理单元(CPU)120、外围设备接口118、RF电路108、音频电路110、扬声器111、麦克风113、输入/输出(I/O)子系统106、其它输入或控制设备116、和外部端口124。设备100可以包括一个或多个光学传感器164。总线/信号线103可以允许这些部件彼此通信。设备100是可以用于执行本文中描述的技术的电子设备的一个示例。涉及设备100的具体实施方式可以具有比所示更多或更少的部件,可以组合两个或更多部件,或者可以具有不同的部件配置或布置。图1A和图1B所示的各种部件可以实现在硬件、软件或两者的组合中。还可以使用一个或多个信号处理和/或专用集成电路来实现部件。
存储器102可以包括一个或多个计算机可读存储介质。计算机可读存储介质可以是有形和非瞬态的。存储器102可以包括高速随机存取存储器,并且还可以包括非易失存储器,诸如一个或多个磁盘存储设备、闪速存储器设备、或其它非易失固态存储器设备。存储器控制器122可以控制设备100的其它部件对存储器102的访问。
外围设备接口118可以用于将设备的输入和输出外围设备耦合到CPU120和存储器102。一个或多个处理器120运行或执行在存储器102中存储的各种软件程序和/或指令集,以执行设备100的各种功能并且以处理数据。在一些实施例中,外围设备接口118、CPU120和存储器控制器122可以实现在诸如芯片104之类的单个芯片上。在一些其它实施例中,它们可以实现在分离芯片上。
RF(无线电频率)电路108接收和发送RF信号(还称为电磁信号)。RF电路108向/从电磁信号转换电信号,并且经由电磁信号与通信网络和其它通信设备通信。RF电路108可以包括用于执行这些功能的熟知电路,包括但不限于天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC芯片集、订户身份模块(SIM)卡、存储器等。RF电路108可以通过无线通信与诸如因特网(还被称为万维网(WWW))、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))之类的网络和其它设备通信。无线通信可以使用多个通信标准、协议和技术中的任何一个,包括但不限于全球移动通信系统(GSM)、增强数据GSM环境(EDGE)、高速下行链路分组接入(HSDPA)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、蓝牙低功耗(BTLE)、无线保真(WiFi)(例如,IEEE802.11a、IEEE802.11b、IEEE802.11g和/或IEEE802.11n)、因特网协议语音(VoIP)、Wi-MAX、电子邮箱协议(例如因特网消息访问协议(IMAP)和/或邮局协议(POP))、即时消息传输(例如可扩展消息传输和到场协议(XMPP)、即时消息传输会话发起协议和到场利用扩展(SIMPLE)、即时消息传输和到场服务(IMPS))、和/或短消息服务(SMS)、或者任何其它合适的通信协议(包括到本文件的提交日为止尚未开发的通信协议)。
音频电路110、扬声器111和麦克风113提供在用户和设备100之间的音频接口。音频电路110从外围设备接口118接收音频数据,将音频数据转换为电信号,并且将电信号传输到扬声器111。扬声器111将电信号转换为人听得见的声波。音频电路110还接收由麦克风113从声波转换的电信号。音频电路110将电信号转换为音频数据,并且将音频数据传输到外围设备接口118以待处理。通过外围设备接口118,可以从存储器102和/或RF电路108取回音频数据和/或将音频数据传输到存储器102和/或RF电路108。在一些实施例中,音频电路110还包括耳麦插孔(例如212,图2)。耳麦插孔提供在音频电路110和可移动音频输入/输出外围设备(诸如只输出耳机或者具有输出(例如,用于一只或两只耳朵的耳机)和输入(例如,麦克风)两者的耳麦)之间的接口。
I/O子系统106将设备100上的诸如触摸屏112和其它输入控制设备116之类的输入/输出外围设备耦合到外围设备接口118。I/O子系统106可以包括显示器控制器156以及用于其它输入或控制设备的一个或多个输入控制器160。一个或多个输入控制器160从其它输入或控制设备116接收电信号/将电信号发送到其它输入或控制设备116。其它输入控制设备116可以包括物理按钮(例如,按压按钮、摇杆按钮等)、拨号盘、滑块开关、操纵杆、点击轮等。在一些备选实施例中,(一个或多个)输入控制器160可以耦合到以下项中的任何项(或者没有任何项):键盘、红外端口、USB端口以及诸如鼠标之类的指示器设备。一个或多个按钮(例如208,图2)可以包括用于扬声器111和/或麦克风113的音量控制的上/下按钮。一个或多个按钮可以包括按压按钮(例如206,图2)。按压按钮的快速按下可以解除触摸屏112的锁定,或者开始使用触摸屏上的手势使设备解锁的处理,如美国专利号7,657,849、2005年12月23日提交的、“UnlockingaDevicebyPerformingGesturesonanUnlockImage”的美国专利申请11/322,549所描述的,通过引用方式将其整体并入于此。按压按钮(例如206)的较长按下可以打开或关闭设备100电源。用户可以能够自定义按钮中的一个或多个按钮的功能。触摸屏112用于实现虚拟或软按钮以及一个或多个软键盘。
触敏显示器112提供在设备和用户之间的输入接口和输出接口。显示器控制器156从触摸屏112接收电信号和/或将电信号发送到触摸屏112。触摸屏112向用户显示视觉输出。视觉输出可以包括图形、文本、图标、视频以及其任何组合(统称为“图形”)。在一些实施例中,视觉输出中的一些或全部可以对应于用户接口对象。
触摸屏112具有触敏表面、传感器或传感器集,其基于触觉和/或触知接触从用户接受输入。触摸屏112和显示器控制器156(连同任何关联的模块和/或存储器102中的指令集)检测触摸屏112上的接触(以及接触的任何移动或者断开),并且将检测到的接触转换成与触摸屏112上显示的用户接口对象(例如,一个或多个软键、图标、网页或图像)的交互。在示例性实施例中,在触摸屏112和用户之间的接触点对应于用户的手指。
触摸屏112可以使用LCD(液晶显示器)技术、LPD(发光聚合物显示器)技术或者LED(发光二极管)技术,虽然可以在其它实施例中使用其它显示技术。触摸屏112和显示器控制器156可以使用现在已知或以后开发的多种触摸感测技术中的任何一种来检测接触及其任何移动或断开,多种触摸感测技术包括但不限于电容性、电阻式、红外和表面声波技术、以及用于确定与触摸屏112的一个或多个接触点的其它接近传感器阵列或其它元件。在示例性实施例中,使用相互投射电容感测技术,诸如来自加利福尼亚州、库比蒂诺的Apple公司的和iPod中找到的技术。
在一些实施例中,触摸屏112的触敏显示器可以类似于在以下美国专利中描述的多点触敏触摸板:6,323,846(Westerman等人)、6,570,557(Westerman等人)、和/或6,677,932(Westerman)、和/或美国专利公开2002/0015024A1,其中每项均通过引用方式将其整体并入于此。然而,触摸屏112显示来自设备100的视觉输出,而触敏触摸板不提供视觉输出。
在一些实施例中,触摸屏112的触敏显示器可以如以下申请中所描述的:(1)2006年5月2日提交的“MultipointTouchSurfaceController,”的美国专利申请号11/381,313;(2)2004年5月6日提交的“MultipointTouchscreen”的美国专利申请号10/840,862;(3)2004年7月30日提交的“GesturesForTouchSensitiveInputDevices”的美国专利申请号10/903,964;(4)2005年1月31日提交的“GesturesForTouchSensitiveInputDevices”的美国专利申请号11/048,264;(5)2005年1月18日提交的“Mode-BasedGraphicalUserInterfacesForTouchSensitiveInputDevices”的美国专利申请号11/038,590;(6)2005年9月16日提交的“VirtualInputDevicePlacementOnATouchScreenUserInterface”的美国专利申请号11/228,758;(7)2005年9月16日提交的“OperationOfAComputerWithATouchScreenInterface”的美国专利申请号11/228,700;(8)2005年9月16日提交的“ActivatingVirtualKeysOfATouch-ScreenVirtualKeyboard”的美国专利申请号11/228,737;以及(9)2006年3月3日提交的“Multi-FunctionalHand-HeldDevice”的美国专利申请号11/367,749。所有这些申请通过引用方式将其整体并入于此。
触摸屏112可以具有超过100dpi的视频分辨率。在一些实施例中,触摸屏具有近似160dpi的视频分辨率。用户可以使用诸如手写笔、手指等之类的任何合适对象或附件做出与触摸屏112的接触。在一些实施例中,用户接口被设计为主要利用基于手指的接触和手势进行工作,由于手指在触摸屏上更大的接触面积,比起基于手写笔的输入,基于手指的接触和手势可能不太精确。在一些实施例中,设备将粗略的基于手指的输入转译成精确的指示器/光标位置或命令,以用于执行用户所期望的动作。
在一些实施例中,除了触摸屏,设备100可以包括用于激活或停用特定功能的触摸板(未示出)。在一些实施例中,触摸板是设备的触敏区,其不像触摸屏,不显示视觉输出。触摸板可以是与触摸屏112分离的触敏表面或者由触摸屏形成的触敏表面的延伸。
设备100还包括用于给各种部件供电的电力系统162。电力系统162可以包括功率管理系统、一个或多个功率源(例如,电池、交流电(AC))、再充电系统、电源故障检测电路、功率转换器或逆变器、电源状态指示器(例如,发光二极管(LED))以及与功率在便携式设备中的生成、管理和分布关联的任何其它部件。
设备100还可以包括一个或多个光学传感器164。图1A和图1B示出耦合到I/O子系统106中的光学传感器控制器158的光学传感器。光学传感器164可以包括电荷耦合器件(CCD)或者互补金属氧化物半导体(CMOS)光电晶体管。光学传感器164接收来自环境、通过一个或多个透镜投射的光,并且将光转换为表示图像的数据。结合成像模块143(还被称为相机模块),光学传感器164可以捕获静止图像或视频。在一些实施例中,光学传感器位于设备100的背面、与在设备的正面的触摸屏显示器112相反,使得触摸屏显示器可以用作用于静止和/或视频图像采集的取景器。在一些实施例中,光学传感器位于设备的正面,使得可以获得用户的图像以用于视频会议,同时用户在触摸屏显示器上查看其他视频会议参与者。在一些实施例中,光学传感器164的位置可以由用户改变(例如,通过旋转设备壳体中的透镜和传感器),使得单个光学传感器164可以连同触摸屏显示器一起用于视频会议以及静止和/或视频图像采集两者。
设备100还可以包括一个或多个接近传感器166。图1A和图1B示出耦合到外围设备接口118的接近传感器166。备选地,接近传感器166可以被耦合到I/O子系统106中的输入控制器160。接近传感器166可以如在以下美国专利申请号中描述的执行:“ProximityDetectorInHandheldDevice”的11/241,839;“ProximityDetectorInHandheldDevice”的11/240,788;“UsingAmbientLightSensorToAugmentProximitySensorOutput”的11/620,702;“AutomatedResponseToAndSensingOfUserActivityInPortableDevices”的11/586,862;以及“MethodsAndSystemsForAutomaticConfigurationOfPeripherals”的11/638,251,通过引用方式将它们整体并入于此。在一些实施例中,当多功能设备被放置靠近用户的耳朵时(例如,当用户正在进行电话呼叫时),接近传感器关闭和禁用触摸屏112。
设备100可选地还包括一个或多个触知输出生成器167。图1A示出耦合到I/O子系统106中的触觉反馈控制器161的触知输出生成器。触知输出生成器167可选地包括一个或多个诸如扬声器或其它音频部件之类的电声设备和/或诸如马达、螺线管、电活性聚合物、压电致动器、静电致动器、或者其它触知输出生成部件(例如,将电信号转换成设备上的触知输出的部件)之类的将能量转换成线性运动的机电设备。接触强度传感器165从触觉反馈模块133接收触知反馈生成指令,并且在设备100上生成能够被设备100的用户感测的触知输出。在一些实施例中,至少一个触知输出生成器搭配有或者近似于触敏表面(例如,触敏显示器系统112),并且可选地通过竖直地(例如,入/出设备100的表面)或侧向地(例如,在与设备100的表面相同的平面中前后)移动触敏表面来生成触知输出。在一些实施例中,至少一个触知输出生成器传感器位于设备100的背面、与触摸屏显示器112相反,触摸屏显示器112位于设备100的正面。
设备100还可以包括一个或多个加速计168。图1A和图1B示出耦合到外围设备接口118的加速计168。备选地,加速计168可以被耦合到I/O子系统106中的输入控制器160。加速计168可以如在“MethodsAndSystemsForAutomaticConfigurationOfPeripherals”的美国专利公开号20050190059以及“MethodsAndApparatusesForOperatingAPortableDeviceBasedOnAnAccelerometer”的美国专利公开号20060017692中所描述的执行,其两者都通过引用方式将其整体并入于此。在一些实施例中,基于对从一个或多个加速计接收的数据的分析,在触摸屏显示器上以纵向视图或横向视图显示信息。除了(一个或多个)加速计168,设备100可选地包括用于获得关于设备100的位置和定向(例如,纵向或横向)的信息的磁力计(未示出)和GPS(或者GLONASS或者其它全球导航系统)接收器(未示出)。
在一些实施例中,存储在存储器102中的软件部件包括操作系统126、通信模块(或者指令集)128、接触/运动模块(或者指令集)130、图形模块(或者指令集)132、文本输入模块(或者指令集)134、全球定位系统(GPS)模块(或者指令集)135、以及应用(或者指令集)136。此外,在一些实施例中存储器102存储设备/全局内部状态157,如图1A、图1B和图3所示。设备/全局内部状态157包括以下项中的一项或多项:活跃应用状态,指示哪些应用(如果有的话)是当前活跃的;显示器状态,指示什么应用、视图或其它信息占用触摸屏显示器112的各种区域;传感器状态,包括从设备的各种传感器和输入控制设备116获得的信息;以及关于设备的位置和/或姿态的位置信息。
操作系统126(例如,Darwin、RTXC、LINUX、UNIX、OSX、iOS、WINDOWS、或者诸如VxWorks之类的嵌入式操作系统)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件和/或驱动器,并且便于各种硬件和软件部件之间的通信。
通信模块128便于通过一个或多个外部端口124与其它设备的通信,并且还包括用于处理由RF电路108和/或外部端口124接收的数据的各种软件部件。外部端口124(例如,通用串行总线(USB)、火线等)适于直接地或者通过网络(例如,因特网、无线LAN等)间接地耦合到其它设备。在一些实施例中,外部端口是多管脚连接器,其与Apple公司制造的设备上使用的8管脚和/或30管脚连接器相同、或者相似和/或兼容。
接触/运动模块130可以检测与触摸屏112(结合显示器控制器156)以及其它触敏设备(例如,触摸板或物理点击轮)的接触。接触/运动模块130包括用于执行与接触检测有关的各种操作的各种软件部件,诸如确定接触是否已经发生(例如,检测手指放下事件),确定是否存在接触移动并且跨触敏表面跟踪移动(例如,检测一个或多个手指拖动事件),以及检测接触是否已经停止(例如,检测手指抬起事件或者接触断开)。接触/运动模块130接收来自触敏表面的接触数据。确定接触点的移动(其由一系列接触数据表示)可以包括确定接触点的速率(大小)、速度(大小和方向)和/或加速度(大小和/或方向的变化)。这些操作可被应用于单个接触(例如,一个手指接触)或多个同时接触(例如,“多点触摸”/多个手指接触)。在一些实施例中,接触/运动模块130和显示器控制器156检测触摸板上的接触。在一些实施例中,接触/运动模块130和控制器160检测点击轮上的接触。
接触/运动模块130可以检测用户的手势输入。触敏表面上的不同手势具有不同接触模式。因而,可以通过检测特定接触模式来检测手势。例如,检测手指敲击手势包括检测手指放下事件、接着检测在与手指放下事件相同的位置(或者大致相同的位置)处(例如,在图标的位置处)的手指抬起(升起)事件。作为另一示例,检测触敏表面上的手指滑动手势包括检测手指放下事件、接着检测一个或多个手指拖动事件、并且随后接着检测手指抬起(升起)事件。
图形模块132包括用于在触摸屏112或其它显示器上渲染和显示图形的各种已知软件部件,包括用于改变所显示的图形的强度的部件。如本文中使用的,术语“图形”包括可以向用户显示的任何对象,包括但不限于文本、网页、图标(诸如,包括软键的用户接口对象)、数字图像、视频、动画等。在一些实施例中,图形模块132存储表示要使用的图形的数据。每个图形可以被分派对应代码。图形模块132从应用等接收指定将连同(如果必要的话)坐标数据和其它图形属性数据一起显示的图形的一个或多个代码,并且然后生成屏幕图像数据以向显示器控制器156输出。
触觉反馈模块133包括用于生成指令的各种软件部件,该指令由(一个或多个)触知输出生成器167用于响应于与设备100的用户交互而在设备100上的一个或多个位置处产生触知输出。
其可以是图形模块132的部件的文本输入模块134提供用于在各种应用(例如,联系人137、电子邮件140,、IM141、浏览器147以及需要文本输入的任何其它应用)中输入文本的软键盘。
GPS模块135确定设备的位置,并且提供这一信息以用于在各种应用中使用(例如,向电话138提供以用于在基于位置的拨号中使用,向相机143提供作为图片/视频元数据,以及向提供基于位置的服务的诸如天气小部件(widget)、本地黄页小部件和地图/导航小部件之类的应用提供)。
应用136可以包括以下模块(或者指令集)或者其子集或超集:
·联系人模块137(有时称为地址簿或联系人列表);
·电话模块138;
·视频会议模块139;
·电子邮件客户端模块140;
·即时消息传输(IM)模块141;
·锻炼支持模块142;
·用于静止和/或视频图像的相机模块143;
·图像管理模块144;
·视频播放器模块;
·音乐播放器模块;
·浏览器模块147;
·日历模块148;
·小部件模块149,其可以包括以下项中的一个或多个:天气小部件149-1、股票小部件149-2、计算器小部件149-3、闹钟小部件149-4、词典小部件149-5、以及由用户获得的其他小部件,以及用户创建的小部件149-6;
·用于制作用户创建的小部件149-6的小部件创建器模块150;
·搜索模块151;
·视频和音乐播放器模块152,其合并视频播放器模块和音乐播放器模块;
·备忘录模块153;
·地图模块154;和/或
·备忘录模块153;
·在线视频模块155。
可以存储在存储器102中的其他应用136的示例包括其他文字处理应用、其他图像编辑应用、画图应用、演示应用、实现JAVA的应用、加密、数字权限管理、语音识别和语音复制。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,联系人模块137可以用于管理地址簿或联系人列表(例如,存储在存储器102或存储器370中的联系人模块137的应用内部状态192中),包括:将(一个或多个)姓名添加到地址簿;从地址簿中删除(一个或多个)姓名;将(一个或多个)电话号码、(一个或多个)电子邮件地址、(一个或多个)物理地址或其他信息与姓名相关联;将图像与姓名相关联;对姓名进行分类和排序;提供电话号码或电子邮件地址以发起和/或便于通过电话138、视频会议模块139、电子邮件140或IM141的通信等。
结合RF电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,电话模块138可以用于录入对应于电话号码的字符序列、访问地址簿137中的一个或多个电话号码、修改已经录入的电话号码、拨打相应的电话号码、进行会话以及当会话完成时断开连接或挂断。如上所述,无线通信可以使用多种通信标准、协议和技术中的任何一种。
结合RF电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示器控制器156、光学传感器164、光学传感器控制器158、接触模块130、图形模块132、文本输入模块134,联系人模块137和电话模块138,视频会议模块139包括用于依照用户指令发起、进行和终止用户与一个或多个其他参与者之间的视频会议的可执行指令。
结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,电子邮件客户端模块140包括用于响应于用户指令创建、发送、接收和管理电子邮件的可执行指令。结合图像管理模块144,电子邮件客户端模块140使创建和发送带有利用相机模块143拍摄的静止或视频图像的电子邮件变得非常容易。
结合RF电路108、触摸屏112、显示器控制器156、接触模块130、图形模块132和文本输入模块134,即时消息传输模块141包括用于录入对应于即时消息的字符序列、用于修改先前录入的字符、用于传输相应的即时消息(例如,使用针对基于电话的即时消息的短消息服务(SMS)或多媒体消息服务(MMS)协议,或者使用针对基于因特网的即时消息的XMPP、SIMPLE或IMPS)、用于接收即时消息和用于查看接收的即时消息的可执行指令。在一些实施例中,如MMS和/或增强型消息传输服务(EMS)中所支持的那样,所传输和/或所接收的即时消息可以包括图形、照片、音频文件、视频文件和/或其他附件。如本文中所使用的,“即时消息传输”指代基于电话的消息(例如,使用SMS或MMS发送的消息)和基于因特网的消息(例如,使用XMPP、SIMPLE或IMPS发送的消息)两者。
结合RF电路108、触摸屏112、显示器控制器156、接触模块130、图形模块132、文本输入模块134、GPS模块135、地图模块154和音乐播放器模块,锻炼支持模块142包括用于创建锻炼(例如,具有时间、距离和/或卡路里燃烧目标);与锻炼传感器(运动设备)通信;接收锻炼传感器数据;校准用于监控锻炼的传感器;选择并且播放用于锻炼的音乐;以及显示、存储并且传输锻炼数据的可执行指令。
结合触摸屏112、显示器控制器156、(一个或多个)光学传感器164、光学传感器控制器158、接触/运动模块130、图形模块132和图像管理模块144,相机模块143包括用于捕获静止图像或视频(包括视频流)并且将它们存储到存储器102中,修改静止图像或视频的特性,或者从存储器102中删除静止图像或视频的可执行指令。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134和相机模块143,图像管理模块144包括用于布置、修改(例如,编辑)、或以其它方式操纵、标记、删除、呈现(例如,在数字幻灯片演示或相册中)、以及存储静止和/或视频图像的可执行指令。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、音频电路110以及扬声器111,视频播放器模块145包括用于(例如,在触摸屏112上或在经由外部端口124外部连接的显示器上)显示、呈现或者以其它方式回放视频的可执行指令。
结合触摸屏112、显示器系统控制器156、接触模块130、图形模块132、音频电路110、扬声器111,RF电路108以及浏览器模块147,音乐播放器模块146包括允许用户下载和回放录制的音乐以及以一个或多个文件格式存储的其他声音文件(诸如MP3或AAC文件)的可执行指令。在一些实施例中,设备100可以包括诸如iPod(Apple公司的商标)之类的MP3播放器的功能。
结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,浏览器模块147包括用于依照用户指令浏览因特网(包括搜索、链接到、接收和显示网页或其部分以及被链接到网页的附件和其他文件)的可执行指令。
结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134、电子邮件客户端模块140和浏览器模块147,日历模块148包括用于依照用户指令创建、显示、修改和存储日历和与日历相关联的数据(例如,日历条目、待办事项列表等)的可执行指令。
结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134和浏览器模块147,小部件模块149是可以由用户下载和使用的小型应用(例如,天气小部件149-1、股票小部件149-2、计算器小部件149-3、闹钟小部件149-4和词典小部件149-5),或者由用户创建的小型应用(例如,用户创建的小部件149-6)。在一些实施例中,小部件包括HTML(超文本标记语言)文件、CSS(层叠样式表)文件和JavaScript文件。在一些实施例中,小部件包括XML(可扩展标记语言)文件和JavaScript文件(例如,Yahoo!小部件)。
结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134和浏览器模块147,小部件创建器模块150可以由用户用于创建小部件(例如,将网页的用户指定部分转成小部件)。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,搜索模块151包括用于依照用户指示搜索存储器102中与一条或多条搜索准则(例如,一个或多个用户指定的搜索项)匹配的文本、音乐、声音、图像、视频和/或其他文件的可执行指令。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、音频电路110、扬声器111、RF电路108和浏览器模块147,视频和音乐播放器模块152包括允许用户下载和回放录制的音乐以及以一个或多个文件格式存储的其他声音文件(诸如MP3或AAC文件)的可执行指令,以及用于(例如,在触摸屏112上或在经由外部端口124外部连接的显示器上)显示、呈现或者以其它方式回放视频的可执行指令。在一些实施例中,设备100可选地包括诸如iPod(Apple公司的商标)之类的MP3播放器的功能。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,备忘录模块153包括用于依照用户指示创建并管理备忘录、待办事项列表等的可执行指令。
结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134、GPS模块135和浏览器模块147,地图模块154可以用于依照用户指示接收、显示、修改和存储地图以及与地图相关联的数据(例如,行驶方向;关于在特定位置或附近的商店及其他兴趣点的数据;以及其他基于位置的数据)。
结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、音频电路110、扬声器111、RF电路108、文本输入模块134、电子邮件客户端模块140和浏览器模块147,在线视频模块155包括允许用户访问、浏览、接收(例如,通过流传输和/或下载)、回放(例如,在触摸屏上或在经由外部端口124外部连接的显示器上)、发送具有到特定在线视频的链接的电子邮件,以及以其它方式管理诸如H.264之类的一个或多个文件格式的在线视频的指令。在一些实施例中,即时消息传输模块141而不是电子邮件客户端模块140被用于发送到特定在线视频的链接。在线视频应用的附加描述可以在以下专利申请中找到:2007年6月20日提交的第60/936,562号美国临时专利申请“PortableMultifunctionDevice,Method,andGraphicalUserInterfaceforPlayingOnlineVideos”,以及2007年12月31日提交的第11/968,067号美国专利申请“PortableMultifunctionDevice,Method,andGraphicalUserInterfaceforPlayingOnlineVideos”,其内容通过引用的方式整体并入于此。
上述模块和应用的每一个均对应于用于执行上文所述的一个或多个功能以及本申请中描述的方法(例如,本文所述的计算机实现方法以及其他信息处理方法)的可执行指令集。这些模块(例如,指令集)无需实现为分离的软件程序、过程或模块,并且因而这些模块的各种子集可以在各种实施例中组合或者以其它方式重新布置。例如,视频播放器模块可以与音乐播放器模块组合成单个模块(例如,图1B的视频和音乐播放器模块152)。在一些实施例中,存储器102可以存储上述模块和数据结构的子集。此外,存储器102可以存储上文未描述的附加模块和数据结构。
在一些实施例中,设备100是其中专门通过触摸屏和/或触摸板来执行设备上的预定义功能集的操作的设备。通过将触摸屏和/或触摸板用作设备100操作的主要输入控制设备,可以减少设备100上的物理输入控制设备(诸如,按压按钮、拨号盘等)的数目。
可以专门通过触摸屏和/或触摸板执行的预定义功能集包括用户接口之间的导航。在一些实施例中,当被用户触摸时,触摸板将设备100从可以显示在设备100上的任何用户接口导航到主菜单、主页菜单或根菜单。在这种实施例中,使用触摸板来实现“菜单按钮”。在一些其他实施例中,菜单按钮是物理按压按钮或其他物理输入控制设备而不是触摸板。
图1B是图示依照一些实施例用于事件处理的示例性部件的框图。在一些实施例中,存储器102(在图1A中)或370(图3)包括事件分类器170(例如,在操作系统126中)和相应的应用136-1(例如,任意前述应用137-151、155、380-390)。
事件分类器170接收事件信息,并且确定向其递送事件信息的应用136-1以及应用136-1的应用视图191。事件分类器170包括事件监控器171和事件调度器(eventdispatcher)模块174。在一些实施例中,应用136-1包括应用内部状态192,其指示当应用活跃或执行时触敏显示器112上显示的(一个或多个)当前应用视图。在一些实施例中,设备/全局内部状态157由事件分类器170用于确定(哪个或哪些)应用当前活跃,并且应用内部状态192由事件分类器170用于确定向其递送事件信息的应用视图191。
在一些实施例中,应用内部状态192包括附加信息,诸如以下项中的一个或多个:当应用136-1恢复执行时要使用的恢复信息、指示应用136-1正在显示或准备好显示的信息的用户接口状态信息、用于使用户能够回到应用136-1的前一状态或视图的状态队列、以及用户采取的先前动作的重做/撤销队列。
事件监测器171从外围设备接口118接收事件信息。事件信息包括关于子事件(例如,触敏显示器112上、作为多点触摸手势的一部分的用户触摸)的信息。外围设备接口118传输其从I/O子系统106或诸如接近传感器166之类的传感器、(一个或多个)加速计168和/或麦克风113(通过音频电路110)接收的信息。外围设备接口118从I/O子系统106接收的信息包括来自触敏显示器112或触敏表面的信息。
在一些实施例中,事件监测器171以预定间隔向外围设备接口118发送请求。作为响应,外围设备接口118传输事件信息。在其他实施例中,仅当发生重要事件(例如,接收到高于预定噪声阈值和/或长于预定持续时间的输入)时,外围设备接口118才传输事件信息。在一些实施例中,事件分类器170还包括命中视图确定模块172和/或活跃事件识别器确定模块173。
命中视图确定模块172提供用于当触敏显示器112显示多于一个视图时,确定子事件在一个或多个视图内发生的位置的软件过程。视图由用户在显示器上可以看到的控件和其他元件组成。
与应用相关联的用户接口的另一方面是视图集,有时在本文中被称为应用视图或用户接口窗口,其中显示信息并且发生基于触摸的手势。其中检测到触摸的(相应应用的)应用视图可以对应于该应用的程序或视图层次结构内的程序层级。例如,其中检测到触摸的最低层级视图可被称为命中视图,并且可以至少部分基于开始基于触摸的手势的初始触摸的命中视图,来确定被识别为正确输入的事件集。
命中视图确定模块172接收与基于触摸的手势的子事件有关的信息。当应用具有以层次结构组织的多个视图时,命中视图确定模块172将层次结构中应当处理该子事件的最低视图标识为命中视图。在大部分情况下,命中视图是其中发生了发起子事件(即,子事件序列中形成事件或潜在事件的第一个子事件)的最低层级视图。一旦命中视图被命中视图确定模块172标识,该命中视图通常接收与使其被标识为命中视图的相同触摸或输入源有关的所有子事件。
活跃事件识别器确定模块173确定视图层次结构内的哪个视图或哪些视图应当接收特定子事件序列。在一些实施例中,活跃事件识别器确定模块173确定只有命中视图应当接收特定子事件序列。在其他实施例中,活跃事件识别器确定模块173确定包括子事件的物理位置的所有视图都是有效涉及(activelyinvolve)的视图,并且因此确定所有有效涉及的视图都应当接收特定子事件序列。在其他实施例中,即使触摸子事件被完全限定于与一个特定视图相关联的区域,层次结构中更高的视图将仍然保持作为有效涉及的视图。
事件调度器模块174将事件信息调度至事件识别器(例如,事件识别器180)。在包括活跃事件识别器确定模块173的实施例中,事件调度器模块174将事件信息递送至由活跃事件识别器确定模块173确定的事件识别器。在一些实施例中,事件调度器模块174将事件信息存储在事件队列中,由相应的事件接收器模块182取回事件队列。
在一些实施例中,操作系统126包括事件分类器170。备选地,应用136-1包括事件分类器170。在又一些其它实施例中,事件分类器170是独立的模块,或者是存储器102中存储的另一模块(诸如接触/运动模块130)的一部分。
在一些实施例中,应用136-1包括多个事件处理机190以及一个或多个应用视图191,其中每一个包括用于处理发生在应用的用户接口的相应视图内的触摸事件的指令。应用136-1的每个应用视图191包括一个或多个事件识别器180。通常,相应应用视图191包括多个事件识别器180。在其他实施例中,事件识别器180中的一个或多个是分离模块(诸如用户接口套件(未示出))的一部分、或者应用136-1从中继承方法和其他属性的更高层级对象的一部分。在一些实施例中,相应事件处理机190包括以下项中的一个或多个:数据更新器176、对象更新器177、GUI更新器178和/或从事件分类器170接收的事件数据179。事件处理机190可以利用或调用数据更新器176、对象更新器177或GUI更新器178来更新应用内部状态192。备选地,应用视图191中的一个或多个包括一个或多个相应事件处理机190。同样,在一些实施例中,数据更新器176、对象更新器177和GUI更新器178中的一个或多个包括在相应应用视图191中。
相应事件识别器180从事件分类器170接收事件信息(例如,事件数据179),并从事件信息标识事件。事件识别器180包括事件接收器182和事件比较器184。在一些实施例中,事件识别器180还包括至少以下项的子集:元数据183和事件递送指令188(其可以包括子事件递送指令)。
事件接收器182从事件分类器170接收事件信息。事件信息包括关于子事件(例如,触摸或触摸移动)的信息。取决于子事件,事件信息还包括附加信息,诸如子事件的位置。当子事件涉及触摸的运动时,事件信息还可以包括子事件的速度和方向。在一些实施例中,事件包括设备从一个定向到另一个定向的旋转(例如,从纵向定向到横向定向的旋转,反之亦然),并且事件信息包括关于设备的当前定向(还被称为设备姿态)的对应信息。
事件比较器184将事件信息与预定义事件或子事件定义进行比较,并且基于该比较,确定事件或子事件,或者确定或更新事件或子事件的状态。在一些实施例中,事件比较器184包括事件定义186。事件定义186包含事件(例如,预定义的子事件序列)的定义,例如事件1(187-1)、事件2(187-2)等等。在一些实施例中,事件187中的子事件包括例如触摸开始、触摸结束、触摸移动、触摸取消和多触摸。在一个示例中,事件1(187-1)的定义是对显示对象的双敲击。双敲击例如包括预定阶段的对显示对象的第一触摸(触摸开始)、预定阶段的第一抬起(触摸结束)、预定阶段的对显示对象的第二触摸(触摸开始)以及预定阶段的第二抬起(触摸结束)。在另一示例中,事件2(187-2)的定义是对显示对象的拖动。拖动例如包括预定阶段的对显示对象的触摸(或接触)、触摸跨触敏显示器112的移动以及触摸的抬起(触摸结束)。在一些实施例中,事件还包括针对一个或多个相关联的事件处理机190的信息。
在一些实施例中,事件定义187包括针对相应用户接口对象的事件的定义。在一些实施例中,事件比较器184执行命中测试,以确定哪个用户接口对象与子事件相关联。例如,在其中三个用户接口对象被显示在触敏显示器112上的应用视图中,当在触敏显示器112上检测到触摸时,事件比较器184执行命中测试,以确定三个用户接口对象中的哪个与该触摸(子事件)相关联。如果每个显示对象均与相应事件处理机190相关联,则事件比较器使用命中测试的结果来确定哪个事件处理机190应当被激活。例如,事件比较器184选择与触发命中测试的子事件和对象相关联的事件处理机。
在一些实施例中,相应事件187的定义还包括延迟动作,其延迟事件信息的递送,直到已经确定子事件序列是否与事件识别器的事件类型相对应。
当相应事件识别器180确定子事件系列不与事件定义186中的任何事件匹配时,相应事件识别器180进入事件不可能、事件失败或者事件结束状态,此后相应事件识别器180忽视基于触摸的手势的后续子事件。在此情况下,对于命中视图保持活跃的其他事件识别器(如果有的话)继续跟踪和处理进行中的基于触摸的手势的子事件。
在一些实施例中,相应事件识别器180包括具有可配置的属性、标志(flag)和/或列表的元数据183,其指示事件递送系统应当如何执行去往有效涉及的事件识别器的子事件递送。在一些实施例中,元数据183包括可配置的属性、标志和/或列表,其指示事件识别器如何可以彼此交互或者被使得能够彼此交互。在一些实施例中,元数据183包括可配置的属性、标志和/或列表,其指示子事件是否被递送到视图或程序层次结构中的不同层级。
在一些实施例中,当事件的一个或多个特定子事件被识别时,相应事件识别器180激活与事件相关联的事件处理机190。在一些实施例中,相应事件识别器180向事件处理机190递送与事件相关联的事件信息。激活事件处理机190截然不同于向相应命中视图发送(或延期发送)子事件。在一些实施例中,事件识别器180抛出与识别事件相关联的标志,并且与该标志相关联的事件处理机190抓住该标志并执行预定义处理。
在一些实施例中,事件递送指令188包括子事件递送指令,其递送关于子事件的事件信息而不激活事件处理机。代之,子事件递送指令向与子事件系列或有效涉及的视图相关联的事件处理机递送事件信息。与子事件系列或有效涉及的视图相关联的事件处理机接收事件信息并执行预定处理。
在一些实施例中,数据更新器176创建并更新应用136-1中使用的数据。例如,数据更新器176更新联系人模块137中使用的电话号码,或者存储视频播放器模块中使用的视频文件。在一些实施例中,对象更新器177创建并更新应用136-1中使用的对象。例如,对象更新器177创建新的用户接口对象或更新用户接口对象的位置。GUI更新器178更新GUI。例如,GUI更新器178准备显示器信息,并且将其发送至图形模块132以用于在触敏显示器上显示。
在一些实施例中,(一个或多个)事件处理机190包括或能够访问数据更新器176、对象更新器177和GUI更新器178。在一些实施例中,数据更新器176、对象更新器177和GUI更新器178被包括在相应应用136-1或应用视图191的单个模块中。在其他实施例中,数据更新器176、对象更新器177和GUI更新器178被包括在两个或更多软件模块中。
应当理解,前面关于触敏显示器上的用户触摸的事件处理的论述还适用于操作具有输入设备的多功能设备100的其他形式的用户输入,其中不是所有用户输入都是在触摸屏上发起的。例如,可选地与单个或多个键盘按下或保持相配合的鼠标移动和鼠标按钮按下;触控板上的诸如敲击、拖动、滚动等之类的接触移动;手写笔输入;设备的移动;口头指令;检测到的眼睛移动;生物计量输入;和/或其任何组合,都可选地用作与定义待识别事件的子事件相对应的输入。
图2图示依照一些实施例的具有触摸屏112的便携式多功能设备100。触摸屏可以显示用户接口(UI)200内的一个或多个图形。在这一实施例以及下面所述的其他实施例中,用户可以通过例如用一个或多个手指202(在图中未按比例画出)或一个或多个手写笔203(在图中未按比例画出)接触或触摸图形来选择图形中的一个或多个图形。在一些实施例中,一个或多个图形的选择发生在用户断开与一个或多个图形的接触的时候。在一些实施例中,接触可以包括手势,诸如一个或多个敲击、一个或多个滑动(从左到右、从右到左、向上和/或向下)、和/或已经与设备100接触的手指的卷动(rolling)(从右到左、从左到右、向上和/或向下)。在一些实施例中,与图形的无意接触可能不会选择图形。例如,当与选择对应的手势是敲击时,扫过应用图标的滑动手势可能不会选择对应应用。
设备100还可以包括一个或多个物理按钮,诸如“主页”或菜单按钮204。如前所述,菜单按钮204可以用于导航至可以在设备100上执行的应用集中的任何应用136。备选地,在一些实施例中,菜单按钮被实现为触摸屏112上显示的GUI中的软键。
在一个实施例中,设备100包括触摸屏112、菜单按钮204、用于打开/关闭设备电源和锁定设备的按压按钮206、(一个或多个)音量调整按钮208、订户身份模块(SIM)卡槽210、耳麦插口212以及对接/充电外部端口124。按压按钮206可以用于通过按下按钮并使按钮保持在按下状态预定义的时间间隔,来打开/关闭设备电源;通过按下按钮并在预定义的时间间隔过去之前释放按钮,来锁定设备;和/或解锁设备或发起解锁处理。在备选实施例中,设备100还可以通过麦克风113接受用于激活或停用一些功能的口头输入。
图3是依照一些实施例具有显示器和触敏表面的示例性多功能设备的框图。设备300不需要是便携式的。在一些实施例中,设备300是膝上型计算机、台式计算机、平板计算机、多媒体播放器设备、导航设备、教育设备(诸如儿童学习玩具)、游戏系统或控制设备(例如,家用或工业控制器)。设备300通常包括一个或多个处理单元(CPU)310、一个或多个网络或其它通信接口360、存储器370、以及用于互连这些部件的一个或多个通信总线320。通信总线320可以包括互连和控制系统部件之间通信的电路(有时称为芯片集)。设备300包括输入/输出(I/O)接口330,输入/输出(I/O)接口330包括其通常为触摸屏显示器的显示器340。I/O接口330还可以包括键盘和/或鼠标(或其他指向设备)350和触摸板355。存储器370包括高速随机存取存储器,诸如DRAM、SRAM、DDRRAM或其他随机存取固态存储器设备;并且可以包括非易失存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪速存储器设备或其他非易失固态存储设备。存储器370可以可选地包括距离(一个或多个)CPU310远程定位的一个或多个存储设备。在一些实施例中,存储器370存储与存储在便携式多功能设备100(图1)的存储器102中的程序、模块和数据结构类似的程序、模块和数据结构、或其子集。此外,存储器370可以存储未存在于便携式多功能设备100的存储器102中的附加程序、模块和数据结构。例如,设备300的存储器370可以存储画图模块380、演示模块382、文字处理模块384、网站创建模块386、盘编写模块388和/或电子表格模块390,而便携式多功能设备100(图1)的存储器102可以不存储这些模块。
图3中的上述元件中的每个元件可以存储在前述存储器设备的一个或多个中。上述模块中的每个模块对应于用于执行上面所述功能的指令集。上述模块或程序(即,指令集)不需要实现为分离的软件程序、过程或模块,因而这些模块的各种子集可以在各种实施例中组合或以其它方式重新布置。在一些实施例中,存储器370可以存储上述模块和数据结构的子集。此外,存储器370可以存储上面未描述的附加模块和数据结构。
现在把注意力指向可以在便携式多功能设备100上实现的用户接口(“UI”)的实施例。图4A图示了依照一些实施例用于便携式多功能设备100上的应用的菜单的示例性用户接口。相似的用户接口可以在设备300上实现。在一些实施例中,用户接口400包括以下元件或其子集或超集:
·用于(一种或多种)无线通信的(一个或多个)信号强度指示符402,诸如蜂窝信号和Wi-Fi信号;
·时间404;
·蓝牙指示符405;
·电池状态指示符406;
·具有以下用于频繁使用的应用的图标的托盘(tray)408,诸如:
ο用于电话模块138、标记为“电话”的图标416,其可选地包括未接呼叫或语音邮件消息的数目的指示符414;
ο用于电子邮件客户端模块140、标记为“邮件”的图标418,其可选地包括未读电子邮件的数目的指示符410;
ο用于浏览器模块147、标记为“浏览器”的图标420;和
ο用于视频和音乐播放器模块152(还被称为iPod(Apple公司的商标)模块152)、标记为“iPod”的图标422;以及
·用于其它应用的图标,诸如:
ο用于IM模块141、标记为“消息”的图标424;
ο用于日历模块148、标记为“日历”的图标426;
ο用于图像管理模块144、标记为“照片”的图标428;
ο用于相机模块143、标记为“相机”的图标430;
ο用于在线视频模块155、标记为“在线视频”的图标432;
ο用于股票小部件149-2、标记为“股票”的图标434;
ο用于地图模块154、标记为“地图”的图标436;
ο用于天气小部件149-1、标记为“天气”的图标438;
ο用于闹钟小部件149-4、标记为“时钟”的图标440;
ο用于锻炼支持模块142、标记为“锻炼支持”的图标442;
ο用于备忘录模块153、标记为“备忘录”的图标444;和
ο用于设置应用或模块、标记为“设置”的图标446,其提供对设备100及其各种应用136的设置的访问。
图4B图示了具有与显示器450(例如,触摸屏显示器112)分离的触敏表面451(例如,图3的平板或触摸板355)的设备(例如,图3的设备300)上的示例性用户接口。虽然以下许多示例将参照在触摸屏显示器112上的输入给出(其中触敏表面和显示器组合在一起),但是如图4B所示在一些实施例中,设备检测与显示器分离的触敏表面上的输入。在一些实施例中,触敏表面(例如451)具有对应于显示器(例如450)上主轴(例如453)的主轴(例如452)。依照这些实施例,设备检测在对应于显示器上相应位置的位置处(例如,460对应于468并且462对应于470)的与触敏表面451的接触(例如460和462)。以这种方式,当触敏表面与显示器分离时,设备在触敏表面(例如451)上检测到的用户输入(例如,接触460和接触462及其移动)由设备用于操纵多功能设备的显示器(例如450)上的用户接口。应当理解,相似的方法可以用于本文所述的其它用户接口。
另外,虽然以下示例主要参照手指输入(例如,手指接触、手指敲击手势、手指滑动手势)给出,但是应当理解的是在一些实施例中,一个或多个手指输入用来自另一输入设备(例如,基于鼠标的输入或手写笔输入)的输入代替。例如,滑动手势可选地用鼠标点击(例如,替代接触)接着沿滑动路径移动光标(例如,替代移动接触)来代替。作为另一示例,敲击手势可选地用在光标位于敲击手势的位置之上的同时的鼠标点击(例如,替代检测接触接着停止检测该接触)来代替。相似地,当同时检测到多个用户输入时,应当理解多个计算机鼠标可选地被同时使用,或者鼠标和手指接触可选地被同时使用。
如在说明书和权利要求书中使用的,术语“打开应用”指的是具有保留状态信息(例如,作为设备/全局内部状态157和/或应用内部状态192的一部分)的软件应用。打开(例如,执行)应用是以下应用类型中的任何一种:
·活跃应用,其当前显示显示器112上(或者对应应用视图当前显示在显示器上);
·后台应用(或者后台处理),其未当前显示显示器112上,但是用于对应应用的一个或多个应用处理(例如,指令)正在由一个或多个处理器120处理(即,正在运行);
·悬挂应用,其当前未在运行,并且应用被存储在易失存储器(例如,存储器102的DRAM、SRAM、DDRRAM、或其它易失随机存取固态存储器设备)中;和
·休眠应用,其未在运行,并且应用被存储在非易失存储器(例如,存储器102的一个或多个磁盘存储设备、光盘存储设备、闪速存储器设备、或其它非易失固态存储设备)中。
如本文中使用的,术语“关闭应用”指的是不具有保留状态信息的软件应用(例如,关闭应用的状态信息未存储在设备的存储器中)。据此,将应用关闭包括停止和/或移除应用的应用处理,并且从设备的存储器移除应用的状态信息。通常,在第一应用中的同时打开第二应用不会关闭第一应用。当第二应用显示并且第一应用停止显示时,第一应用变成后台应用。
现在将注意力指向可以在具有显示器和触敏表面的电子设备(诸如,设备100和/或300)上实现的用户接口(“UI”)和关联处理的实施例,以改善消息传输应用中的用户体验。为简洁起见,本文中描述的技术可被称为“预测性回答”或“预制回答”。为了本公开的目的,消息传输应用是支持在不同用户(例如,参与者)之间发送和接收消息的软件应用。消息传输应用有时被称为“聊天程序”或“聊天室”。“消息”指的是会话中向/从参与者发送的一条信息。消息可以包含以下信息类型中的一种或多种:文本、图像(包括图标和其它启示,无论是否交互)、视频、音频片段、表情符号等。“消息记录(transcript)”指的是基于消息的会话的(一个或多个)参与者之间的消息的列表。
示例性用户接口
图5A至图5C展示在一些实施例中使用的支持预测性回答的示例性用户接口。图5A示出电子设备500。电子设备500在一些实施例中可以是便携式多功能设备100。电子设备500在一些实施例中可以是多功能设备300。在图示的示例中,电子设备500是蜂窝电话。蜂窝电话500可以显示由消息传输软件应用提供的用户接口屏幕。用户接口屏幕可以具有示出在设备500的用户和一个或多个参与者(诸如参与者506)之间的会话的消息记录502。消息记录502可以包括从参与者506(由参与者506使用的设备)接收的消息504。
消息504的内容——“你是将在接下来的半小时到一小时来访吗?”——是一个问题。按照语言学的说法,这个句子构成疑问。设备500能够做出这一确定:消息504包含疑问。(如下面更详细讨论的,该确定可以基于在消息开始出现的措辞“你是”和在消息结尾出现的问号。)在此基础上,设备500跨区域508水平地显示启示510、512和514。启示510、512和514表示设备500预测将会对用户响应消息504有帮助的回答。如示出的,所建议的预测性回答包括“是”、“否”和“可能”。
设备500的用户可以选择所显示的启示之一,以向参与者506发送对应预测性回答。在一些实施例中,可以通过一个或多个触摸事件(例如敲击、滑动、轻弹、抓住(hold)等)做出选择。在一些实施例中,可以通过一个或多个鼠标事件(例如悬停、点击、双击、拖动等)做出选择。在图5B所示的示例中,用户通过在启示510的位置处接触(例如,敲击)设备500的触敏显示器,选择启示510(表示“是”)。
转到图5C,响应于选择启示510,设备500将对应预测性回答(“是”)插入到消息记录502中。如示出的,回答“是”被插入到区域512中。设备500还可以向进行中的会话的(一个或多个)参与者发送预测性回答,而不要求进一步的用户输入。以这种方式,设备500允许其用户快速和有意义地对参与者506做出响应,原因在于用户能够以相关方式做出响应,而无须手动地打出答复。
区域512在不同的实施例中可以具有不同的视觉外观。在图示的实施例中,区域512表现为消息气泡。短语“消息气泡”在此处的使用与其在本领域中用于指代表示人的语音的图形约定的普通含义一致。语音气泡还有时被称为语音气球和对话气球。然而,启示512不需要限制于语音气泡;在一些实施例中(未示出),区域512可以呈现几何形状,诸如具有圆角的矩形,或者可以呈现为没有几何容器的纯文本。更一般地讲,在一些实施例中,区域512可以是与消息记录502的背景截然不同的连续显示器区域。
预测性回答功能提供多个益处。预测性回答的可用性减少了与消息会话中的其它(一个或多个)参与者交谈的用户的认知和身体负担,由此改善用户体验和效率。除了改善用户体验,预测性回答还可以减少在处理输入响应消息将要求的多个用户输入上另外浪费的处理器和电池功率。
然而,有时,用户有必要打出对传入消息的更详细的响应。设备500提供虚拟键盘520以用于这一目的。例如,响应于消息504(图5A),用户可能希望澄清,她可以留45分钟,这既不是如消息504提示的半小时也不是一整个小时。在提供预测性回答的同时,设备500还可以容纳键盘输入的附加输入模态。转回到图5A,设备500可以同时显示虚拟键盘520和预测性回答两者。实际上,在图5A的示例中,用于调用预测性回答的区域508与虚拟键盘520邻接显示。作为结果,能够到达一个输入模态(例如,预测性回答)的用户——在以某种方式抓握设备500的同时——还很可能能够访问其它输入模态(例如,虚拟键盘520),而无须使设备重新定位。然而,如将由本领域的一个普通技术人员理解的,本发明不限于与虚拟键盘520邻接的预测回答模态放置,并且预测回答模态可以位于屏幕上的任何地方。
为了进一步提供跨不同输入模态无缝用户体验,在一些实施例中,在用户开始使用虚拟键盘520打字时,设备500从提供预测性回答切换成提供自动校正推荐。通过参照回到图5A,这一方面进一步经由图5D来描述:当用户通过选择键522(即“y”)开始打字时,设备500可以停止显示预测性回答(例如启示510、512和514)。代之,设备500可以显示自动校正启示524、526和528。在一些实施例中,在区域508中,自动校正启示524、526和528代替预测性回答启示510、512和514(图5A)。这些自动校正启示可以表示基于用户按键的推荐。如示出的,响应于输入“y”,设备500提供“是”、“是的”和“嗯”作为自动校正推荐。用户可以选择自动校正启示之一,以向进行中的消息会话的(一个或多个)参与者发送对应推荐作为消息。以这种方式,设备500在保留每个模态的有用特征的同时,允许用户在多个输入模态之间无缝转变。
图5E至图5G展示在一些实施例中支持预测性回答的附加示例性用户接口。如图5E中示出的,电子设备500可以显示消息记录530。消息记录可以包括从参与者540接收的消息532。如上所述,设备500能够确定消息532包含疑问,具体地关于用户在接下来的半小时到一小时的行踪的问题。依照这一确定,设备500显示分别包含预测性回答“现在不能聊天”、“否”和“是”的启示534、536和538。在图示的示例中,启示534、536和538水平地显示在消息记录530内。
图5F图示其中设备500以竖直布置在消息记录548内显示预测性回答启示的实施例。如示出的,预测性回答启示542、544和546被竖直地显示。此外,如示出的,未显示虚拟键盘(例如,虚拟键盘520),以便增加用于显示消息记录548的空间。然而,当接收到消息输入域550上的触摸事件或鼠标事件时,设备500可以显示虚拟键盘。在一些实施例中,当调用虚拟键盘时,设备500继续竖直地显示启示542、544和546。在一些实施例中,如果用户调用虚拟键盘的显示,则设备500转变为跨一行或多行水平地显示启示542、544和546。换句话说,如果用户调用虚拟键盘和当用户调用虚拟键盘时,设备500可能从图5F中图示的用户接口转变为与用户接口屏幕530(图5E)相似的用户接口屏幕。
图5E和图5F中示出的预测性回答启示534、536、538、542、544和546可用于用户选择。当选择所显示的预测性回答启示时,其对应消息被插入到相关消息记录中,并且消息被发送到进行中的消息传输会话的(一个或多个)参与者。图5G和图5H图示了这一方面。如图5G中示出的,鉴于传入消息532,设备500可以显示预测性回答启示534、536和538。用户可以选择表示消息“现在不能聊天”的启示534。转到图5H,响应于检测到对启示534的用户选择,设备500可以在消息记录530中显示所选择的预测性回答。具体地,消息“现在不能聊天”被插入成消息记录554中的消息气泡552。
进一步地,如上所述,当显示预测性回答启示534、536、538、542、544和/或546时,用户仍然可以使用虚拟键盘打入消息。图5I描述了这一方面。如图5I示出的,当用户开始在虚拟键盘540上打字时,设备500可以停止显示预测性回答。可选地,设备可以显示自动校正推荐。比较图5I与图5E,当用户选择键522(即“y”)时,从显示器移除启示534、536和538,同时变成显示自动校正启示524、526和528。用户可以选择自动校正启示之一,以将对应消息插入到进行中的消息记录中。
在不同实施例中用于表示预测性回答的启示视觉外观可以变化。转回到图5E和图5F,在图示的实施例中,启示534、536、538、542、544和546是具有圆边的矩形形状的。在一些实施例中,启示可以呈现消息气泡的视觉外观。在一些实施例中,启示可以呈现几何形状的视觉外观。在一些实施例中,启示可以是与消息记录(启示是其一部分)的背景视觉上截然不同的邻接区域。同样,在图5E和图5F的所示示例中,启示534、536、538、542、544和/或546具有虚线轮廓。虚线轮廓可以用于强调——在所显示的启示可用于用户选择的同时——它们的内容尚未成为消息记录的一部分。换言之,虚线轮廓可以指示预测性回答可用于选择,但是尚未被发送到进行中的会话中的其它参与者。
用于表示预测性回答的启示的视觉外观——一旦选择启示,还可以改变。再次转到图5G和图5H,启示534(表示为“现在不能聊天”的预测性回答)在用户选择之前具有矩形形状和虚线边缘。一旦被选择,启示534的内容显示在具有实线轮廓的消息气泡内。本领域的一个普通技术人员应当理解,可以使用用于显示消息气泡的其它图形约定。例如,替代具有实线轮廓的消息气泡,设备500可以显示以不同于消息记录554的背景的颜色填充的消息气泡(图5H),由此避免需要用于视觉上区分消息气泡的任何轮廓。如上所述,启示534也不需要限制于消息气泡,而是可以是其它形状的。
前述示例描述了用于响应于示例性传入消息而提供预测性回答的一个特定集的不同用户接口。本文中描述的技术并不限于预测性响应的仅一个集。现在将注意力指向可以提供的其它预测性回答。在图5J中,设备500正在显示来自参与者562的消息560。如示出的,消息560问问题“牛肉或鸡肉”?和之前一样,设备500可以确定消息560包含疑问(基于至少消息中问号的使用)。此外,在解析信息560中,基于消息中出现词语“或”,设备500可以识别该疑问是包含备选选择的疑问。在这种情况下,设备500可以解析紧接在词语“或”之前和之后的词语。如适用于图示的示例的,设备500可以解析词语“牛肉”和“鸡肉”,因为这些词语在消息560中紧接在“或”之前和之后出现。设备500可以提供解析的词语作为预测性回答。如图5J中示出的,设备500显示分别对应于“牛肉”和“鸡肉”的预测性回答启示564和566。可选地,当传入问题是(就如此处的情况)建议备选回答的问题时,设备500可以显示诸如“两者都不”、“两者都”和/或“不在意”之类的其它预测性回答,因为这些回答常常可以与具有备选回答的疑问相关。在图示的示例中,启示568对应于为“不在意”的回答。
前述示例描述了仅使用文本字符提供的预测性回答。本文中描述的技术并不限于只建议文本字符。更确切地,预测性回答可以包含其它类型的建议字符,包括例如表情符号、启示(例如,图标)、图像和视频。概念上,预测性回答可以是任何类型的信息,只要该信息可以作为消息被传输。出于本公开的目的,术语“一个或多个字符”包含所有上述类型的信息(例如,文本、表情符号、启示(例如图标)、图像、视频)。
现在将注意力指向这些备选类型的预测性回答,参照图6A至图6E。首先转到图6A,设备600可以显示具有传入消息604、606和608的消息记录602。鉴于传入消息604、606和608中一个或多个的内容,设备600可以显示具有电话启示(例如,图标)的预测性回答启示610。如果用户选择启示610,设备600可以发起向参与者612的电话呼叫。设备600可以决定以两种方式中的至少一种方式来显示启示610。在一些实施例中,设备600可以识别最近接收的消息608的内容(“我们可以谈话吗”)作为来自参与者612对于语音通信的邀请。在一些实施例中,设备600可以识别参与者612已经紧接地发送了大量消息,并且因而语音通信可能是适当、主动的响应。大量可以是在设备600上运行的软件内设置的预定阈值。以这种方式,设备600允许用户通过给消息的发送者打电话来对传入消息做出响应。
虽然图6A图示其中设备600显示语音呼叫启示作为预测性回答的示例,但是应当理解的是,通信的其它方法是可能的。在一些实施例中,设备600可以识别消息传输会话的参与者正在使用支持视频呼叫的电子设备(例如,由加利福尼亚州、库比蒂诺的Apple公司提供的)。在这种情况下,设备600可以显示用于调用视频呼叫的启示。在一些实施例中,设备600在确定预测性回答中可以另外考虑参与者是否正在通过特定基础设施进行消息传输。例如,当参与者未经由广域网或局域网连接时,设备600可以显示用于调用蜂窝呼叫的启示,但是否则,显示用于调用通过IP的语音呼叫的启示。
转到图6B,设备600可以显示具有传入消息616的消息记录614。消息616包含来自参与者620关于约翰多伊的电话号码的询问。鉴于消息616的这一内容,设备600可以确定它是否能够访问约翰多伊的联系信息。例如,设备600可以能够基于存储在设备600上的或者设备600以其它方式可访问的(例如,通过云)联系信息,产生约翰多伊的电子商务卡。如果设备600能够这样做,它可以显示用于向参与者620发送约翰多伊的电子商务卡(例如,电子名片)的预测性回答启示618。此外,设备600可以显示用于向参与者620发送约翰多伊的电话号码的预测性回答启示619。如果用户选择启示618,设备600可以将电子名片的表示插入到消息记录614中,并且向参与者620发送对应的电子名片信息。如果用户选择启示619,设备600可以将电话号码555-1212插入到消息记录614中,并且向参与者620发送该号码。以这种方式,设备600允许用户通过向消息的发送者提供电子商务卡信息而对传入消息做出响应。
转到图6C,设备600可以显示具有传入消息624的消息记录622。消息624可以包含来自参与者628关于设备600的用户的位置的询问。鉴于消息624的这一内容,设备600可以确定它是否能够访问关于其自己的行踪的位置信息。例如,设备600可以从板载GPS模块136(图1A)获得GPS坐标信息。如果位置信息可用,设备600可以显示用于向参与者628发送用户/设备的位置的预测性回答启示626。如果用户选择启示626,设备600可以将用户/设备的位置的表示(例如地图图像)插入到消息记录622中,并且向参与者628使用的设备发送对应位置信息。以这种方式,设备600允许用户通过向消息的发送者提供位置信息而对传入消息做出响应。
转到图6D,设备600可以显示具有传入消息632的消息记录630。消息632可以是来自特定感兴趣参与者640的消息。在一些实施例中,感兴趣参与者是设备600的用户指定的(例如,用户的收藏)。在一些实施例中,感兴趣参与者是设备600的用户传输消息最多的联系人。鉴于消息632是由感兴趣参与者640发送的,设备600可以显示最可能与参与者640相关的预测性回答。在一些实施例中,设备600把向参与者640发送最频繁的那些回答看作是相关的。在一些实施例中,设备600把最近向参与者640发送的那些回答看作是相关的。在图示的实施例中,设备600包括作为可能预测性回答的表情符号图标(例如启示634)。如果用户选择所显示的启示634、636或638之一,则设备600可以在消息记录630中显示对应回答,并且向感兴趣参与者640发送对应消息。在一些实施例中,设备600可以将预测性回答排名,并且在特定屏幕上位置中显示排名最高的回答(例如,作为诸如图5A之类的水平布置中的中心启示,或者作为诸如图5F之类的竖直布置中的顶部启示)。例如,设备600可以确定短语“是,亲爱的”是最近向参与者640发送的消息,并且因此在区域639中显示作为中间启示的对应启示636。
转到图6E,设备600可以显示具有传入消息652的消息记录650。消息652可以包含来自参与者654关于约翰的生日聚会时间的询问。鉴于消息652的这一内容,设备600可以确定它是否能够访问涉及约翰的生日聚会的日历条目。例如,设备600可以能够基于存储在设备600上的或者设备600以其它方式可访问的(例如,通过云)日历信息,产生题为“约翰的生日”的日历邀请。如果设备600能够这样做,它可以显示用于向参与者654发送日历事件的拷贝的预测性回答启示658。此外,设备600可以能够解析所获得的日历信息,以确定约翰的聚会的开始时间是下午7:30。如设备600能够这样做,它可以显示用于向参与者654发送开始时间作为文本的预测性回答启示656。如果用户选择启示656或658,对应信息(分别为“下午7:30”和日历事件)可以被发送到参与者654。设备600还可以将所发送的信息的表示插入到消息记录650中。
示例性处理
图7是图示用于提供预测性回答的处理700的流程图。处理700可以在具有显示器和触敏表面的、像设备100(图1)和设备300(图3)那样的电子设备处执行。在块702处,设备显示消息记录,消息记录包括来自至少第一用户的至少一个消息。在块704处,至少部分地基于至少一个消息,设备确定多个建议的一个或多个字符。例如,这些建议的一个或多个字符可以从上面参照图5A-5J和图6A-6D讨论的预测性回答的示例中得到。在块706处,设备在其触敏显示器上显示多个建议的一个或多个字符。例如,该显示可以从上面参照图5A、图5E和图5F描述的用户接口布局的示例中得到。在块708处,设备检测触敏显示器上的输入。在块710处,设备确定输入是否表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符。在块710处,依照确定输入表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符,设备在消息记录中显示多个建议的一个或多个字符中所选择的一个建议的一个或多个字符。
图8是图示用于提供预测性回答的处理800的流程图。处理800可以在具有显示器和触敏表面的、像设备100(图1)和设备300(图3)那样的电子设备处执行。在块802处,设备在显示器的第一区域中显示消息记录,消息记录包括来自至少第一用户的至少一个消息。在块804处,设备在显示器的第二区域中显示虚拟键盘,虚拟键盘包括若干字符键。在块806处,设备在显示器的第三区域中显示多个建议的一个或多个字符,至少部分地基于从第一用户接收的至少一个消息的内容来确定多个建议的字符。在一些实施例中,第三区域被显示为与第一和第二区域之一邻接。在一些实施例中,第三区域被显示为与第一和第二区域邻接。在块808处,可选地,设备检测输入,该输入表示从所显示的多个一个或多个字符用户选择建议的一个或多个字符。在块810处,可选地,响应于检测到输入,设备将所选择的建议的一个或多个字符显示到第一区中的消息记录中。
图9是图示用于提供预测性回答的处理900的流程图。处理900可以在具有显示器和触敏表面的、像设备100(图1)和设备300(图3)那样的电子设备处执行。在块902处,设备显示消息记录,消息记录包括来自至少第一用户的至少一个消息。在块904处,至少部分地基于至少一个消息,设备确定多个建议的一个或多个字符。在块906处,设备在触敏显示器上的第一区域中显示多个建议的一个或多个字符中的第一建议的一个或多个字符。该区域可以是与消息记录的背景视觉上区分开来的邻接区域。在块908处,可选地,设备检测表示显示的文本输入区上的接触的输入,并且响应于检测到输入,显示虚拟键盘。所显示的虚拟键盘可以包括若干字符键。在块910处,可选地,设备检测表示虚拟键盘上的一个或多个接触的键盘输入,并且响应于检测到键盘输入,设备停止显示第一建议的一个或多个字符。
图10是图示用于提供预测性回答的处理1000的流程图。处理1000可以在具有显示器和触敏表面的、像设备100(图1)和设备300(图3)那样的电子设备处执行。在块1002处,设备显示消息记录,消息记录包括来自至少第一用户的至少一个消息。在块1004处,至少部分地基于至少一个消息,设备确定多个建议的一个或多个字符。在块1006处,设备在消息记录的底部显示第一启示,第一启示表示多个建议的一个或多个字符中的第一建议的一个或多个字符。在块1008处,可选地,设备检测表示用户选择第一启示的输入,并且响应于检测到输入,向第一用户发送第一建议响应。在块1010处,可选地,响应于检测到输入,设备在消息记录中显示第一建议的一个或多个字符。
应当理解的是,描述图7至图10中的操作的特定顺序仅仅是示例性,并且并不旨在于指示所描述的顺序是可以执行操作的唯一顺序。本领域的一个普通技术人员将意识到用于使本文所述的操作重新排序的各种方式。另外,应当注意的是,处理700至处理1000可以另外并入关于图5A-5J描述的功能,以产生新的处理和用户接口。例如,预测性回答和自动校正推荐的显示切换(例如关于图5A和图5D描述的)可以并入到处理700至处理1000(图7至图10)中。同样地,关于图6A至图6E描述的商务卡信息和日历信息的发送也可以并入到处理700至处理1000(图7至图10)中。进一步地,可以跨图5A、图5E和图5F中描述的用户接口中的每个用户接口来实现电话启示的显示。为简洁起见,这些细节在此不再重复。
上述技术的一个共同方面在于,设备需要处理一个或多个传入消息以标识针对消息的预测性回答。在一些实施例中,这一处理需要两个步骤:首先,设备解析传入消息并且向消息内容分派消息类;其次,设备基于消息类执行针对对应预测性回答的查找,并且基于传入消息的内容来组成预测性回答的适当集。
向消息类分派消息的第一步骤可以使用基于规则的引擎来执行。在一些实施例中,基于规则的引擎可以(至少部分地)基于消息中一个或多个词语的出现来分派消息类。如上所述,这样的词语的示例包括“你是”和“或”。在一些实施例中,基于规则的引擎可以(至少部分地)基于消息中使用的标点符号的出现来分派消息类。如上所述,这样的标点的示例包括问号的使用。在一些实施例中,基于规则的引擎可以(至少部分地)基于消息中敬语的使用来分派消息类。这样的敬语的示例包括消息中诸如“-君”之类的后缀的使用。更一般地讲,在一些实施例中,标识诸如助动词和疑问代词之类的相关语言标记的基于规则的引擎可以用于确定消息类。在一些实施例中,可以使用标识诸如谓语动词倒置之类的语法结构的基于规则的引擎。下面的表1列出了示例性消息类。
(表1.)
一旦消息类已被标识,设备可以查找用于该特定类的可能预测性回答。下面的表2列出了预测性回答与消息类的示例性映射。
(表2)
依照一些实施例,图11示出依照各种所描述实施例的原理配置的电子设备1100的功能框图。设备的功能块可选地由硬件、软件或者硬件和软件的组合来实现,以执行各种所描述实施例的原理。本领域技术人员理解的是,图11中描述的功能块可选地被组合或分离成子块,以实现各种所描述实施例的原理。因此,本文中的描述可选地支持本文所描述的功能块的任何可能的组合或分离或其它定义。
如图11所示,电子设备1100包括:显示器单元1102,被配置为显示包括消息和预测性回答信息的各种图形对象;触敏表面单元1104,被配置为接收用户输入;RF单元1106,被配置为与其它电子设备通信;以及处理单元1108,耦合到上述单元。在一些实施例中,处理单元1108包括消息解析单元1110,消息解析单元1110读取传入消息以标识例如传入消息的类。处理单元1108还可以包括预测性回答确定1112,预测性回答确定1112被配置为基于解析单元的结果来提供预测性回答。
依照一些实施例,图12示出依照各种所描述实施例的原理配置的电子设备1200的示例性功能框图。依照一些实施例,电子设备1200的功能块被配置为执行上面描述的技术。设备1200的功能块可选地由硬件、软件或者硬件和软件的组合来实现,以执行各种所描述示例的原理。本领域技术人员理解的是,图12中描述的功能块可选地被组合或分离成子块,以实现各种所描述示例的原理。因此,本文中的描述可选地支持本文所描述的功能块的任何可能的组合或分离或其它定义。
如图12所示,电子设备1200包括:触敏显示器单元1202,被配置为显示图形用户接口和接收接触;以及处理单元1204,耦合到触敏显示器单元1202。在一些实施例中,处理单元1204包括显示器启用单元1206、确定单元1208、检测单元1210、发送单元1212、显示器停止单元1214、标识单元1216、获得单元1218、计数单元1220以及排名单元1222。
处理单元1204被配置为:使得能够显示(例如,使用显示器启用单元1206)消息记录,消息记录包括来自至少第一用户的至少一个消息。处理单元1204进一步被配置为至少部分地基于至少一个消息,确定(例如,使用确定单元1208)多个建议的一个或多个字符。处理单元1204进一步被配置为使得能够在触敏显示器单元1202上显示(例如,使用显示器启用单元1206)多个建议的一个或多个字符。处理单元1204进一步被配置为检测(例如,使用检测单元1210)触敏显示器单元上的输入。处理单元1204进一步被配置为确定(例如,使用确定单元1208)输入是否表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符。处理单元1204进一步被配置为依照确定输入表示用户选择多个建议的一个或多个字符中的一个建议的一个或多个字符,使得能够在消息记录中显示(例如,使用显示器启用单元1206)多个建议的一个或多个字符中所选择的一个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:检测(例如,使用检测单元1210)触敏显示器单元上的第二输入,第二输入表示用户选择确认启示;以及响应于检测到第二输入,向第一用户发送(例如,使用发送单元1212)所选择的一个或多个字符。
在一些实施例中,使得能够显示(例如,使用显示器启用单元1206)虚拟键盘,虚拟键盘包括若干字符键;检测(例如,使用检测单元1210)表示虚拟键盘上的一个或多个接触的键盘输入;以及响应于检测到键盘输入:停止显示(例如,使用显示器停止单元1214)多个建议的一个或多个字符;并且使得能够基于键盘输入在第三区域中显示(例如,使用显示器启用单元1206)自动校正信息。
在一些实施例中,处理单元1204进一步被配置为:基于至少一个消息中使用的至少一个词语,确定(例如,使用确定单元1208)多个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:标识(例如,使用标识单元1216)至少一个消息中词语“或”的使用;标识(例如,使用标识单元1216)紧接在词语“或”之前出现的在前词语;以及标识(例如,使用标识单元1216)紧接在词语“或”之后出现的后续词语,其中:使得能够显示多个建议的一个或多个字符包括使得能够显示至少在前词语和后续词语。
在一些实施例中,处理单元1204进一步被配置为:基于至少一个消息中使用的标点符号,确定(例如,使用确定单元1208)多个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:确定(例如,使用确定单元1208)至少一个消息是否包含疑问句;以及依照确定至少一个消息包含疑问句,使得能够显示(例如,使用显示器启用单元1206)至少“是”和“否”作为多个建议的一个或多个字符的一部分。
在一些实施例中,处理单元1204进一步被配置为:基于至少第一用户的身份,确定(例如,使用确定单元1208)多个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:标识(例如,使用标识单元1216)向第一用户最频繁发送的消息,其中:使得能够显示(例如,使用显示器启用单元1206)多个建议的一个或多个字符包括使得能够显示最频繁发送的消息。
在一些实施例中,处理单元1204进一步被配置为:标识(例如,使用标识单元1216)向第一用户最近发送的消息,并且其中使得能够显示(例如,使用显示器启用单元1206)多个建议的一个或多个字符包括使得能够显示最近发送的消息中的至少一个。
在一些实施例中,处理单元1204进一步被配置为:基于至少第一用户的位置,确定(例如,使用确定单元1208)多个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:确定(例如,使用确定单元1208)电子设备的位置,以及使得能够显示(例如,使用显示器启用单元1206)用于向第一用户发送位置作为消息的启示。
在一些实施例中,处理单元1204进一步被配置为:基于电子设备中存储的至少一个日历条目,确定(例如,使用确定单元1208)多个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:基于从第一用户接收的消息而获得(例如,使用获得单元1218)日历条目;以及使得能够显示(例如,使用显示器启用单元1206)用于向第一用户发送所获得的日历条目的至少一部分作为消息的启示。
在一些实施例中,处理单元1204进一步被配置为:基于至少在至少一个消息中使用的敬语,确定(例如,使用确定单元1208)多个建议的一个或多个字符。
在一些实施例中,处理单元1204进一步被配置为:获得(例如,使用获得单元1218)电子设备上存储的多个联系人姓名;检测(例如,使用检测单元1210)至少一个消息中多个联系人姓名中的联系人姓名的使用;获得(例如,使用获得单元1218)与所使用的联系人姓名对应的联系信息;以及使得能够显示(例如,使用显示器启用单元1206)用于向第二用户发送所获得的联系信息的至少一部分作为消息的启示。
在一些实施例中,处理单元1204进一步被配置为:使得能够显示(例如,使用显示器启用单元1206)用于呼叫与所获得的联系信息相关联的电话号码的启示。
在一些实施例中,处理单元1204进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1220);以及依照确定该数目超过预定阈值,使得能够显示(例如,使用显示器启用单元1206)用于呼叫第一用户的启示。
在一些实施例中,处理单元1204进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1220);以及依照确定该数目超过预定阈值,使得能够显示(例如,使用显示器启用单元1206)用于与第一用户视频会议的启示。
在一些实施例中,处理单元1204进一步被配置为:将建议的一个或多个字符排名(例如,使用排名单元1222);以及使得能够在所显示的建议的一个或多个字符之中的最中心位置中显示(例如,使用显示器启用单元1206)排名最高的字符。
在一些实施例中,多个建议的一个或多个字符包括第一词语或短语、第二词语或短语和第三词语或短语。在一些实施例中,多个建议的一个或多个字符由第一词语或短语、第二词语或短语和第三词语或短语构成。在一些实施例中,多个建议的一个或多个字符包括至少一个表情符号。在一些实施例中,至少一个消息是从第一用户最近接收的消息。
上面参照图7描述的操作可选地由图1A-1B或图12中描绘的部件来实现。例如,显示操作702、确定操作704和检测操作708可以由事件分类器170、事件识别器180和事件处理机190来实现。事件分类器170中的事件监控器171检测触敏显示器112上的接触,并且事件调度器模块174向应用136-1递送事件信息。应用136-1的相应事件识别器180比较事件信息与相应事件定义186,并且确定触敏表面上第一位置处的第一接触是否对应于预定义事件或子事件(诸如激活用户接口上的启示)。当检测到相应预定义事件或子事件时,事件识别器180激活与事件或子事件的检测相关联的事件处理机190。事件处理机190可以利用或调用数据更新器176或对象更新器177以更新应用内部状态192。在一些实施例中,事件处理机190访问相应GUI更新器178以更新应用显示什么。相似地,本领域普通技术人员将清楚,如何可以基于图1A-1B中描绘的部件来实现其它处理。
依照一些实施例,图13示出依照各种所描述实施例的原理配置的电子设备1300的示例性功能框图。依照一些实施例,电子设备1300的功能块被配置为执行上面描述的技术。设备1300的功能块可选地由硬件、软件或者硬件和软件的组合来实现,以执行各种所描述示例的原理。本领域技术人员理解的是,图13中描述的功能块可选地被组合或分离成子块,以实现各种所描述示例的原理。因此,本文中的描述可选地支持本文所描述的功能块的任何可能的组合或分离或其它定义。
如图13所示,电子设备1300包括:触敏显示器单元1302,被配置为显示对象和接收接触;以及处理单元1304,耦合到触敏显示器单元1302。在一些实施例中,处理单元1304包括显示器启用单元1306、确定单元1308、检测单元1310、发送单元1312、显示器停止单元1314、标识单元1316、获得单元1318、计数单元1320和排名单元1322。
处理单元1304被配置为:使得能够在显示器的第一区域中(例如,使用显示器启用单元1306)显示消息记录,消息记录包括来自至少第一用户的至少一个消息;使得能够在显示器的第二区域中(例如,使用显示器启用单元1306)显示虚拟键盘,虚拟键盘包括若干字符键;以及使得能够在显示器的第三区域中(例如,使用显示器启用单元1306)显示多个建议的一个或多个字符,至少部分地基于从第一用户接收的至少一个消息的内容来确定多个建议的字符。
在一些实施例中,处理单元1304进一步被配置为:使得能够(例如,使用显示器启用单元1306)显示与第一和第二区域中的至少一个区域邻接的第三区域。
在一些实施例中,处理单元1304进一步被配置为:使得能够(例如,使用显示器启用单元1306)显示与第一区域和第二区域邻接的第三区域。
在一些实施例中,处理单元1304进一步被配置为:检测(例如,使用检测单元1310)表示从所显示的多个一个或多个字符用户选择建议的一个或多个字符的输入;以及响应于检测到输入,使得能够将所选择的建议的一个或多个字符(例如,使用显示器启用单元1306)显示到第一区中的消息记录中。
在一些实施例中,处理单元1304进一步被配置为:检测(例如,使用检测单元1310)表示用户选择确认启示的第二输入;以及响应于检测到第二输入,向第一用户发送(例如,使用发送单元1312)所选择的建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:检测(例如,使用检测单元1310)表示虚拟键盘上的一个或多个接触的键盘输入;响应于检测到键盘输入:停止显示(例如,使用显示器停止单元1314)多个建议的一个或多个字符;并且使得能够基于键盘输入在第三区域中(例如,使用显示器启用单元1306)显示自动校正信息。
在一些实施例中,处理单元1304进一步被配置为:基于至少一个消息中使用的至少一个词语,确定(例如,使用确定单元1308)多个建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:标识(例如,使用标识单元1316)至少一个消息中词语“或”的使用;标识(例如,使用标识单元1316)紧接在词语“或”之前出现的在前词语;以及标识(例如,使用标识单元1316)紧接在词语“或”之后出现的后续词语,其中:使得能够显示多个建议的一个或多个字符包括使得能够显示至少在前词语和后续词语。
在一些实施例中,处理单元1304进一步被配置为:基于至少一个消息中使用的标点符号,确定(例如,使用确定单元1308)多个建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:确定(例如,使用确定单元1308)至少一个消息是否包含疑问句;以及依照确定至少一个消息包含疑问句,使得能够(例如,使用显示器启用单元1306)显示至少“是”和“否”作为多个建议的一个或多个字符的一部分。
在一些实施例中,处理单元1304进一步被配置为:基于至少第一用户的身份,确定(例如,使用确定单元1308)多个建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:标识(例如,使用标识单元1316)向第一用户最频繁发送的消息,其中:显示多个建议的一个或多个字符包括显示最频繁发送的消息。
在一些实施例中,处理单元1304进一步被配置为:标识(例如,使用标识单元1316)向第一用户最近发送的消息,并且其中:显示多个建议的一个或多个字符包括显示最近发送的消息中的至少一个。
在一些实施例中,处理单元1304进一步被配置为:基于至少第一用户的位置,确定(例如,使用确定单元1308)多个建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:确定(例如,使用确定单元1308)电子设备的位置,以及使得能够(例如,使用显示器启用单元1306)显示用于向第一用户发送位置作为消息的启示。
在一些实施例中,处理单元1304进一步被配置为:基于电子设备中存储的至少一个日历条目,确定(例如,使用确定单元1308)多个建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:基于从第一用户接收的消息而获得(例如,使用获得单元1318)日历条目;以及使得能够(例如,使用显示器启用单元1306)显示用于向第一用户发送所获得的日历条目的至少一部分作为消息的启示。
在一些实施例中,处理单元1304进一步被配置为:基于至少在至少一个消息中使用的敬语,确定(例如,使用确定单元1308)多个建议的一个或多个字符。
在一些实施例中,处理单元1304进一步被配置为:获得(例如,使用获得单元1318)电子设备上存储的多个联系人姓名;检测(例如,使用检测单元1310)至少一个消息中多个联系人姓名中的联系人姓名的使用;获得(例如,使用获得单元1318)与所使用的联系人姓名对应的联系信息;以及使得能够(例如,使用显示器启用单元1306)显示用于向第二用户发送所获得的联系信息的至少一部分作为消息的启示。
在一些实施例中,处理单元1304进一步被配置为:使得能够(例如,使用显示器启用单元1306)显示用于呼叫与所获得的联系信息相关联的电话号码的启示。
在一些实施例中,处理单元1304进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1320);以及依照确定该数目超过预定阈值,使得能够(例如,使用显示器启用单元1306)显示用于呼叫第一用户的启示。
在一些实施例中,处理单元1304进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1320);以及依照确定该数目超过预定阈值,使得能够(例如,使用显示器启用单元1306)显示用于与第一用户视频会议的启示。
在一些实施例中,处理单元1304进一步被配置为:将建议的一个或多个字符排名(例如,使用排名单元1322);以及使得能够在所显示的建议的一个或多个字符之中的最中心位置中(例如,使用显示器启用单元1306)显示排名最高的字符。
在一些实施例中,多个建议的一个或多个字符包括第一词语或短语、第二词语或短语和第三词语或短语。在一些实施例中,多个建议的一个或多个字符由第一词语或短语、第二词语或短语和第三词语或短语构成。在一些实施例中,多个建议的一个或多个字符包括至少一个表情符号。在一些实施例中,至少一个消息是从第一用户最近接收的消息。
上面参照图8描述的操作可选地由图1A-1B或图13中描绘的部件来实现。例如,显示操作802和检测操作808可以由事件分类器170、事件识别器180和事件处理机190来实现。事件分类器170中的事件监控器171检测触敏显示器112上的接触,并且事件调度器模块174向应用136-1递送事件信息。应用136-1的相应事件识别器180比较事件信息与相应事件定义186,并且确定触敏表面上第一位置处的第一接触是否对应于预定义事件或子事件(诸如激活用户接口上的启示)。当检测到相应预定义事件或子事件时,事件识别器180激活与事件或子事件的检测相关联的事件处理机190。事件处理机190可以利用或调用数据更新器176或对象更新器177以更新应用内部状态192。在一些实施例中,事件处理机190访问相应GUI更新器178以更新应用显示什么。相似地,本领域普通技术人员将清楚,如何可以基于图1A-1B中描绘的部件来实现其它处理。
依照一些实施例,图14示出依照各种所描述实施例的原理配置的电子设备1400的示例性功能框图。依照一些实施例,电子设备1400的功能块被配置为执行上面描述的技术。设备1400的功能块可选地由硬件、软件或者硬件和软件的组合来实现,以执行各种所描述示例的原理。本领域技术人员理解的是,图14中描述的功能块可选地被组合或分离成子块,以实现各种所描述示例的原理。因此,本文中的描述可选地支持本文所描述的功能块的任何可能的组合或分离或其它定义。
如图14所示,电子设备1400包括:触敏显示器单元1402,被配置为显示对象和接收接触;以及处理单元1404,耦合到触敏显示器单元1402。在一些实施例中,处理单元1404包括显示器启用单元1406、确定单元1408、检测单元1410、发送单元1412、显示器停止单元1414、标识单元1416、获得单元1418、计数单元1420、排名单元1422和显示器代替单元1424。
处理单元1404被配置为:使得能够显示(例如,使用显示器启用单元1406)消息记录,消息记录包括来自至少第一用户的至少一个消息;至少部分地基于至少一个消息,确定(例如,使用确定单元1408)多个建议的一个或多个字符;以及使得能够在触敏显示器单元上的第一区域中显示(例如,使用显示器启用单元1406)多个建议的一个或多个字符中的第一建议的一个或多个字符,其中第一区域是与消息记录的背景视觉上区分开来的邻接区域。
在一些实施例中,处理单元1404进一步被配置为:检测(例如,使用检测单元1410)表示用户选择第一建议的一个或多个字符的输入;以及响应于检测到输入,向第一用户发送(例如,使用发送单元1412)建议响应。
在一些实施例中,处理单元1404进一步被配置为:使得能够显示(例如,使用显示器启用单元1406)文本输入区;检测(例如,使用检测单元1410)表示文本输入区上的接触的输入;以及响应于检测到输入,使得能够显示(例如,使用显示器启用单元1406)虚拟键盘,虚拟键盘包括若干字符键。
在一些实施例中,处理单元1404进一步被配置为:检测(例如,使用检测单元1410)表示虚拟键盘上的一个或多个接触的键盘输入;以及响应于检测到键盘输入,停止显示(例如,使用显示器停止单元1414)第一建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:使得能够基于键盘输入显示(例如,使用显示器启用单元1406)自动校正信息。
在一些实施例中,处理单元1404进一步被配置为:响应于检测到输入,停止显示(例如,使用显示器停止单元1414)第一建议的一个或多个字符。
在一些实施例中,第一区域具有虚线轮廓。
在一些实施例中,处理单元1404进一步被配置为:检测(例如,使用检测单元1410)表示用户选择第一建议的一个或多个字符的输入;以及响应于检测到输入,用实线轮廓代替(例如,使用显示器代替单元1424)第一区域的虚线轮廓。
在一些实施例中,处理单元1404进一步被配置为:使得能够在触敏显示器单元上的第二区域中显示(例如,使用显示器启用单元1406)多个建议的一个或多个字符中的第二建议的一个或多个字符,其中第二区域是与消息记录的背景和第一区域视觉上区分开来的邻接区域;检测(例如,使用检测单元1410)表示用户选择第一建议的一个或多个字符的输入;以及响应于检测到输入,停止显示(例如,使用显示器停止单元1414)第二区域和第二建议的一个或多个字符。
在一些实施例中,第一区域是消息气泡。
在一些实施例中,处理单元1404进一步被配置为:基于至少一个消息中使用的至少一个词语,确定(例如,使用确定单元1408)多个建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:标识(例如,使用标识单元1416)至少一个消息中词语“或”的使用;标识(例如,使用标识单元1416)紧接在词语“或”之前出现的在前词语;以及标识(例如,使用标识单元1416)紧接在词语“或”之后出现的后续词语,其中:使得能够显示多个建议的一个或多个字符包括使得能够显示至少在前词语和后续词语。
在一些实施例中,处理单元1404进一步被配置为:基于至少一个消息中使用的标点符号,确定(例如,使用确定单元1408)多个建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:确定(例如,使用确定单元1408)至少一个消息是否包含疑问句;以及依照确定至少一个消息包含疑问句,使得能够显示(例如,使用显示器启用单元1406)至少“是”和“否”作为多个建议的一个或多个字符的一部分。
在一些实施例中,处理单元1404进一步被配置为:基于至少第一用户的身份,确定(例如,使用确定单元1408)多个建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:标识(例如,使用标识单元1416)向第一用户最频繁发送的消息,其中:使得能够显示多个建议的一个或多个字符包括使得能够显示最频繁发送的消息。
在一些实施例中,处理单元1404进一步被配置为:标识(例如,使用标识单元1416)向第一用户最近发送的消息,并且其中:使得能够显示多个建议的一个或多个字符包括使得能够显示最近发送的消息中的至少一个。
在一些实施例中,处理单元1404进一步被配置为:基于至少第一用户的位置,确定(例如,使用确定单元1408)多个建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:确定(例如,使用确定单元1408)电子设备的位置,以及使得能够显示(例如,使用显示器启用单元1406)用于向第一用户发送位置作为消息的启示。
在一些实施例中,处理单元1404进一步被配置为:基于电子设备中存储的至少一个日历条目,确定(例如,使用确定单元1408)多个建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:基于从第一用户接收的消息而获得(例如,使用获得单元1418)日历条目;以及使得能够显示(例如,使用显示器启用单元1406)用于向第一用户发送所获得的日历条目的至少一部分作为消息的启示。
在一些实施例中,处理单元1404进一步被配置为:基于至少在至少一个消息中使用的敬语,确定(例如,使用确定单元1408)多个建议的一个或多个字符。
在一些实施例中,处理单元1404进一步被配置为:获得(例如,使用获得单元1418)电子设备上存储的多个联系人姓名;检测(例如,使用检测单元1410)至少一个消息中多个联系人姓名中的联系人姓名的使用;获得(例如,使用获得单元1418)与所使用的联系人姓名对应的联系信息;以及使得能够显示(例如,使用显示器启用单元1406)用于向第二用户发送所获得的联系信息的至少一部分作为消息的启示。
在一些实施例中,处理单元1404进一步被配置为:使得能够显示(例如,使用显示器启用单元1406)用于呼叫与所获得的联系信息相关联的电话号码的启示。
在一些实施例中,处理单元1404进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1420);以及依照确定该数目超过预定阈值,使得能够显示(例如,使用显示器启用单元1406)用于呼叫第一用户的启示。
在一些实施例中,处理单元1404进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1420);以及依照确定该数目超过预定阈值,使得能够显示(例如,使用显示器启用单元1406)用于与第一用户视频会议的启示。
在一些实施例中,处理单元1404进一步被配置为:将建议的一个或多个字符排名(例如,使用排名单元1422);以及使得能够在所显示的建议的一个或多个字符之中的最中心位置中显示(例如,使用显示器启用单元1406)排名最高的字符。
在一些实施例中,多个建议的一个或多个字符包括第一词语或短语、第二词语或短语和第三词语或短语。在一些实施例中,多个建议的一个或多个字符由第一词语或短语、第二词语或短语和第三词语或短语构成。在一些实施例中,多个建议的一个或多个字符包括至少一个表情符号。在一些实施例中,至少一个消息是从第一用户最近接收的消息。
上面参照图9描述的操作可选地由图1A至图1B或图14中描绘的部件来实现。例如,显示操作902、确定操作904和检测操作908可以由事件分类器170、事件识别器180和事件处理机190来实现。事件分类器170中的事件监控器171检测触敏显示器112上的接触,并且事件调度器模块174向应用136-1递送事件信息。应用136-1的相应事件识别器180比较事件信息与相应事件定义186,并且确定触敏表面上第一位置处的第一接触是否对应于预定义事件或子事件(诸如激活用户接口上的启示)。当检测到相应预定义事件或子事件时,事件识别器180激活与事件或子事件的检测相关联的事件处理机190。事件处理机190可以利用或调用数据更新器176或对象更新器177以更新应用内部状态192。在一些实施例中,事件处理机190访问相应GUI更新器178以更新应用显示什么。相似地,本领域普通技术人员将清楚,如何可以基于图1A至图1B中描绘的部件来实现其它处理。
依照一些实施例,图15示出依照各种所描述实施例的原理配置的电子设备1500的示例性功能框图。依照一些实施例,电子设备1500的功能块被配置为执行上面描述的技术。设备1500的功能块可选地由硬件、软件或者硬件和软件的组合来实现,以执行各种所描述示例的原理。本领域技术人员理解的是,图15中描述的功能块可选地被组合或分离成子块,以实现各种所描述示例的原理。因此,本文中的描述可选地支持本文所描述的功能块的任何可能的组合或分离或其它定义。
如图15所示,电子设备1500包括:触敏显示器单元1502,被配置为显示图形用户接口和接收接触;以及处理单元1504,耦合到触敏显示器单元1502。在一些实施例中,处理单元1504包括显示器启用单元1506、确定单元1508、检测单元1510、发送单元1512、显示器停止单元1514、标识单元1516、获得单元1518、计数单元1520和排名单元1522。
处理单元1504被配置为:使得能够(例如,使用显示器启用单元1506)显示消息记录,消息记录包括来自至少第一用户的至少一个消息;至少部分地基于至少一个消息,确定(例如,使用确定单元1508)多个建议的一个或多个字符;以及使得能够在消息记录的底部显示(例如,使用显示器启用单元1506)表示多个建议的一个或多个字符中的第一建议的一个或多个字符的第一启示。
在一些实施例中,处理单元1504进一步被配置为:检测(例如,使用检测单元1510)表示用户选择第一启示的输入;以及响应于检测到输入,向第一用户发送(例如,使用发送单元1512)第一建议响应。
在一些实施例中,处理单元1504进一步被配置为:响应于检测到输入,使得能够在消息记录中显示(例如,使用显示器启用单元1506)第一建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:响应于检测到输入,使得能够在消息记录的第一区域中显示(例如,使用显示器启用单元1506)第一建议的一个或多个字符,其中第一区域是与消息记录的背景视觉上区分开来的邻接区域。
在一些实施例中,处理单元1504进一步被配置为:响应于检测到输入,停止显示(例如,使用显示器停止单元1514)第一建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:使得能够显示(例如,使用显示器启用单元1506)表示多个建议的一个或多个字符中的第二建议的一个或多个字符的第二启示;检测(例如,使用检测单元1510)表示用户选择第一启示的输入;以及响应于检测到输入,停止显示(例如,使用显示器停止单元1514)第二启示。
在一些实施例中,第一区域是消息气泡。
在一些实施例中,处理单元1504进一步被配置为:基于至少一个消息中使用的至少一个词语,确定(例如,使用确定单元1508)多个建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:标识(例如,使用标识单元1516)至少一个消息中词语“或”的使用;标识(例如,使用标识单元1516)紧接在词语“或”之前出现的在前词语;以及标识(例如,使用标识单元1516)紧接在词语“或”之后出现的后续词语,其中:使得能够显示多个建议的一个或多个字符包括使得能够显示至少在前词语和后续词语。
在一些实施例中,处理单元1504进一步被配置为:基于至少一个消息中使用的标点符号,确定(例如,使用确定单元1508)多个建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:确定(例如,使用确定单元1508)至少一个消息是否包含疑问句;以及依照确定至少一个消息包含疑问句,使得能够显示(例如,使用显示器启用单元1506)至少“是”和“否”作为多个建议的一个或多个字符的一部分。
在一些实施例中,处理单元1504进一步被配置为:基于至少第一用户的身份,确定(例如,使用确定单元1508)多个建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:标识(例如,使用标识单元1516)向第一用户最频繁发送的消息,其中:使得能够显示多个建议的一个或多个字符包括使得能够显示最频繁发送的消息。
在一些实施例中,处理单元1504进一步被配置为:标识(例如,使用标识单元1516)向第一用户最近发送的消息,并且其中:使得能够显示多个建议的一个或多个字符包括使得能够显示最近发送的消息中的至少一个。
在一些实施例中,处理单元1504进一步被配置为:基于至少第一用户的位置,确定(例如,使用确定单元1508)多个建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:确定(例如,使用确定单元1508)电子设备的位置,以及使得能够显示(例如,使用显示器启用单元1506)用于向第一用户发送位置作为消息的启示。
在一些实施例中,处理单元1504进一步被配置为:基于电子设备中存储的至少一个日历条目,确定(例如,使用确定单元1508)多个建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:基于从第一用户接收的消息而获得(例如,使用获得单元1518)日历条目;以及使得能够显示(例如,使用显示器启用单元1506)用于向第一用户发送所获得的日历条目的至少一部分作为消息的启示。
在一些实施例中,处理单元1504进一步被配置为:基于至少在至少一个消息中使用的敬语,确定(例如,使用确定单元1508)多个建议的一个或多个字符。
在一些实施例中,处理单元1504进一步被配置为:获得(例如,使用获得单元1518)电子设备上存储的多个联系人姓名;检测(例如,使用检测单元1510)至少一个消息中多个联系人姓名中的联系人姓名的使用;获得(例如,使用获得单元1518)与所使用的联系人姓名对应的联系信息;以及使得能够显示(例如,使用显示器启用单元1506)用于向第二用户发送所获得的联系信息的至少一部分作为消息的启示。
在一些实施例中,处理单元1504进一步被配置为:使得能够显示(例如,使用显示器启用单元1506)用于呼叫与所获得的联系信息相关联的电话号码的启示。
在一些实施例中,处理单元1504进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1520);以及依照确定该数目超过预定阈值,使得能够显示(例如,使用显示器启用单元1506)用于呼叫第一用户的启示。
在一些实施例中,处理单元1504进一步被配置为:对在时间间隔内从第一用户接收的消息的数目进行计数(例如,使用计数单元1520);以及依照确定该数目超过预定阈值,使得能够显示(例如,使用显示器启用单元1506)用于与第一用户视频会议的启示。
在一些实施例中,处理单元1504进一步被配置为:将建议的一个或多个字符排名(例如,使用排名单元1522);以及使得能够在所显示的建议的一个或多个字符之中的最中心位置中显示(例如,使用显示器启用单元1506)排名最高的字符。
在一些实施例中,多个建议的一个或多个字符包括第一词语或短语、第二词语或短语和第三词语或短语。在一些实施例中,多个建议的一个或多个字符由第一词语或短语、第二词语或短语和第三词语或短语构成。在一些实施例中,多个建议的一个或多个字符包括至少一个表情符号。在一些实施例中,至少一个消息是从第一用户最近接收的消息。
上面参照图10描述的操作可选地由图1A至图1B或图15中描绘的部件来实现。例如,显示操作1002、确定操作1004和检测操作1008可以由事件分类器170、事件识别器180和事件处理机190来实现。事件分类器170中的事件监控器171检测触敏显示器112上的接触,并且事件调度器模块174向应用136-1递送事件信息。应用136-1的相应事件识别器180比较事件信息与相应事件定义186,并且确定触敏表面上第一位置处的第一接触是否对应于预定义事件或子事件(诸如,激活用户接口上的启示)。当检测到相应预定义事件或子事件时,事件识别器180激活与事件或子事件的检测相关联的事件处理机190。事件处理机190可以利用或调用数据更新器176或对象更新器177以更新应用内部状态192。在一些实施例中,事件处理机190访问相应GUI更新器178以更新应用显示什么。相似地,本领域普通技术人员将清楚,如何可以基于图1A-1B中描绘的部件来实现其它处理。
为了解释的目的,前述描述已经参照具体实施例进行了描述。然而,以上说明性讨论并不旨在于是穷举式或者将本发明限于所公开的精确形式。鉴于以上教导,许多修改和变化是可能的。选择和描述实施例以便最好地解释本发明的原理及其实际应用,以由此使得本领域技术人员能够通过适合于设想的特定用途的各种修改而最好地利用本发明和各种实施例。

Claims (48)

1.一种方法,包括:
在具有触敏显示器的电子设备处:
显示消息记录,所述消息记录包括来自至少第一用户的至少一个消息;
至少部分地基于所述至少一个消息,确定多个建议的一个或多个字符;
在所述触敏显示器上,显示所述多个建议的一个或多个字符;
检测所述触敏显示器上的输入;
确定所述输入是否表示用户选择所述多个建议的一个或多个字符中的一个建议的一个或多个字符;以及
依照确定所述输入表示用户选择所述多个建议的一个或多个字符中的一个建议的一个或多个字符,在所述消息记录中显示所述多个建议的一个或多个字符中所选择的所述一个建议的一个或多个字符。
2.根据权利要求1所述的方法,进一步包括:
检测所述触敏显示器上的第二输入,所述第二输入表示用户选择确认启示;以及
响应于检测到所述第二输入,向所述第一用户发送所选择的所述一个或多个字符。
3.根据权利要求1或2中任一项所述的方法,进一步包括:
显示虚拟键盘,所述虚拟键盘包括若干字符键;
检测表示所述虚拟键盘上的一个或多个接触的键盘输入;以及
响应于检测到所述键盘输入:
停止显示所述多个建议的一个或多个字符;并且
在所述第三区域中,基于所述键盘输入,显示自动校正信息。
4.根据权利要求1至3中任一项所述的方法,进一步包括:
基于在所述至少一个消息中使用的至少一个词语,确定所述多个建议的一个或多个字符。
5.根据权利要求1至4中任一项所述的方法,进一步包括:
标识所述至少一个消息中词语“或”的使用;
标识紧接在所述词语“或”之前出现的在前词语;以及
标识紧接在所述词语“或”之后出现的后续词语,其中:
显示所述多个建议的一个或多个字符包括显示至少所述在前词语和所述后续词语。
6.根据权利要求1至5中任一项所述的方法,进一步包括:
基于在所述至少一个消息中使用的标点符号,确定所述多个建议的一个或多个字符。
7.根据权利要求1至6中任一项所述的方法,进一步包括:
确定所述至少一个消息是否包含疑问句;以及
依照确定所述至少一个消息包含疑问句,显示至少“是”和“否”作为所述多个建议的一个或多个字符的一部分。
8.根据权利要求1至7中任一项所述的方法,进一步包括:
基于至少所述第一用户的身份,确定所述多个建议的一个或多个字符。
9.根据权利要求8所述的方法,进一步包括:
标识向所述第一用户的最频繁发送的消息,其中:
显示所述多个建议的一个或多个字符包括显示所述最频繁发送的消息。
10.根据权利要求9所述的方法,进一步包括:
标识向所述第一用户的最近发送的消息,以及其中:
显示所述多个建议的一个或多个字符包括显示所述最近发送的消息中的至少一个最近发送的消息。
11.根据权利要求1至10中任一项所述的方法,进一步包括:
基于至少所述第一用户的位置,确定所述多个建议的一个或多个字符。
12.根据权利要求1至11中任一项所述的方法,进一步包括:
确定所述电子设备的位置,以及
显示用于向所述第一用户发送所述位置作为消息的启示。
13.根据权利要求1至12中任一项所述的方法,进一步包括:
基于所述电子设备中存储的至少一个日历条目,确定所述多个建议的一个或多个字符。
14.根据权利要求1至13中任一项所述的方法,进一步包括:
基于从所述第一用户接收的所述消息,获得日历条目;以及
显示用于向所述第一用户发送获得的所述日历条目的至少一部分作为消息的启示。
15.根据权利要求1至14中任一项所述的方法,进一步包括:
基于至少在所述至少一个消息中使用的敬语,确定所述多个建议的一个或多个字符。
16.根据权利要求1至15中任一项所述的方法,进一步包括:
获得所述电子设备上存储的多个联系人姓名;
检测在所述至少一个消息中对所述多个联系人姓名中的联系人姓名的使用;
获得与使用的所述联系人姓名对应的联系信息;以及
显示用于向第二用户发送获得的所述联系信息的至少一部分作为消息的启示。
17.根据权利要求16所述的方法,进一步包括:
显示用于呼叫与获得的所述联系信息相关联的电话号码的启示。
18.根据权利要求1至17中任一项所述的方法,进一步包括:
对在时间间隔内从所述第一用户接收的消息的数目进行计数;以及
依照确定所述数目超过预定阈值,显示用于呼叫所述第一用户的启示。
19.根据权利要求1至18中任一项所述的方法,进一步包括:
对在时间间隔内从所述第一用户接收的消息的数目进行计数;以及
依照确定所述数目超过预定阈值,显示用于与所述第一用户视频会议的启示。
20.根据权利要求1至19中任一项所述的方法,进一步包括:
将所述建议的一个或多个字符排名;以及
在显示的所述建议的一个或多个字符之中的最中心位置中,显示排名最高的字符。
21.根据权利要求1至20中任一项所述的方法,其中所述多个建议的一个或多个字符包括第一词语或短语、第二词语或短语和第三词语或短语。
22.根据权利要求1至20中任一项所述的方法,其中所述多个建议的一个或多个字符由第一词语或短语、第二词语或短语和第三词语或短语构成。
23.根据权利要求1至20中任一项所述的方法,其中所述多个建议的一个或多个字符包括至少一个表情符号。
24.根据权利要求1至23中任一项所述的方法,其中所述至少一个消息是来自所述第一用户的最近接收的消息。
25.一种电子设备,包括:
触敏显示器单元;
处理单元,耦合到所述触敏显示器单元,所述处理单元被配置为:
使得能够显示消息记录,所述消息记录包括来自至少第一用户的至少一个消息;
至少部分地基于所述至少一个消息,确定多个建议的一个或多个字符;
使得能够在所述触敏显示器单元上,显示所述多个建议的一个或多个字符;
检测所述触敏显示器单元上的输入;
确定所述输入是否表示用户选择所述多个建议的一个或多个字符中的一个建议的一个或多个字符;以及
依照确定所述输入表示用户选择所述多个建议的一个或多个字符中的一个建议的一个或多个字符,使得能够在所述消息记录中显示所述多个建议的一个或多个字符中所选择的所述一个建议的一个或多个字符。
26.根据权利要求25所述的电子设备,其中所述处理单元进一步被配置为:
检测所述触敏显示器单元上的第二输入,所述第二输入表示用户选择确认启示;以及
响应于检测到所述第二输入,向所述第一用户发送所选择的所述一个或多个字符。
27.根据权利要求25或26中任一项所述的电子设备,其中所述处理单元进一步被配置为:
使得能够显示虚拟键盘,所述虚拟键盘包括若干字符键;
检测表示所述虚拟键盘上的一个或多个接触的键盘输入;以及
响应于检测到所述键盘输入:
停止显示(例如,使用显示器停止单元1514)所述多个建议的一个或多个字符;并且
使得能够在所述第三区域中,基于所述键盘输入,显示自动校正信息。
28.根据权利要求25至27中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于所述至少一个消息中使用的至少一个词语,确定所述多个建议的一个或多个字符。
29.根据权利要求25至28中任一项所述的电子设备,其中所述处理单元进一步被配置为:
标识所述至少一个消息中词语“或”的使用;
标识紧接在所述词语“或”之前出现的在前词语;以及
标识紧接在所述词语“或”之后出现的后续词语,其中:
使得能够显示所述多个建议的一个或多个字符包括使得能够显示至少所述在前词语和所述后续词语。
30.根据权利要求25至29中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于所述至少一个消息中使用的标点符号,确定所述多个建议的一个或多个字符。
31.根据权利要求25至30中任一项所述的电子设备,其中所述处理单元进一步被配置为:
确定所述至少一个消息是否包含疑问句;以及
依照确定所述至少一个消息包含疑问句,使得能够显示至少“是”和“否”作为所述多个建议的一个或多个字符的一部分。
32.根据权利要求25至31中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于至少所述第一用户的身份,确定所述多个建议的一个或多个字符。
33.根据权利要求32所述的电子设备,其中所述处理单元进一步被配置为:
标识向所述第一用户的最频繁发送的消息,其中:
使得能够显示所述多个建议的一个或多个字符包括显示所述最频繁发送的消息。
34.根据权利要求33所述的电子设备,其中所述处理单元进一步被配置为:
标识向所述第一用户的最近发送的消息,以及其中:
使得能够显示所述多个建议的一个或多个字符包括显示所述最近发送的消息中的至少一个最近发送的消息。
35.根据权利要求25至34中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于至少所述第一用户的位置,确定所述多个建议的一个或多个字符。
36.根据权利要求25至35中任一项所述的电子设备,其中所述处理单元进一步被配置为:
确定所述电子设备的位置,以及
使得能够显示用于向所述第一用户发送所述位置作为消息的启示。
37.根据权利要求25至36中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于所述电子设备中存储的至少一个日历条目,确定所述多个建议的一个或多个字符。
38.根据权利要求25至37中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于从所述第一用户接收的所述消息,获得日历条目;以及
使得能够显示用于向所述第一用户发送获得的所述日历条目的至少一部分作为消息的启示。
39.根据权利要求25至38中任一项所述的电子设备,其中所述处理单元进一步被配置为:
基于至少所述至少一个消息中使用的敬语,确定所述多个建议的一个或多个字符。
40.根据权利要求25至39中任一项所述的电子设备,其中所述处理单元进一步被配置为:
获得所述电子设备上存储的多个联系人姓名;
检测所述至少一个消息中所述多个联系人姓名中的联系人姓名的使用;
获得与使用的所述联系人姓名对应的联系信息;以及
使得能够显示用于向第二用户发送获得的所述联系信息的至少一部分作为消息的启示。
41.根据权利要求40所述的电子设备,其中所述处理单元进一步被配置为:
使得能够显示用于呼叫与获得的所述联系信息相关联的电话号码的启示。
42.根据权利要求25至41中任一项所述的电子设备,其中所述处理单元进一步被配置为:
对在时间间隔内从所述第一用户接收的消息的数目进行计数;以及
依照确定所述数目超过预定阈值,使得能够显示用于呼叫所述第一用户的启示。
43.根据权利要求25至42中任一项所述的电子设备,其中所述处理单元进一步被配置为:
对在时间间隔内从所述第一用户接收的消息的数目进行计数;以及
依照确定所述数目超过预定阈值,使得能够显示用于与所述第一用户视频会议的启示。
44.根据权利要求25至43中任一项所述的电子设备,其中所述处理单元进一步被配置为:
将所述建议的一个或多个字符排名;以及
使得能够在显示的所述建议的一个或多个字符之中的最中心位置中,显示排名最高的字符。
45.根据权利要求25至44中任一项所述的电子设备,其中所述多个建议的一个或多个字符包括第一词语或短语、第二词语或短语和第三词语或短语。
46.根据权利要求25至44中任一项所述的电子设备,其中所述多个建议的一个或多个字符由第一词语或短语、第二词语或短语和第三词语或短语构成。
47.根据权利要求25至44中任一项所述的电子设备,其中所述多个建议的一个或多个字符包括至少一个表情符号。
48.根据权利要求25至47中任一项所述的电子设备,其中所述至少一个消息是来自所述第一用户的最近接收的消息。
CN201510291041.5A 2014-05-30 2015-05-29 消息中的预制回答 Pending CN105183179A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010883767.9A CN112083815A (zh) 2014-05-30 2015-05-29 消息中的预制回答

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201462005958P 2014-05-30 2014-05-30
US62/005,958 2014-05-30
US201562129790P 2015-03-07 2015-03-07
US62/129,790 2015-03-07
PCT/US2015/032055 WO2015183699A1 (en) 2014-05-30 2015-05-21 Predictive messaging method
USPCT/US2015/032055 2015-05-21

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202010883767.9A Division CN112083815A (zh) 2014-05-30 2015-05-29 消息中的预制回答

Publications (1)

Publication Number Publication Date
CN105183179A true CN105183179A (zh) 2015-12-23

Family

ID=53366285

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201520364899.5U Active CN205038557U (zh) 2014-05-30 2015-05-29 电子设备
CN201510291041.5A Pending CN105183179A (zh) 2014-05-30 2015-05-29 消息中的预制回答
CN202010883767.9A Pending CN112083815A (zh) 2014-05-30 2015-05-29 消息中的预制回答

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201520364899.5U Active CN205038557U (zh) 2014-05-30 2015-05-29 电子设备

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202010883767.9A Pending CN112083815A (zh) 2014-05-30 2015-05-29 消息中的预制回答

Country Status (8)

Country Link
US (4) US20150350118A1 (zh)
CN (3) CN205038557U (zh)
AU (1) AU2015100705B4 (zh)
DE (1) DE202015003891U1 (zh)
DK (2) DK178675B1 (zh)
NL (10) NL2014870B1 (zh)
TW (1) TWI602071B (zh)
WO (1) WO2015183699A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110178132A (zh) * 2017-01-25 2019-08-27 谷歌有限责任公司 使用语言模型对消息中接收到的图像的自动建议响应

Families Citing this family (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
CN113470640B (zh) 2013-02-07 2022-04-26 苹果公司 数字助理的语音触发器
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
WO2014200728A1 (en) 2013-06-09 2014-12-18 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
WO2015020942A1 (en) 2013-08-06 2015-02-12 Apple Inc. Auto-activating smart responses based on activities from remote devices
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
EP3480811A1 (en) 2014-05-30 2019-05-08 Apple Inc. Multi-command single utterance input method
US10565219B2 (en) 2014-05-30 2020-02-18 Apple Inc. Techniques for automatically generating a suggested contact based on a received message
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US20150350118A1 (en) 2014-05-30 2015-12-03 Apple Inc. Canned answers in messages
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
EP3226151A4 (en) * 2014-11-26 2018-07-04 Sony Corporation Information processing device, information processing method, and program
US10085125B2 (en) * 2014-11-28 2018-09-25 Ringcentral, Inc. Message management methods and systems
US10587541B2 (en) * 2014-12-02 2020-03-10 Facebook, Inc. Device, method, and graphical user interface for lightweight messaging
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10003938B2 (en) 2015-08-14 2018-06-19 Apple Inc. Easy location sharing
KR102598273B1 (ko) * 2015-09-01 2023-11-06 삼성전자주식회사 답신 메시지 추천 방법 및 이를 위한 디바이스
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
CN107924256B (zh) * 2015-09-09 2021-03-26 苹果公司 表情符号和预设回复
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses
US9665567B2 (en) * 2015-09-21 2017-05-30 International Business Machines Corporation Suggesting emoji characters based on current contextual emotional state of user
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
KR101712180B1 (ko) * 2015-12-29 2017-03-06 라인 가부시키가이샤 메시지를 송수신하기 위한 컴퓨터로 읽을 수 있는 기록매체에 저장된 프로그램, 방법 및 장치
US11113079B2 (en) * 2016-04-19 2021-09-07 Verizon Media Inc. Mobile assistant
CN105975540A (zh) * 2016-04-29 2016-09-28 北京小米移动软件有限公司 信息显示方法及装置
US10680980B2 (en) 2016-05-10 2020-06-09 Cisco Technology, Inc. Interactive contextual emojis
US11227017B2 (en) * 2016-05-17 2022-01-18 Google Llc Providing suggestions for interaction with an automated assistant in a multi-user message exchange thread
DK180169B1 (en) * 2016-05-18 2020-07-13 Apple Inc Devices, procedures, and graphical messaging user interfaces
BR112018073693A2 (pt) 2016-05-18 2019-02-26 Apple Inc dispositivos, métodos, e interfaces gráficas de usuário para mensagens
US9959037B2 (en) 2016-05-18 2018-05-01 Apple Inc. Devices, methods, and graphical user interfaces for messaging
EP3403201A4 (en) * 2016-06-02 2019-01-09 Samsung Electronics Co., Ltd. METHOD AND ELECTRONIC DEVICE FOR PREDICTING A RESPONSE
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10368208B2 (en) 2016-06-12 2019-07-30 Apple Inc. Layers in messaging applications
RU2718154C1 (ru) * 2016-06-22 2020-03-30 Хуавэй Текнолоджиз Ко., Лтд. Способ и устройство для отображения возможного слова и графический пользовательский интерфейс
US11232136B2 (en) * 2016-06-27 2022-01-25 Google Llc Contextual voice search suggestions
KR102542716B1 (ko) * 2016-07-19 2023-06-14 삼성전자주식회사 문자열에 대응하는 응답 후보 정보를 제공하는 장치 및 방법
US20190332663A1 (en) * 2016-07-22 2019-10-31 Huawei Technologies Co., Ltd. Candidate-item presentation method and terminal device
CN107688398B (zh) * 2016-08-03 2019-09-17 中国科学院计算技术研究所 确定候选输入的方法和装置及输入提示方法和装置
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
CN108075959B (zh) * 2016-11-14 2021-03-12 腾讯科技(深圳)有限公司 一种会话消息处理方法和装置
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
WO2018144833A1 (en) 2017-02-03 2018-08-09 Fasetto, Llc Systems and methods for data storage in keyed devices
US10484317B2 (en) * 2017-02-16 2019-11-19 Facebook, Inc. Techniques for generating messages to entities referenced in a messaging thread
US10659928B2 (en) 2017-02-16 2020-05-19 Facebook, Inc. Techniques for communicating entity references in a messaging thread
US10447642B2 (en) * 2017-02-16 2019-10-15 Facebook, Inc. Techniques for augmenting entity references in a messaging system
WO2018176365A1 (en) 2017-03-31 2018-10-04 Orange Method for displaying a virtual keyboard on a mobile terminal screen
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) * 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
US20180329622A1 (en) * 2017-05-12 2018-11-15 Apple Inc. Portable Computing Input Devices and Methods
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
RU173988U1 (ru) * 2017-07-28 2017-09-25 Открытое акционерное общество "Исток-Аудио Интернэшнл" (ОАО "Исток-Аудио Интернэшнл") Приемник универсальный для системы оповещения
USD859453S1 (en) 2017-08-01 2019-09-10 Google Llc Display screen with an animated graphical user interface
US10949614B2 (en) * 2017-09-13 2021-03-16 International Business Machines Corporation Dynamically changing words based on a distance between a first area and a second area
CN108197560B (zh) * 2017-12-28 2022-06-07 努比亚技术有限公司 人脸图像识别方法、移动终端及计算机可读存储介质
CN110162766B (zh) * 2018-02-12 2023-03-24 深圳市腾讯计算机系统有限公司 词向量更新方法和装置
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10847265B2 (en) 2018-04-06 2020-11-24 Curai, Inc. Systems and methods for responding to healthcare inquiries
US20190312826A1 (en) * 2018-04-06 2019-10-10 Apple Inc. User-specific candidate ranking for outbound messages
WO2019204524A1 (en) * 2018-04-17 2019-10-24 Fasetto, Inc. Device presentation with real-time feedback
DK201870378A1 (en) 2018-05-07 2020-01-13 Apple Inc. DISPLAYING USER INTERFACES ASSOCIATED WITH PHYSICAL ACTIVITIES
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
US10198877B1 (en) 2018-05-23 2019-02-05 Google Llc Providing a communications channel between instances of automated assistants
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10944859B2 (en) 2018-06-03 2021-03-09 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US10984791B2 (en) 2018-11-29 2021-04-20 Hughes Network Systems, Llc Spoken language interface for network management
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
DK201970531A1 (en) 2019-05-06 2021-07-09 Apple Inc Avatar integration with multiple applications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11157089B2 (en) * 2019-12-27 2021-10-26 Hypori Llc Character editing on a physical device via interaction with a virtual device user interface
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11209964B1 (en) * 2020-06-05 2021-12-28 SlackTechnologies, LLC System and method for reacting to messages
US11662886B2 (en) * 2020-07-03 2023-05-30 Talent Unlimited Online Services Private Limited System and method for directly sending messages with minimal user input
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1248744A (zh) * 1998-09-14 2000-03-29 夏普公司 信息处理装置和带有计算机可读回复准备程序的存储媒体
CN1413008A (zh) * 2001-10-12 2003-04-23 致福股份有限公司 自动提供启动及回复短信息的方法
JP2005032160A (ja) * 2003-07-11 2005-02-03 Sony Corp 情報処理装置および情報処理方法、情報処理システム、記憶媒体、並びに、プログラム
US20080009300A1 (en) * 2006-06-14 2008-01-10 Thanh Vuong Handheld Electronic Device and Associated Method Employing a Multiple-Axis Input Device and Arranging Words of an Existing Message Thread in Various Linguistic Categories for Selection During Text Entry
CN101247366A (zh) * 2008-03-31 2008-08-20 腾讯科技(深圳)有限公司 自动回复方法及即时通信客户端
US20080235242A1 (en) * 2007-03-23 2008-09-25 Scott Swanburg Advanced Contact Management in Communications Networks
CN101326523A (zh) * 2005-12-10 2008-12-17 国际商业机器公司 用于实现内容管理系统的电子邮件界面的系统和方法
US20100088302A1 (en) * 2008-10-02 2010-04-08 Avaya Inc. Associating system requests with sms user responses
CN101895623A (zh) * 2009-05-18 2010-11-24 鸿富锦精密工业(深圳)有限公司 手机自动发送短信的方法
CN102055832A (zh) * 2009-10-30 2011-05-11 深圳市友利通电子有限公司 一种手机来电回复处理系统及方法
CN102289431A (zh) * 2011-06-24 2011-12-21 华南理工大学 一种基于自然语言理解并提供短信回复选项的方法
CN103079008A (zh) * 2013-01-07 2013-05-01 北京播思软件技术有限公司 根据短信内容自动生成回复建议的方法和系统
CN103377276A (zh) * 2012-04-16 2013-10-30 宏达国际电子股份有限公司 在对话期间提供建议的方法以及使用所述方法的电子装置
CN205038557U (zh) * 2014-05-30 2016-02-17 苹果公司 电子设备

Family Cites Families (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2206001A (en) 1937-11-18 1940-06-25 Marilyn Sandal Corp Sandal
US3859005A (en) 1973-08-13 1975-01-07 Albert L Huebner Erosion reduction in wet turbines
US4826405A (en) 1985-10-15 1989-05-02 Aeroquip Corporation Fan blade fabrication system
US5880731A (en) * 1995-12-14 1999-03-09 Microsoft Corporation Use of avatars with automatic gesturing and bounded interaction in on-line chat session
US5946647A (en) 1996-02-01 1999-08-31 Apple Computer, Inc. System and method for performing an action on a structure in computer-generated data
JPH09244980A (ja) * 1996-03-05 1997-09-19 Casio Comput Co Ltd 通信データ出力装置
US6169911B1 (en) * 1997-09-26 2001-01-02 Sun Microsystems, Inc. Graphical user interface for a portable telephone
EP2256605B1 (en) 1998-01-26 2017-12-06 Apple Inc. Method and apparatus for integrating manual input
KR100306385B1 (ko) * 1998-09-04 2001-10-19 윤종용 자동 응답 상태표시 및 처리기능을 갖는 컴퓨터 및 자동 응답처리방법
US20030187925A1 (en) * 1998-12-08 2003-10-02 Inala Suman Kumar Software engine for enabling proxy chat-room interaction
US6349299B1 (en) 1998-12-24 2002-02-19 International Business Machines Corporation System and method for storing electronic contact information into an electronic address book
US7793824B2 (en) * 1999-05-25 2010-09-14 Silverbrook Research Pty Ltd System for enabling access to information
ATE369677T1 (de) * 2000-02-29 2007-08-15 Benjamin D Baker Intelligenter rufprozess für ein diskussionsforum
US7216085B1 (en) 2000-07-13 2007-05-08 Ita Software, Inc. Competitive availability tools
US7219302B1 (en) * 2000-07-19 2007-05-15 Everez Systems Limited System and method for organizing, managing, and manipulating desktop objects with an activity-oriented user interface
US7688306B2 (en) 2000-10-02 2010-03-30 Apple Inc. Methods and apparatuses for operating a portable device based on an accelerometer
US7218226B2 (en) 2004-03-01 2007-05-15 Apple Inc. Acceleration-based theft detection system for portable electronic devices
US20020059098A1 (en) * 2000-11-16 2002-05-16 Shinichi Sazawa Method for managing an imaginary store, method for using the imaginary store, and recording medium in which an imaginary store managing program is stored
US20020123359A1 (en) * 2000-12-01 2002-09-05 Multiscience System Pte Limited Network for information transfer for mobile stations
US6677932B1 (en) 2001-01-28 2004-01-13 Finger Works, Inc. System and method for recognizing touch typing under limited tactile feedback conditions
US6570557B1 (en) 2001-02-10 2003-05-27 Finger Works, Inc. Multi-touch system and method for emulating modifier keys via fingertip chords
US6981223B2 (en) * 2001-03-19 2005-12-27 Ecrio, Inc. Method, apparatus and computer readable medium for multiple messaging session management with a graphical user interface
US7278108B2 (en) * 2001-08-10 2007-10-02 Danger, Inc. System and method of displaying multiple pending notifications in a single window
US7774711B2 (en) * 2001-09-28 2010-08-10 Aol Inc. Automatic categorization of entries in a contact list
US7765484B2 (en) * 2001-09-28 2010-07-27 Aol Inc. Passive personalization of lists
US20030078981A1 (en) 2001-10-24 2003-04-24 Infowave Software, Inc. System for and method of populating a contact list on a portable device
JP2003150527A (ja) * 2001-11-05 2003-05-23 Internatl Business Mach Corp <Ibm> チャットシステム、その端末装置及びチャットサーバ並びにプログラム
US6971064B2 (en) * 2001-11-14 2005-11-29 Lite-On Technology Corporation Method for automatically forwarding and replying short message
US7194536B2 (en) * 2001-12-05 2007-03-20 International Business Machines Corporation Apparatus and method for monitoring and analyzing instant messaging account transcripts
US20040078446A1 (en) * 2002-09-17 2004-04-22 Daniell W. Todd Options associated with instant messaging (IM) chat transcripts of IM chat sessions
US8032470B1 (en) * 2003-11-10 2011-10-04 James Ralph Heidenreich System and method to facilitate user thinking about an arbitrary problem with collaboration or social networking system
US7366761B2 (en) * 2003-10-09 2008-04-29 Abaca Technology Corporation Method for creating a whitelist for processing e-mails
US7343394B2 (en) * 2003-03-10 2008-03-11 International Business Machines Corporation Method of managing e-mail messages
US7539699B2 (en) 2003-03-21 2009-05-26 Yahoo! Inc. Apparatus, system and method for use in generating and maintaining an electronic address book
US20050204306A1 (en) * 2003-09-15 2005-09-15 Hideya Kawahara Enhancements for manipulating two-dimensional windows within a three-dimensional display model
US7401294B2 (en) * 2003-11-24 2008-07-15 International Business Machines Corporation Method and system for collaborative web browsing
US7890996B1 (en) * 2004-02-18 2011-02-15 Teros, Inc. Using statistical analysis to generate exception rules that allow legitimate messages to pass through application proxies and gateways
EP1738323A4 (en) * 2004-03-15 2009-02-04 Aol Llc SHARING SOCIAL NETWORK INFORMATION
US20050210181A1 (en) * 2004-03-22 2005-09-22 Bernadette Depke Systems and methods for the identification and/or distribution of music and other forms of useful information
GB2412546B (en) * 2004-03-25 2009-03-04 Samsung Electronics Co Ltd Messaging in a mobile communications network
US7814155B2 (en) * 2004-03-31 2010-10-12 Google Inc. Email conversation management system
US20060025091A1 (en) 2004-08-02 2006-02-02 Matsushita Electric Industrial Co., Ltd Method for creating and using phrase history for accelerating instant messaging input on mobile devices
WO2006120282A1 (en) 2005-05-13 2006-11-16 Nokia Corporation Method for inputting characters in electronic device
EP1920393A2 (en) * 2005-07-22 2008-05-14 Yogesh Chunilal Rathod Universal knowledge management and desktop search system
US8509827B2 (en) * 2005-09-21 2013-08-13 Buckyball Mobile Inc. Methods and apparatus of context-data acquisition and ranking
TW200742357A (en) 2005-12-21 2007-11-01 Koninkl Philips Electronics Nv Mobile device and method for sending a message from a mobile device
US7657849B2 (en) 2005-12-23 2010-02-02 Apple Inc. Unlocking a device by performing gestures on an unlock image
US20080040683A1 (en) * 2006-08-11 2008-02-14 David Walsh Multi-pane graphical user interface with common scroll control
US9304675B2 (en) * 2006-09-06 2016-04-05 Apple Inc. Portable electronic device for instant messaging
US7664632B2 (en) * 2006-11-10 2010-02-16 Research In Motion Limited Method of using visual separators to indicate additional character combination choices on a handheld electronic device and associated apparatus
US7698326B2 (en) 2006-11-27 2010-04-13 Sony Ericsson Mobile Communications Ab Word prediction
US20080126075A1 (en) 2006-11-27 2008-05-29 Sony Ericsson Mobile Communications Ab Input prediction
US8676802B2 (en) 2006-11-30 2014-03-18 Oracle Otc Subsidiary Llc Method and system for information retrieval with clustering
US7752553B2 (en) * 2006-12-01 2010-07-06 Red Hat, Inc. Method and system for aggregating and displaying an event stream
US20080140523A1 (en) * 2006-12-06 2008-06-12 Sherpa Techologies, Llc Association of media interaction with complementary data
US8074172B2 (en) * 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US8078978B2 (en) * 2007-10-19 2011-12-13 Google Inc. Method and system for predicting text
US7979067B2 (en) * 2007-02-15 2011-07-12 Yahoo! Inc. Context avatar
US9405830B2 (en) * 2007-02-28 2016-08-02 Aol Inc. Personalization techniques using image clouds
US20090063995A1 (en) * 2007-08-27 2009-03-05 Samuel Pierce Baron Real Time Online Interaction Platform
US8413049B2 (en) * 2007-08-31 2013-04-02 Research In Motion Limited Handheld electronic device and associated method enabling the generation of a proposed character interpretation of a phonetic text input in a text disambiguation environment
US20090149192A1 (en) 2007-12-05 2009-06-11 Sandra Vargas Device Locate Service
US8232973B2 (en) * 2008-01-09 2012-07-31 Apple Inc. Method, device, and graphical user interface providing word recommendations for text input
GB0800925D0 (en) 2008-01-18 2008-02-27 Akuwudike Ugochukwu A web-based natural language communications system and method
GB0807845D0 (en) * 2008-04-30 2008-06-04 Mcevoy Dean N Improvements in and relating to telecommunications
US8341184B2 (en) * 2008-05-07 2012-12-25 Smooth Productions Inc. Communications network system and service provider
US8584031B2 (en) 2008-11-19 2013-11-12 Apple Inc. Portable touch screen device, method, and graphical user interface for using emoji characters
JP5142969B2 (ja) * 2008-12-16 2013-02-13 キヤノン株式会社 印刷処理システム、印刷処理方法、及びコンピュータプログラム
US8539359B2 (en) * 2009-02-11 2013-09-17 Jeffrey A. Rapaport Social network driven indexing system for instantly clustering people with concurrent focus on same topic into on-topic chat rooms and/or for generating on-topic search results tailored to user preferences regarding topic
US8832584B1 (en) * 2009-03-31 2014-09-09 Amazon Technologies, Inc. Questions on highlighted passages
KR101542136B1 (ko) * 2009-03-31 2015-08-05 삼성전자 주식회사 문자 메시지 작성 방법 및 이를 이용한 휴대 단말기
GB2470585A (en) * 2009-05-28 2010-12-01 Nec Corp Using a predictive text module to identify an application or service on a device holding data to be input into a message as text.
US10241644B2 (en) * 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US8583784B2 (en) 2009-06-05 2013-11-12 Palm, Inc. Dynamic communication integration with calendar
US20110083079A1 (en) * 2009-10-02 2011-04-07 International Business Machines Corporation Apparatus, system, and method for improved type-ahead functionality in a type-ahead field based on activity of a user within a user interface
KR101612788B1 (ko) 2009-11-05 2016-04-18 엘지전자 주식회사 이동 단말기 및 그 제어 방법
US8782556B2 (en) * 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
US8451994B2 (en) * 2010-04-07 2013-05-28 Apple Inc. Switching cameras during a video conference of a multi-camera mobile device
US9419810B2 (en) * 2010-04-30 2016-08-16 American Teleconference Services, Ltd. Location aware conferencing with graphical representations that enable licensing and advertising
US20110302249A1 (en) 2010-06-02 2011-12-08 Research In Motion Limited Method for assisted message generation
EP2393046A1 (en) * 2010-06-02 2011-12-07 Research In Motion Limited Method for assisted message generation
US8583148B2 (en) * 2010-06-07 2013-11-12 Nokia Corporation Method and apparatus for suggesting a message segment based on a contextual characteristic in order to draft a message
US20120096389A1 (en) 2010-10-19 2012-04-19 Ran J Flam Integrated web-based workspace with curated tree-structure database schema
US8489625B2 (en) 2010-11-29 2013-07-16 Microsoft Corporation Mobile query suggestions with time-location awareness
WO2012092709A1 (en) * 2011-01-05 2012-07-12 Google Inc. Method and system for facilitating text input
JP2012234341A (ja) 2011-04-28 2012-11-29 Toshiba Corp 映像表示装置およびメニュー画面表示方法
US8850310B2 (en) * 2011-10-11 2014-09-30 Microsoft Corporation Data entry suggestion lists for designated document data entry areas based on data from other document data entry areas
US8738715B2 (en) * 2012-01-31 2014-05-27 Global Relay Communications Inc. System and method for processing messages in a messaging service
US8626748B2 (en) 2012-02-03 2014-01-07 International Business Machines Corporation Combined word tree text visualization system
US8818794B2 (en) 2012-03-26 2014-08-26 Verizon Patent And Licensing Inc. Environment sensitive predictive text entry
US9201510B2 (en) 2012-04-16 2015-12-01 Blackberry Limited Method and device having touchscreen keyboard with visual cues
US9002768B2 (en) 2012-05-12 2015-04-07 Mikhail Fedorov Human-computer interface system
US8972323B2 (en) * 2012-06-14 2015-03-03 Microsoft Technology Licensing, Llc String prediction
KR20140011073A (ko) 2012-07-17 2014-01-28 삼성전자주식회사 텍스트 추천 방법 및 장치
EP2713323A1 (en) * 2012-09-27 2014-04-02 BlackBerry Limited Apparatus and method pertaining to automatically-suggested emoticons
US9244905B2 (en) 2012-12-06 2016-01-26 Microsoft Technology Licensing, Llc Communication context based predictive-text suggestion
GB201322037D0 (en) 2013-12-12 2014-01-29 Touchtype Ltd System and method for inputting images/labels into electronic devices
CN103902630B (zh) * 2012-12-31 2017-08-18 华为技术有限公司 处理消息的方法、终端和系统
US20140215397A1 (en) * 2013-01-29 2014-07-31 Research In Motion Limited Apparatus and Method Pertaining to Predicted-Text Derivatives
EP2767896B1 (en) * 2013-02-14 2019-01-16 LG Electronics Inc. Mobile terminal and method of controlling the mobile terminal
US9274685B2 (en) 2013-03-15 2016-03-01 Google Technology Holdings LLC Systems and methods for predictive text entry for small-screen devices with touch-based two-stage text input
US9558743B2 (en) 2013-03-15 2017-01-31 Google Inc. Integration of semantic context information
US10445115B2 (en) 2013-04-18 2019-10-15 Verint Americas Inc. Virtual assistant focused user interfaces
TWI539361B (zh) * 2013-05-16 2016-06-21 Hsien Wen Chang Method and system for browsing books on a terminal computer
US20150100537A1 (en) * 2013-10-03 2015-04-09 Microsoft Corporation Emoji for Text Predictions
US8996639B1 (en) * 2013-10-15 2015-03-31 Google Inc. Predictive responses to incoming communications
US20150188861A1 (en) * 2013-12-26 2015-07-02 Aaren Esplin Mechanism for facilitating dynamic generation and transmission of canned responses on computing devices
US10050926B2 (en) 2014-02-05 2018-08-14 Facebook, Inc. Ideograms based on sentiment analysis
US10565219B2 (en) 2014-05-30 2020-02-18 Apple Inc. Techniques for automatically generating a suggested contact based on a received message
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1248744A (zh) * 1998-09-14 2000-03-29 夏普公司 信息处理装置和带有计算机可读回复准备程序的存储媒体
CN1413008A (zh) * 2001-10-12 2003-04-23 致福股份有限公司 自动提供启动及回复短信息的方法
JP2005032160A (ja) * 2003-07-11 2005-02-03 Sony Corp 情報処理装置および情報処理方法、情報処理システム、記憶媒体、並びに、プログラム
CN101326523A (zh) * 2005-12-10 2008-12-17 国际商业机器公司 用于实现内容管理系统的电子邮件界面的系统和方法
US20080009300A1 (en) * 2006-06-14 2008-01-10 Thanh Vuong Handheld Electronic Device and Associated Method Employing a Multiple-Axis Input Device and Arranging Words of an Existing Message Thread in Various Linguistic Categories for Selection During Text Entry
US20080235242A1 (en) * 2007-03-23 2008-09-25 Scott Swanburg Advanced Contact Management in Communications Networks
CN101247366A (zh) * 2008-03-31 2008-08-20 腾讯科技(深圳)有限公司 自动回复方法及即时通信客户端
US20100088302A1 (en) * 2008-10-02 2010-04-08 Avaya Inc. Associating system requests with sms user responses
CN101895623A (zh) * 2009-05-18 2010-11-24 鸿富锦精密工业(深圳)有限公司 手机自动发送短信的方法
CN102055832A (zh) * 2009-10-30 2011-05-11 深圳市友利通电子有限公司 一种手机来电回复处理系统及方法
CN102289431A (zh) * 2011-06-24 2011-12-21 华南理工大学 一种基于自然语言理解并提供短信回复选项的方法
CN103377276A (zh) * 2012-04-16 2013-10-30 宏达国际电子股份有限公司 在对话期间提供建议的方法以及使用所述方法的电子装置
CN103079008A (zh) * 2013-01-07 2013-05-01 北京播思软件技术有限公司 根据短信内容自动生成回复建议的方法和系统
CN205038557U (zh) * 2014-05-30 2016-02-17 苹果公司 电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110178132A (zh) * 2017-01-25 2019-08-27 谷歌有限责任公司 使用语言模型对消息中接收到的图像的自动建议响应
CN110178132B (zh) * 2017-01-25 2023-09-19 谷歌有限责任公司 在消息应用中自动建议内容的方法和系统

Also Published As

Publication number Publication date
US11575622B2 (en) 2023-02-07
NL2017009A (en) 2016-09-29
TWI602071B (zh) 2017-10-11
US20240146669A1 (en) 2024-05-02
CN112083815A (zh) 2020-12-15
NL2017005B1 (en) 2018-12-07
NL2016997A (en) 2016-09-29
NL2017011A (en) 2016-09-29
US11895064B2 (en) 2024-02-06
US20150350118A1 (en) 2015-12-03
DK201670430A1 (en) 2016-06-27
NL2016997B1 (en) 2017-04-14
TW201610716A (zh) 2016-03-16
DK178675B1 (en) 2016-10-24
NL2017009B1 (en) 2019-04-04
NL2017007A (en) 2016-09-29
NL2014870A (en) 2016-03-15
NL2016996A (en) 2016-09-29
NL2017003A (en) 2016-09-29
DK201570316A1 (en) 2015-12-14
AU2015100705A4 (en) 2015-06-25
NL2014870B1 (en) 2016-07-25
NL2017002A (en) 2016-09-29
NL2017002B1 (en) 2021-10-04
AU2015100705B4 (en) 2016-01-28
US20230353514A1 (en) 2023-11-02
CN205038557U (zh) 2016-02-17
DK179110B1 (en) 2017-11-06
NL2017012A (en) 2016-09-29
NL2017012B1 (en) 2017-09-20
NL2017011B1 (en) 2017-09-20
NL2016996B1 (en) 2017-09-20
DE202015003891U1 (de) 2015-09-01
NL2017007B1 (en) 2019-03-27
US20200314039A1 (en) 2020-10-01
NL2017005A (en) 2016-09-29
NL2017003B1 (en) 2021-10-05
WO2015183699A1 (en) 2015-12-03

Similar Documents

Publication Publication Date Title
CN205038557U (zh) 电子设备
CN102033698B (zh) 滚动多节文档的方法和装置及多功能设备
CN102763074B (zh) 自动键盘布局确定
CN107636568A (zh) 个性化预测对即时消息的响应
CN104035666B (zh) 具有内容显示模式和显示旋转启发的装置、方法和图形用户接口
CN104133589B (zh) 使用表情字符的便携式触摸屏设备、方法和图形用户界面
CN109196455A (zh) 用于carplay的应用程序快捷方式
CN107408387A (zh) 虚拟助理激活
CN102763077A (zh) 自动显示及隐藏屏幕上键盘
CN102414755A (zh) 用于编辑电子消息中的音频或视频附件的设备、方法和图形用户界面
CN102763058A (zh) 用于存取可选键的装置、方法和图形用户接口
CN102754061A (zh) 用于改变电子文档中的页的装置、方法和图形用户接口
US11693553B2 (en) Devices, methods, and graphical user interfaces for automatically providing shared content to applications
US20230133548A1 (en) Devices, Methods, and Graphical User Interfaces for Automatically Providing Shared Content to Applications
WO2022245599A1 (en) Devices, methods, and graphical user interfaces for automatically providing shared content to applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20151223

RJ01 Rejection of invention patent application after publication