CN111666352B - 结构化建议 - Google Patents

结构化建议 Download PDF

Info

Publication number
CN111666352B
CN111666352B CN202010484773.7A CN202010484773A CN111666352B CN 111666352 B CN111666352 B CN 111666352B CN 202010484773 A CN202010484773 A CN 202010484773A CN 111666352 B CN111666352 B CN 111666352B
Authority
CN
China
Prior art keywords
event
calendar event
suggested
contact
information
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.)
Active
Application number
CN202010484773.7A
Other languages
English (en)
Other versions
CN111666352A (zh
Inventor
D·C·格罗斯
L·Y·杨
S·O·勒梅
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 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 Inc filed Critical Apple Inc
Publication of CN111666352A publication Critical patent/CN111666352A/zh
Application granted granted Critical
Publication of CN111666352B publication Critical patent/CN111666352B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/248Presentation of query results
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • G06F16/287Visualization; Browsing
    • 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
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • 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
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • 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/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • 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/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • 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/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • 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/48Message addressing, e.g. address format or anonymous messages, aliases

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computational Linguistics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及结构化建议。本公开提供了一种基于用户的消息来为用户建议联系人和日历事件的电子设备。该设备可针对联系人和事件信息来分析用户的消息,并且基于这些信息来为用户自动生成或更新建议联系人和日历事件。建议联系人和日历事件可以是可搜索的,就好像是由用户手动输入的一样,并且用户可选择添加或忽略建议联系人和日历事件。

Description

结构化建议
相关申请的交叉引用
本申请是国际申请号为PCT/US2015/033023、国际申请日为2015年5月28日、进入中国国家阶段日期为2016年11月29日、中国国家申请号为201580028663.7、发明名称为“结构化建议”的发明专利申请的分案申请。
本申请要求2014年5月30日提交的名称为“STRUCTURED SUGGESTIONS”的美国临时专利申请序列号62/005,839和2015年5月20日提交的名称为“STRUCTURED SUGGESTIONS”的美国非临时专利申请序列号14/718,049的优先权,每个专利申请的内容特此以引用的方式并入本文以用于所有目的。
技术领域
本公开整体涉及上下文感知计算,并且更具体地讲,涉及识别建议联系人信息和事件信息,并提供给用户。
背景技术
现代电子设备使得用户前所未有地与朋友、同事和各种活动紧密联系在一起。然而,在电子设备上管理联系人和日历事件会很繁琐。例如,添加或更新联系人或日历事件通常需要几个手动步骤。因而,许多用户会疏于维护自己的通讯录和日历,而是选择在需要定位关于某些人员或事件的信息时依赖于对设备上所存储的消息和其他内容的搜索,但是这种搜索非常低效。这会让用户感到沮丧,影响效率。
发明内容
在一些实施方案中,一种建议联系人的方法包括:在电子设备处:接收消息;在所接收的消息中识别实体和与该实体相关联的联系人信息;确定与所识别的实体相关联的联系人不存在于数据库中的多个联系人中;以及响应于该确定,生成与该实体相关联的联系人,所生成的联系人包括联系人信息以及所生成的联系人是建议联系人的指示。
在一些实施方案中,一种建议联系人的方法包括:在电子设备处:接收消息;在所接收的消息中识别实体和与该实体相关联的联系人信息项目;确定与所识别的实体相关联的联系人存在于数据库中的多个联系人中并且确定该联系人不包括所识别的联系人信息项目;以及响应于该确定,更新该联系人以包括该联系人信息项目和该联系人信息项目是建议联系人信息项目的指示。
在一些实施方案中,一种建议联系人的方法包括:在具有显示器的电子设备处:接收消息;在所接收的消息中识别实体和与该实体相关联的联系人信息;生成所识别的联系人信息是建议联系人信息的指示;以及显示对应于与该实体相关联的联系人的第一用户界面,该第一用户界面包括第一用户界面对象,该第一用户界面对象基于所生成的指示来指示所识别的联系人信息是建议联系人信息。
在一些实施方案中,一种建议联系人的方法包括:在具有显示器的电子设备处:接收消息;在所接收的消息中识别实体和与该实体相关联的联系人信息;以及显示对应于所接收的消息的第一用户界面,该第一用户界面包括:第一部分,其包括电子设备所接收到的消息的内容;以及第二部分,其包括:对应于所识别的实体的第一用户界面对象;对应于所识别的联系人信息的第二用户界面对象;以及与所识别的联系人信息相关联的第三用户界面对象,该第三用户界面对象在被选择时致使电子设备将所识别的联系人信息添加到数据库中。
在一些实施方案中,一种建议日历事件的方法包括:在电子设备处:接收消息;在所接收的消息中识别事件信息;以及生成与所识别的事件信息相关联的日历事件,所生成的日历事件包括事件信息以及所生成的日历事件是建议日历事件的指示。
在一些实施方案中,一种建议日历事件的方法包括:在具有显示器的电子设备处:接收消息;在所接收的消息中识别事件信息;以及显示对应于所接收的消息的第一用户界面,该第一用户界面包括:第一部分,其包括电子设备所接收到的消息的内容;以及第二部分,其包括:对应于所识别的事件信息的第一用户界面对象;以及与所识别的事件信息相关联的第二用户界面对象,该第二用户界面对象在被选择时致使电子设备将所识别的事件信息添加到包括多个日历事件的数据库中。
在一些实施方案中,一种建议多个联系人和/或日历事件的方法包括:在具有显示器的电子设备处:接收消息;在所接收的消息中识别联系人信息或事件信息的多个实例;以及显示对应于所接收的消息的第一用户界面,该第一用户界面包括:第一部分,其包括电子设备所接收到的消息的内容;以及第二部分,该第二部分在被选择时致使电子设备显示第二用户界面,该第二用户界面包括所识别的联系人信息或事件信息的多个实例的列表。
附图说明
图1A是示出根据一些实施例的具有触敏显示器的便携式多功能设备的框图。
图1B是示出根据一些实施方案的用于事件处理的示例性部件的框图。
图2示出了根据一些实施方案的具有触摸屏的便携式多功能设备。
图3是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备的框图。
图4A和图4B示出了根据一些实施方案的用于便携式多功能设备上的应用程序菜单的示例性用户界面。
图5A示出了根据一些实施方案的用于建议联系人的示例性数据架构的框图。
图5B示出了根据一些实施方案的用于建议日历事件的示例性数据架构的框图。
图6A至图6G示出了根据一些实施方案的用于提供建议联系人和日历事件的示例性用户界面。
图7A和图7B示出了根据一些实施方案的用于生成建议联系人的示例性过程的流程图。
图8A和图8B示出了根据一些实施方案的使用建议的联系人信息项目更新现有联系人的示例性过程的流程图。
图9A和图9B示出了根据一些实施方案的用于显示具有建议联系人信息的联系人的示例性过程的流程图。
图10示出了根据一些实施方案的建议联系人信息与消息一起显示的示例性过程的流程图。
图11A和图11B示出了根据一些实施方案的用于生成建议日历事件的示例性过程的流程图。
图12示出了根据一些实施方案的建议事件信息与消息一起显示的示例性过程的流程图。
图13示出了根据一些实施方案的多个建议联系人信息或事件信息与消息一起显示的示例性过程的流程图。
图14是根据一些实施方案的电子设备的功能框图。
图15是根据一些实施方案的电子设备的功能框图。
图16是根据一些实施方案的电子设备的功能框图。
图17是根据一些实施方案的电子设备的功能框图。
图18是根据一些实施方案的电子设备的功能框图。
图19是根据一些实施方案的电子设备的功能框图。
图20是根据一些实施方案的电子设备的功能框图。
图21是根据一些实施方案的电子设备的功能框图。
图22是根据一些实施方案的电子设备的功能框图。
具体实施方式
在以下对本公开和实施方案的描述中将引用附图,在附图中以举例的方式示出了可被实施的特定实施方案。应当理解,在不脱离本公开的范围的情况下,可实践其他实施方案和实施例并且可做出变化。
如上文所述,管理电子设备上的联系人和日历事件可能对于用户来讲是非常繁琐的,因为添加或更新联系人和日历事件需要手动执行多个步骤,总共将花费不少的时间。因此,许多用户只是疏于随时更新自己的通讯录和日历,但在以后需要手动搜索自己的设备来查找特定联系人信息或事件信息时,用户还是需要花费时间。这会让用户感到沮丧,影响效率。
本公开提供一种基于消息自动为用户建议联系人和日历事件的电子设备来解决这个问题。这种设备可针对联系人和事件信息来分析用户的消息,并且基于这些信息为用户自动生成或更新建议联系人和日历事件。建议联系人和日历事件可以是可搜索的,就好像是由用户手动输入的一样,并且用户可选择添加或忽略建议联系人和日历事件。这样,用户几乎不费力气便可维护好自己的联系人和日历事件,不仅可节省用户的时间,提高效率,还能生成更有效的人机界面。
1.示例性设备
在下文中,图1A至图1B、图2和图3描述了用于执行用于建议联系人和事件信息的技术的示例性设备。图4A至图4B和图6A至图6G示出了用于建议联系人和事件信息的示例性用户界面。附图中的用户界面还被用于示出下文描述的过程,包括图7A至图13的过程。
尽管以下描述使用术语“第一”、“第二”等来描述各种元件,但这些元件不应受术语的限制。这些术语只是用于将一个元件与另一元件区分开。例如,第一触摸可被命名为第二触摸并且类似地第二触摸可被命名为第一触摸,而不脱离各种所述实施方案的范围。第一触摸和第二触摸两者都是触摸,但是它们不是同一触摸。
在本文中对各种所述实施方案的描述中所使用的术语只是为了描述特定实施方案的目的,而并非旨在进行限制。如在对各种所述实施方案中的描述和所附权利要求书中所使用的那样,单数形式“一个”(“a”,“an”)和“该”旨在也包括复数形式,除非上下文另外明确地指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”、“包含”、“含有”和/或“具有”当在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件和/或其分组。
根据上下文,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
本文描述了电子设备、此类设备的用户界面和使用此类设备的相关联的过程的实施方案。在一些实施方案中,该设备是还包含其他功能诸如PDA和/或音乐播放器功能的便携式通信设备诸如移动电话。便携式多功能设备的示例性实施方案包括但不限于来自Apple Inc(Cupertino,California)的
Figure BDA0002518647340000051
iPod
Figure BDA0002518647340000052
Figure BDA0002518647340000053
设备。任选地使用其他便携式电子设备,诸如具有触敏表面(例如,触摸屏显示器和/或触摸板)的膝上型电脑或平板电脑。还应当理解的是,在一些实施方案中,该设备并非便携式通信设备,而是具有触敏表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而,应当理解,该电子设备任选地包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。
设备可支持多种应用程序,诸如以下应用程序中的一个或多个应用程序:绘图应用程序、呈现应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字视频相机应用程序、web浏览应用程序、数字音乐播放器应用程序、和/或数字视频播放器应用程序。
在设备上执行的各种应用程序任选地使用至少一个共用的物理用户界面设备诸如触敏表面。触敏表面的一种或多种功能以及被显示在设备上的对应信息任选地对于不同应用程序被调整和/或变化和/或在相应应用程序内被调整和/或变化。这样,设备的共用物理架构(诸如触敏表面)任选地利用对于用户而言直观且清楚的用户界面来支持各种应用程序。
现在关注具有触敏显示器的便携式设备的实施方案。图1A是示出根据一些实施方案的具有触敏显示器系统112的便携式多功能设备100的框图。触敏显示器112有时为了方便被叫做“触摸屏”,并且有时可被称为或被叫做“触敏显示器系统”。设备100包括存储器102(其任选地包括一个或多个计算机可读存储介质)、存储器控制器122、一个或多个处理单元(CPU)120、外围设备接口118、RF电路108、音频电路110、扬声器111、麦克风113、输入/输出(I/O)子系统106、其他输入控制设备116和外部端口124。设备100任选地包括一个或多个光学传感器164。设备100任选地包括用于检测设备100(例如,触敏表面,诸如设备100的触敏显示器系统112)上的接触的强度的一个或多个接触强度传感器165。设备100任选地包括用于在设备100上生成触觉输出的一个或多个触觉输出发生器167(例如,在触敏表面诸如设备100的触敏显示器系统112或设备300的触摸板355上生成触觉输出)。这些部件任选地通过一个或多个通信总线或信号线103进行通信。
如在本说明书和权利要求书中所使用的,术语触敏表面上的接触的“强度”是指触敏表面上的接触(例如,手指接触)的力或压力(每单位面积的力),或是指触敏表面上的接触的力或压力的替代物(代用物)。接触的强度具有值范围,该值范围包括至少四个不同的值并且更典型地包括上百个不同的值(例如,至少256个)。接触的强度任选地使用各种方法和各种传感器或传感器的组合来确定(或测量)。例如,在触敏表面下方或相邻于触敏表面的一个或多个力传感器任选地用于测量触敏表面上的不同点处的力。在一些具体实施中,来自多个力传感器的力测量被合并(例如,加权平均数)以确定估计的接触力。类似地,触笔的压敏顶端任选地用于确定触笔在触敏表面上的压力。作为另外一种选择,在触敏表面上所检测到的接触面积的大小和/或其变化、邻近接触的触敏表面的电容和/或其变化和/或邻近接触的触敏表面的电阻和/或其变化任选地用作触敏表面上的接触的力或压力的替代物。在一些具体实施中,接触力或压力的替代物测量直接用于确定是否已超过强度阈值(例如,强度阈值是以与替代物测量对应的单位来描述的)。在一些具体实施中,接触力或压力的替代物测量被转换成估计的力或压力,并且估计的力或压力用于确定是否已超过强度阈值(例如,强度阈值是以压力的单位进行测量的压力阈值)。使用接触的强度作为用户输入的属性,从而允许用户访问用户在实地面积有限的尺寸更小的设备上本来不可访问的附加设备功能,该尺寸更小的设备用于(例如,在触敏显示器上)显示示能表示和/或接收用户输入(例如,经由触敏显示器、触敏表面或物理控件/机械控件诸如旋钮或按钮)。
如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户对触摸敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下,通过物理位移生成的触觉输出将由用户解释为触感,该触感对应于设备或设备的部件的物理特征的所感知的变化。例如,触敏表面(例如,触敏显示器或触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开点击”,即使在通过用户的移动而物理地被按压(例如,被移位)的与触敏表面相关联的物理致动按钮没有移动时。又如,触敏表面的移动任选地由用户解读为或感测为触敏表面的“粗糙度”,即使在触敏表面的光滑度无变化时。虽然由用户对触摸的此类解释将受到用户的个体化感官知觉的限制,但是存在触摸的许多感官知觉是大多数用户共有的。因此,当触觉输出被描述为对应于用户的特定感官知觉(例如,“按下点击”、“松开点击”、“粗糙度”)时,除非另外陈述,否则所生成的触觉输出对应于设备或其部件的物理位移,该物理位移将会生成典型(或普通)用户的感官知觉。
应当理解,设备100仅是便携式多功能设备的一个示例,并且设备100任选地具有比所示出的更多或更少的部件,任选地组合两个或更多个部件,或者任选地具有这些部件的不同配置或布置。图1A中所示的各种部件以硬件、软件、或硬件与软件两者的组合来实现,包括一个或多个信号处理电路和/或专用集成电路。
存储器102可包括一个或多个计算机可读存储介质。该计算机可读存储介质可以是有形的和非暂态的。存储器102可包括高速随机存取存储器并且还可包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备、或其他非易失性固态存储器设备。存储器控制器122可控制设备100的其他部件访问存储器102。
外围设备接口118可被用于将设备的输入外围设备和输出外围设备耦接到CPU120和存储器102。所述一个或多个处理器120运行或执行存储在存储器102中的各种软件程序和/或指令集以执行设备100的各种功能并处理数据。在一些实施方案中,外围设备接口118、CPU 120、和存储器控制器122可在单个芯片诸如芯片104上实现。在一些其他实施方案中,它们可在单独的芯片上实现。
RF(射频)电路108接收并发送也被叫做电磁信号的RF信号。RF电路108将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号与通信网络以及其他通信设备进行通信。RF电路108任选地包括用于执行这些功能的众所周知的电路,包括但不限于天线系统、射频收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模块(SIM)卡、存储器等等。RF电路108任选地通过无线通信与网络以及其他设备进行通信,所述网络为诸如互联网(也被称为万维网(WWW))、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))。RF电路108任选地包括用于检测近场通信(NFC)场的熟知的电路,诸如通过近程通信无线电部件来进行检测。无线通信任选地使用多种通信标准、协议和技术中的任一种通信标准、协议和技术,包括但不限于全球移动通信系统(GSM)、增强型数据GSM环境(EDGE)、高速下行链路分组接入(HSDPA)、高速上行链路分组接入(HSUPA)、演进、纯数据(EV-DO)、HSPA、HSPA+、双单元HSPA(DC-HSPDA)、长期演进(LTE)、近场通信(NFC)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、蓝牙低功耗、无线保真(Wi-Fi)(例如,IEEE 802.11a、IEEE 802.11b、IEEE802.11g、IEEE 802.11n和/或IEEE 802.11ac)、互联网协议语音(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还包括耳麦接口(例如,图2中的212)。耳麦接口提供音频电路110和可移除的音频输入/输出外围设备之间的接口,该可移除的音频输入/输出外围设备诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入(例如,麦克风)两者的耳麦。
I/O子系统106将设备100上的输入/输出外围设备诸如触摸屏112和其他输入控制设备116耦接到外围设备接口118。I/O子系统106任选地包括显示控制器156、光学传感器控制器158、强度传感器控制器159、触觉反馈控制器161、和用于其他输入或控制设备的一个或多个输入控制器160。该一个或多个输入控制器160从其他输入控制设备116接收电信号/将电信号发送到其他输入控制设备116。其他输入控制设备116任选地包括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击式转盘等等。在一些另选实施方案中,一个或多个输入控制器160任选地耦接至以下各项中的任一者(或不耦接至以下各项中的任一者):键盘、红外线端口、USB端口以及指针设备诸如鼠标。一个或多个按钮(例如,图2中的208)任选地包括用于扬声器111和/或麦克风113的音量控制的增大/减小按钮。一个或多个按钮任选地包括下压按钮(例如,图2中的206)。
快速按下下压按钮可解除触摸屏112的锁定或者开始使用触摸屏上的手势来对设备进行解锁的过程,如在于2005年12月23日提交的标题为“Unlocking a Device byPerforming Gestures on an Unlock Image”的美国专利申请11/322,549以及美国专利申请7,657,849中所述的,上述美国专利申请据此全文以引用方式并入本文。更长地按下下压按钮(例如206)可使设备100开机或关机。用户能够对一个或多个按钮的功能进行自定义。触摸屏112用于实现虚拟按钮或软按钮以及一个或多个软键盘。
触敏显示器112提供设备和用户之间的输入接口和输出接口。显示控制器156从触摸屏112接收电信号和/或将电信号发送至触摸屏112。触摸屏112向用户显示视觉输出。该视觉输出可包括图形、文本、图标、视频及它们的任意组合(统称为“图形”)。在一些实施方案中,一些视觉输出或全部的视觉输出可对应于用户界面对象。
触摸屏112具有基于触觉和/或触感接触来接受来自用户的输入的触敏表面、传感器或传感器组。触摸屏112和显示控制器156(与存储器102中的任何相关联的模块和/或指令集一起)检测触摸屏112上的接触(和该接触的任何移动或中断),并且将所检测到的接触转换为与被显示在触摸屏112上的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。在一个示例性实施方案中,触摸屏112和用户之间的接触点对应于用户的手指。
触摸屏112可使用LCD(液晶显示器)技术、LPD(发光聚合物显示器)技术、或LED(发光二极管)技术,但是在其他实施方案中可使用其他显示技术。触摸屏112和显示控制器156可使用现在已知的或以后将开发出的多种触摸感测技术中的任何触摸感测技术以及其他接近传感器阵列或用于确定与触摸屏112的一个或多个接触点的其他元件来检测接触及其任何移动或中断,该多种触摸感测技术包括但不限于电容性技术、电阻性技术、红外技术和表面声波技术。在一个示例性实施方案中,使用投射式互电容感测技术,诸如从Apple Inc.(Cupertino,California)的
Figure BDA0002518647340000101
和iPod Touch发现的技术。
触摸屏112的一些实施方案中的触敏显示器可类似于以下美国专利中所述的多点触敏触摸板:6,323,846(Westerman等人)、6,570,557(Westerman等人)和/或6,677,932(Westerman);和/或美国专利公开2002/0015024A1,这些专利申请中的每个专利申请据此全文以引用方式并入本文。然而,触摸屏112显示来自设备100的视觉输出,而触敏触摸板不提供视觉输出。
触摸屏112的一些实施方案中的触敏显示器可如在以下专利申请中那样进行描述:(1)于2006年5月2日提交的标题为“Multipoint Touch Surface Controller”美国专利申请11/381,313;(2)于2004年5月6日提交的标题为“Multipoint Touchscreen”美国专利申请10/840,862;(3)于2004年7月30日提交的标题为“Gestures For Touch SensitiveInput Devices”美国专利申请10/903,964;(4)于2005年1月31日提交的标题为“GesturesFor Touch Sensitive Input Devices”美国专利申请11/048,264;(5)于2005年1月18日提交的标题为“Mode-Based Graphical User Interfaces For Touch Sensitive InputDevices”美国专利申请11/038,590;(6)于2005年9月16日提交的标题为“Virtual InputDevice Placement On A Touch Screen User Interface”美国专利申请11/228,758;(7)于2005年9月16日提交的标题为“Operation Of A Computer With A Touch ScreenInterface”美国专利申请11/228,700;(8)于2005年9月16日提交的标题为“ActivatingVirtual Keys Of A Touch-Screen Virtual Keyboard”美国专利申请11/228,737;和(9)于2006年3月3日提交的标题为“Multi-Functional Hand-Held Device”美国专利申请11/367,749。所有这些专利申请全文以引用方式并入本文。
触摸屏112可具有超过100dpi的视频分辨率。在一些实施方案中,触摸屏具有约160dpi的视频分辨率。用户可使用任何合适的物体或附加物诸如触笔、手指等等来与触摸屏112接触。在一些实施方案中,将用户界面设计用来主要与基于手指的接触和手势一起工作,由于手指在触摸屏上的接触面积较大,因此这可能不如基于触笔的输入那样精确。在一些实施方案中,设备将基于手指的粗略输入翻译为精确的指针/光标位置或命令,以用于执行用户所期望的动作。
在一些实施方案中,除了触摸屏之外,设备100可包括用于激活或去激活特定功能的触摸板(未示出)。在一些实施方案中,触摸板是设备的触敏区域,该触敏区域与触摸屏不同,其不显示视觉输出。触摸板可以是与触摸屏112分开的触敏表面,或者是由触摸屏形成的触敏表面的延伸部分。
设备100还包括用于为各种部件供电的电力系统162。电力系统162可包括电力管理系统、一个或多个电源(例如,电池、交流电(AC))、再充电系统、电力故障检测电路、功率变换器或逆变器、电源状态指示器(例如,发光二极管(LED))和与便携式设备中的电力的生成、管理和分配相关联的任何其他部件。
设备100还可包括一个或多个光学传感器164。图1A示出了耦接到I/O子系统106中的光学传感器控制器158的光学传感器。光学传感器164可包括电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光电晶体管。光学传感器164从环境接收通过一个或多个透镜而投射的光,并且将光转换为表示图像的数据。结合成像模块143(也称为相机模块),光学传感器164可捕获静态图像或视频。在一些实施方案中,光学传感器位于设备100的与设备的前部上的触摸屏显示器112相背对的后部上,使得触摸屏显示器可被用作用于静态图像和/或视频图像采集的取景器。在一些实施方案中,光学传感器位于设备的前部,使得在用户在触摸屏显示器上观看其他视频会议参与者的同时可获得该用户的图像,以用于视频会议。在一些实施方案中,光学传感器164的位置可由用户改变(例如通过旋转设备外壳中的透镜和传感器),使得单个光学传感器164可与触摸屏显示器一起使用,以用于视频会议和静态图像和/或视频图像采集两者。
设备100任选地还包括一个或多个接触强度传感器165。图1A示出了耦接到I/O子系统106中的强度传感器控制器159的接触强度传感器。接触强度传感器165任选地包括一个或多个压阻应变计、电容式力传感器、电力传感器、压电力传感器、光学力传感器、电容式触敏表面或其它强度传感器(例如,用于测量触敏表面上的接触的力(或压力)的传感器)。接触强度传感器165从环境接收接触强度信息(例如,压力信息或压力信息的代用物)。在一些实施方案中,至少一个接触强度传感器与触敏表面(例如,触敏显示器系统112)并置排列或邻近。在一些实施方案中,至少一个接触强度传感器位于设备100的与位于设备100的前部上的触摸屏显示器112相背对的后部上。
设备100还可包括一个或多个接近传感器166。图1A示出了耦接到外围设备接口118的接近传感器166。作为另外一种选择,接近传感器166可耦接到I/O子系统106中的输入控制器160。接近传感器166可如以下美国专利申请中所述的那样执行:11/241,839,标题为“Proximity Detector In Handheld Device”;11/240,788,标题为“Proximity DetectorIn Handheld Device”;11/620,702,标题为“Using Ambient Light Sensor To AugmentProximity Sensor Output”;11/586,862,标题为“Automated Response To And SensingOf User Activity In Portable Devices”;和11/638,251,标题为“Methods And SystemsFor Automatic Configuration Of Peripherals”,这些美国专利申请据此全文以引用方式并入本文。在一些实施方案中,当多功能设备被置于用户的耳朵附近时(例如,当用户正在进行电话呼叫时),接近传感器关闭并且禁用触摸屏112。
设备100任选地还包括一个或多个触觉输出发生器167。图1A示出了耦接到I/O子系统106中的触觉反馈控制器161的触觉输出发生器。触觉输出发生器167任选地包括一个或多个电声设备诸如扬声器或其他音频部件;和/或用于将能量转换成线性运动的机电设备诸如电机、螺线管、电活性聚合器、压电致动器、静电致动器或其他触觉输出生成部件(例如,用于将电信号转换成设备上的触觉输出的部件)。接触强度传感器165从触觉反馈模块133接收触觉反馈生成指令,并且在设备100上生成能够由设备100的用户感觉到的触觉输出。在一些实施方案中,至少一个触觉输出发生器与触敏表面(例如,触敏显示器系统112)并置排列或邻近,并且任选地通过竖直地(例如,向设备100的表面内/外)或侧向地(例如,在与设备100的表面相同的平面中向后和向前)移动触敏表面来生成触觉输出。在一些实施方案中,至少一个触觉输出发生器传感器位于设备100的与位于设备100的前部上的触摸屏显示器112相背对的后部上。
设备100还可包括一个或多个加速度计168。图1A示出了耦接到外围设备接口118的加速度计168。作为另外一种选择,加速度计168可耦接到I/O子系统106中的输入控制器160。加速度计168可如以下美国专利公开中所述的那样执行:20050190059,标题为“Acceleration-based Theft Detection System for Portable Electronic Devices”和20060017692,标题为“Methods And Apparatuses For Operating A Portable DeviceBased On An Accelerometer”,这两个美国专利公开均全文以引用方式并入本文。在一些实施方案中,基于对从该一个或多个加速度计所接收的数据的分析来在触摸屏显示器上以纵向视图或横向视图显示信息。设备100任选地除了一个或多个加速度计168之外还包括磁力仪(未示出)和GPS(或GLONASS或其他全球导航系统)接收器(未示出),以用于获取关于设备100的位置和取向(例如,纵向或横向)的信息。
在一些实施方案中,被存储在存储器102中的软件部件包括操作系统126、通信模块(或指令集)128、接触/运动模块(或指令集)130、图形模块(或指令集)132、文本输入模块(或指令集)134、全球定位系统(GPS)模块(或指令集)135以及应用程序(或指令集)136。此外,在一些实施方案中,存储器102(图1A)或370(图3)存储设备/全局内部状态157,如图1A、和图3中所示的。设备/全局内部状态157包括以下各项中的一者或多者:活动应用程序状态,该活动应用程序状态用于指示哪些应用程序(如果有的话)当前是活动的;显示状态,该显示状态用于指示什么应用程序、视图或其他信息占据触摸屏显示器112的各个区域;传感器状态,该传感器状态包括从设备的各个传感器和输入控制设备116获得的信息;和关于设备位置和/或姿态的位置信息。
操作系统126(例如,Darwin、RTXC、LINUX、UNIX、OS X、iOS、WINDOWS、或嵌入式操作系统诸如VxWorks)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件和/或驱动程序,并且促进各种硬件部件和软件部件之间的通信。
通信模块128促进通过一个或多个外部端口124来与其他设备进行通信,并且还包括用于处理由RF电路108和/或外部端口124所接收的数据的各种软件部件。外部端口124(例如通用串行总线(USB)、火线等)适于直接耦接到其他设备,或间接地通过网络(例如互联网、无线LAN等)耦接。在一些实施方案中,外部端口是与
Figure BDA0002518647340000141
(Apple Inc.的商标)设备上所使用的30帧连接器相同的或类似的和/或与其兼容的多帧(例如,30帧)连接器。
接触/运动模块130任选地检测与触摸屏112(结合显示控制器156)和其他触敏设备(例如,触摸板或物理点击式转盘)的接触。接触/运动模块130包括各种软件部件以用于执行与接触检测相关的各种操作,诸如确定是否已发生接触(例如,检测手指按下事件)、确定接触的强度(例如,接触的力或压力,或者接触的力或压力的替代物)、确定是否存在接触的移动并跟踪在触敏表面上的移动(例如,检测一个或多个手指拖动事件),以及确定接触是否已停止(例如,检测手指抬起事件或者接触断开)。接触/运动模块130从触敏表面接收接触数据。确定接触点的移动任选地包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的改变),所述接触点的移动由一系列接触数据来表示。这些操作任选地被应用于单点接触(例如,单指接触)或者多点同时接触(例如,“多点触摸”/多个手指接触)。在一些实施方案中,接触/运动模块130和显示器控制器156检测触摸板上的接触。
在一些实施方案中,接触/运动模块130使用一组一个或多个强度阈值来确定操作是否已由用户执行(例如,确定用户是否已“点击”图标)。在一些实施方案中,根据软件参数来确定强度阈值的至少一个子集(例如,强度阈值不是由特定物理致动器的激活阈值来确定的,并且可在不改变设备100的物理硬件的情况下被调节)。例如,在不改变触控板或触摸屏显示器硬件的情况下,触控板或触摸屏的鼠标“点击”阈值可被设定成预定义的阈值的大范围中的任一个阈值。另外,在一些具体实施中,向设备的用户提供用于调节一组强度阈值中的一个或多个强度阈值(例如,通过调节各个强度阈值和/或通过利用对“强度”参数的系统级点击来一次调节多个强度阈值)的软件设置。
接触/运动模块130任选地检测用户的手势输入。触敏表面上的不同手势具有不同接触图案(例如,所检测到的接触的不同运动、计时和/或强度)。因此,任选地通过检测具体接触图案来检测手势。例如,检测手指轻击手势包括检测手指按下事件,然后在与手指按下事件相同的位置(或基本上相同的位置)处(例如,在图标的位置处)检测手指抬起(抬离)事件。作为另一个示例,在触敏表面上检测手指轻扫手势包括检测手指按下事件,然后检测一个或多个手指拖动事件,并且随后检测手指抬起(抬离)事件。
图形模块132包括用于在触摸屏112或其他显示器上呈现和显示图形的各种已知的软件部件,包括用于改变所显示的图形的视觉冲击(例如,亮度、透明度、饱和度、对比度或其他视觉特征)的部件。如本文所用,术语“图形”包括可被显示给用户的任何对象,非限制性地包括文本、网页、图标(诸如包括软键的用户界面对象)、数字图像、视频、动画等。
在一些实施方案中,图形模块132存储待使用的用于表示图形的数据。每个图形任选地被分配有对应的代码。图形模块132从应用程序等接收用于指定待显示的图形的一个或多个代码,在必要的情况下还一起接收坐标数据和其他图形属性数据,并且然后生成屏幕图像数据,以输出至显示控制器156。
触觉反馈模块133包括用于生成指令的各种软件部件,该指令由一个或多个触觉输出发生器167使用,以便响应于用户与设备100的交互而在设备100上的一个或多个位置处生成触觉输出。
可作为图形模块132的部件的文本输入模块134提供用于在多种应用程序(例如,联系人137、电子邮件140、IM141、浏览器147、和需要文本输入的任何其他应用程序)中输入文本的软键盘。
GPS模块135确定设备的位置并提供了在各种应用程序中使用的这种信息(例如,提供至用于基于位置的拨号的电话138,提供至相机143作为图片/视频元数据,以及提供至提供基于位置的服务诸如天气桌面小程序、当地黄页桌面小程序和地图/导航桌面小程序的应用程序)。
应用程序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;和/或
·在线视频模块155。
可被存储在存储器102中的其他应用程序136的示例包括其他文字处理应用程序、其他图像编辑应用程序、绘图应用程序、呈现应用程序、支持JAVA的应用程序、加密、数字权益管理、语音识别、和语音复制。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132、和文本输入模块134,联系人模块137可用于管理地址簿或联系人列表(例如,被存储在存储器102或存储器370中的联系人模块137的应用程序内部状态192中),包括:将一个或多个姓名添加到地址簿;从地址簿删除一个或多个姓名;使一个或多个电话号码、一个或多个电子邮件地址、一个或多个物理地址或其他信息与姓名相关联;使图像与姓名相关联;对姓名归类和分类;提供电话号码或电子邮件地址以发起和/或促进通过电话138、视频会议模块139、电子邮件140、或IM 141进行通信;等等。
结合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包括用于排列、修改(例如,编辑)、或以其他方式操控、加标签、删除、呈现(例如,在数字幻灯片或相册中)、以及存储静态图像和/或视频图像的可执行指令。
结合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任选地包括MP3播放器,诸如iPod(Apple Inc.的商标)的功能。
结合触摸屏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日提交的标题为“Portable Multifunction Device,Method,and Graphical User Interface forPlaying Online Videos”的美国临时专利申请60/936,562、和于2007年12月31日提交的标题为“Portable Multifunction Device,Method,and Graphical User Interface forPlaying Online Videos”的美国专利申请11/968,067中找到,这两个专利申请的内容据此全文以引用方式并入本文。
上述每个模块和应用程序对应于用于执行上述一种或多种功能以及在本专利申请中所述的方法(例如,本文所述的计算机实现的方法和其他信息处理方法)的可执行指令集。这些模块(例如,指令集)不必被实现为独立的软件程序、过程或模块,并因此在各种实施方案中可组合或以其他方式重新布置这些模块的各种子集。例如,视频播放器模块可与音乐播放器模块组合成单个模块(例如,图1A中的视频和音乐播放器模块152)。在一些实施方案中,存储器102可存储上文识别的模块和数据结构的子集。此外,存储器102可存储上文没有描述的附加模块和数据结构。
在一些实施方案中,设备100是唯一地通过触摸屏和/或触摸板来执行设备上的预定义的一组功能的操作的设备。通过使用触摸屏和/或触摸板作为用于设备100的操作的主要输入控制设备,可减少设备100上的物理输入控制设备(诸如下压按钮、拨号盘等等)的数量。
唯一地通过触摸屏和/或触摸板执行的该预定义的一组功能任选地包括在用户界面之间进行导航。在一些实施方案中,触摸板在被用户触摸时将设备100从被显示在设备100上的任何用户界面导航到主菜单、home菜单或根菜单。在此类实施方案中,使用触摸板来实现“菜单按钮”。在一些其他实施方案中,菜单按钮是物理下压按钮或者其他物理输入控制设备,而不是触摸板。
图1B是示出根据一些实施方案的用于事件处理的示例性部件的框图。在一些实施方案中,存储器102(图1A)或存储器370(图3)包括事件分类器170(例如,在操作系统126中)以及相应的应用程序136-1(例如,前述应用程序137-151、155、380-390中的任一个应用程序)。
事件分类器170接收事件信息并确定要将事件信息递送到的应用程序136-1和应用程序136-1的应用程序视图191。事件分类器170包括事件监视器171和事件分配器模块174。在一些实施方案中,应用程序136-1包括应用程序内部状态192,该应用程序内部状态指示当应用程序是活动的或正在执行时被显示在触敏显示器112上的一个或多个当前应用程序视图。在一些实施方案中,设备/全局内部状态157被事件分类器170用于确定哪个(哪些)应用程序当前是活动的,并且应用程序内部状态192被事件分类器170用于确定要将事件信息递送到的应用程序视图191。
在一些实施方案中,应用程序内部状态192包括附加信息,诸如以下各项中的一者或多者:当应用程序136-1恢复执行时将被使用的恢复信息、指示正被应用程序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。
当触敏显示器112显示多于一个视图时,命中视图确定模块172提供用于确定子事件已在一个或多个视图内的什么地方发生的软件过程。视图由用户能在显示器上看到的控件和其他元件构成。
与应用程序相关联的用户界面的另一方面是一组视图,本文中有时也称为应用程序视图或用户界面窗口,在其中显示信息并且发生基于触摸的手势。在其中检测到触摸的(相应应用程序的)应用程序视图可对应于应用程序的程序化或视图分级结构内的程序化水平。例如,在其中检测到触摸的最低水平视图任选地被叫做命中视图,并且被识别为正确输入的那组事件至少部分地基于开始基于触摸的手势的初始触摸的命中视图来确定。
命中视图确定模块172接收与基于触摸的手势的子事件相关的信息。当应用程序具有在分级结构中组织的多个视图时,命中视图确定模块172将命中视图识别为应对子事件进行处理的分级结构中的最低视图。在大多数情况下,命中视图是发起子事件(例如,形成事件或潜在事件的子事件序列中的第一子事件)在其中发生的最低水平视图。一旦命中视图被命中视图确定模块172识别,命中视图通常接收与其被识别为命中视图所针对的同一触摸或输入源相关的所有子事件。
活动事件识别器确定模块173确定视图分级结构内的哪个或哪些视图应接收特定子事件序列。在一些实施方案中,活动事件识别器确定模块173确定仅命中视图应接收特定子事件序列。在其他实施方案中,活动事件识别器确定模块173确定包括子事件的物理位置的所有视图是活跃参与的视图,并且因此确定所有活跃参与的视图应接收特定子事件序列。在其他实施方案中,即使触摸子事件完全被局限到与一个特定视图相关联的区域,但是分级结构中的更高的视图将仍然保持为活跃参与的视图。
事件分配器模块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的信息。
在一些实施方案中,事件定义186包括用于相应用户界面对象的事件的定义。在一些实施方案中,事件比较器184执行命中测试以确定哪个用户界面对象与子事件相关联。例如,在触敏显示器112上显示三个用户界面对象的应用程序视图中,当在触敏显示器112上检测到触摸时,事件比较器184执行命中测试以确定这三个用户界面对象中的哪一个用户界面对象与该触摸(子事件)相关联。如果每个所显示的对象与相应的事件处理程序190相关联,则事件比较器使用该命中测试的结果来确定哪个事件处理程序190应当被激活。例如,事件比较器184选择与子事件和触发该命中测试的对象相关联的事件处理程序。
在一些实施方案中,相应事件(187)的定义还包括延迟动作,该延迟动作延迟事件信息的递送,直到已确定子事件序列是否确实对应于或不对应于事件识别器的事件类型。
当相应事件识别器180确定子事件序列不与事件定义186中的任何事件匹配时,该相应事件识别器180进入事件不可能、事件失败或事件结束状态,在此之后忽略基于触摸的手势的后续子事件。在这种情况下,对于命中视图保持活动的其他事件识别器(如果有的话)继续跟踪和处理持续的基于触摸的手势的子事件。
在一些实施方案中,相应事件识别器180包括具有用于指示事件递送系统应该如何执行对活跃参与的事件识别器的子事件递送的可配置属性、标记和/或列表的元数据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的访问。在一些实施方案中,数据更新器176、对象更新器177和GUI更新器178被包括在相应应用程序136-1或应用程序视图191的单个模块中。在其他实施方案中,它们被包括在两个或更多个软件模块中。
应当理解,关于触敏显示器上的用户触摸的事件处理的上述讨论还适用于利用输入设备来操作多功能设备100的其他形式的用户输入,并不是所有用户输入都是在触摸屏上发起的。例如,任选地与单次或多次键盘按压或保持结合的鼠标移动和鼠标按钮按压;触摸板上的接触移动,诸如轻击、拖动、滚动等;触笔输入;设备的移动;口头指令;所检测到的眼睛移动;生物特征输入;和/或作为与子事件对应的输入的用于定义要识别的事件其任意的组合。
图2示出了根据一些实施方案的具有触摸屏112的便携式多功能设备100。触摸屏任选地在用户界面(UI)200内显示一个或多个图形。在本实施方案中以及在下文中描述的其他实施方案中,用户能够通过例如利用一个或多个手指202(在附图中没有按比例绘制)或者利用一个或多个触笔203(在附图中没有按比例绘制)在图形上作出手势来选择这些图形中的一个或多个图形。在一些实施方案中,当用户中断与一个或多个图形的接触时,将发生对这一个或多个图形的选择。在一些实施方案中,手势任选地包括一次或多次轻击、一次或多次轻扫(从左向右、从右向左、向上和/或向下)和/或已与设备100发生接触的手指的滚动(从右向左、从左向右、向上和/或向下)。在一些具体实施中或在一些情况下,不经意地与图形接触不会选择图形。例如,当与选择对应的手势是轻击时,在应用程序图标上方扫动的轻扫手势任选地不会选择相应应用程序。
设备100还可包括一个或多个物理按钮,诸如“home”按钮或菜单按钮204。如前所述,菜单按钮204可被用于导航到可在设备100上执行的应用程序集中的任何应用程序136。作为另外一种选择,在一些实施方案中,菜单按钮被实现为被显示在触摸屏112上的GUI中的软键。
在一些实施方案中,设备100包括触摸屏112、菜单按钮204、用于使设备开机/关机和用于锁定设备的下压按钮206、一个或多个音量调节按钮208、用户身份模块(SIM)卡槽210、耳麦插孔212和对接/充电外部端口124。下压按钮206被任选地用于:通过按下按钮并使按钮在下压状态保持预先确定的时间间隔来使设备通电/断电;通过按下按钮并在经过预先确定的时间间隔之前释放按钮来锁定设备;和/或对设备进行解锁或发起解锁过程。在另选的实施方案中,设备100还通过麦克风113来接受用于激活或去激活某些功能的语音输入。设备100还任选地包括用于检测触摸屏112上的接触的强度的一个或多个接触强度传感器165,和/或用于为设备100的用户生成触觉输出的一个或多个触觉输出发生器167。
图3是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备的框图。设备300不必是便携式的。在一些实施方案中,设备300是膝上型计算机、台式计算机、平板电脑、多媒体播放器设备、导航设备、教育设备(诸如儿童学习玩具)、游戏系统或控制设备(例如,家用控制器或工业用控制器)。设备300通常包括一个或多个处理单元(CPU)310、一个或多个网络或其他通信接口360、存储器370和用于使这些部件互连的一个或多个通信总线320。通信总线320任选地包括使系统部件互连并且控制系统部件之间的通信的电路系统(有时叫做芯片组)。设备300包括具有显示器340的输入/输出(I/O)接口330,该显示器通常是触摸屏显示器。I/O接口330还任选地包括键盘和/或鼠标(或其他指向设备)350和触摸板355、用于在设备300上生成触觉输出的触觉输出发生器357(例如,类似于以上参考图1A所述的一个或多个触觉输出发生器167)、传感器359(例如,光学传感器、加速度传感器、接近传感器、触敏传感器、和/或类似于以上参考图1A所述的一个或多个接触强度传感器165的接触强度传感器)。存储器370包括高速随机存取存储器诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备,并且任选地包括非易失性存储器诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器370任选地包括远离CPU 310定位的一个或多个存储设备。在一些实施方案中,存储器370存储与便携式多功能设备100(图1A)的存储器102中所存储的程序、模块和数据结构类似的程序、模块、和数据结构或它们的子集。此外,存储器370任选地存储在便携式多功能设备100的存储器102中不存在的附加程序、模块、和数据结构。例如,设备300的存储器370任选地存储绘图模块380、呈现模块382、文字处理模块384、网站创建模块386、盘编辑模块388、和/或电子表格模块390,而便携式多功能设备100(图1A)的存储器102任选地不存储这些模块。
图3中的上述元件中的每个元件可被存储在一个或多个前面提到的存储器设备中。上述模块中的每个模块对应于用于执行上述功能的指令集。上述模块或程序(例如,指令集)不必被实现为单独的软件程序、过程或模块,并且因此这些模块的各种子集可在各种实施方案中被组合或以其他方式重新布置。在一些实施方案中,存储器370可存储上文识别的模块和数据结构的子集。此外,存储器370可存储上文没有描述的附加模块和数据结构。
现在将注意力转到可在例如便携式多功能设备100上实现的用户界面的实施方案。
图4A示出了根据一些实施方案的便携式多功能设备100上的应用程序菜单的示例性用户界面。类似的用户界面可在设备300上实现。在一些实施方案中,用户界面400包括以下元素或者其子集或超集:
·一个或多个无线通信(诸如蜂窝信号和Wi-Fi信号)的一个或多个信号强度指示符402;
·时间404;
·蓝牙指示符405;
·电池状态指示符406;
·具有常用应用程序的图标的托盘408,该图标诸如:
ο电话模块138的被标记为“电话”的图标416,该图标416任选地包括未接来电或语音留言的数量的指示符414;
ο电子邮件客户端模块140的被标记为“邮件”的图标418,该图标418任选地包括未读电子邮件的数量的指示符410;
ο浏览器模块147的被标记为“浏览器”的图标420;和
ο视频和音乐播放器模块152(也称为iPod(Apple Inc.的商标)模块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,该图标446提供对设备100及其各种应用程序136的设置的访问。
应当指出的是,图4A中示出的图标标签仅是示例性的。例如,视频和音乐播放器模块152的图标422可任选地被标记为“音乐”或“音乐播放器”。其他标签任选地用于各种应用程序图标。在一些实施方案中,相应应用程序图标的标签包括与该相应应用程序图标对应的应用程序的名称。在一些实施方案中,特定应用程序图标的标签不同于与该特定应用程序图标对应的应用程序的名称。
图4B示出了具有与显示器450(例如,触摸屏显示器112)分开的触敏表面451(例如,图3的平板电脑或触摸板355)的设备(例如,图3的设备300)上的示例性用户界面。设备300还任选地包括用于检测触敏表面451上的接触的强度的一个或多个接触强度传感器(例如,传感器357中的一个或多个传感器),和/或用于为设备300的用户生成触觉输出的一个或多个触觉输出发生器359。
尽管将参考触摸屏显示器112(其中组合了触敏表面和显示器)上的输入给出随后的示例中的一些示例,但是在一些实施方案中,设备检测与显示器分开的触敏表面上的输入,如图4B中所示。在一些实施方案中,触敏表面(例如,图4B中的451)具有与显示器(例如,450)上的主轴(例如,图4B中的453)对应的主轴(例如,图4B中的452)。根据这些实施方案,设备检测在与显示器上的相应位置对应的位置(例如,在图4B中,460对应于468并且462对应于470)处与触敏表面451的接触(例如,图4B中的460和462)。这样,在触敏表面(例如,图4B中的451)与多功能设备的显示器(图4B中的450)分开时,由设备在触敏表面上检测到的用户输入(例如,接触460和462以及它们的移动)被该设备用于操控显示器上的用户界面。应当理解,类似的方法任选地用于本文所述的其他用户界面。
另外,虽然主要是参考手指输入(例如,手指接触、单指轻击手势、手指轻扫手势)来给出下面的示例,但是应当理解的是,在一些实施例中,这些手指输入中的一个或多个手指输入由来自另一输入设备的输入(例如,基于鼠标的输入或触笔输入)替代。例如,轻扫手势任选地由鼠标点击(例如,而不是接触)、之后是光标沿着轻扫的路径的移动(例如,而不是接触的移动)替代。又如,轻击手势任选地由光标位于轻击手势的位置之上时的鼠标点击(例如,而不是对接触的检测、之后是终止检测接触)替代。类似地,当同时检测到多个用户输入时,应当理解的是,多个电脑鼠标任选地被同时使用,或一个鼠标和多个手指接触任选地被同时使用。
如本文所用,术语“示能表示”是指可在设备100、300和/或500(图1、图3和图5)的显示屏上显示的用户交互式图形用户界面对象。例如,图像(例如,图标)、按钮和文本(例如,超级链接)可各自构成示能表示。
如本文所用,术语“焦点选择器”是指用于指示用户正与之进行交互的用户界面的当前部分的输入元件。在包括光标或其他位置标记的一些具体实施中,光标充当“焦点选择器”,使得当光标在特定用户界面元素(例如,按钮、窗口、滑块或其他用户界面元素)上方时在触敏表面(例如,图3中的触摸板355或图4B中的触敏表面451)上检测到输入(例如,按压输入)的情况下,该特定用户界面元素根据所检测到的输入而被调节。在包括能够实现与触摸屏显示器上的用户界面元素的直接交互的触摸屏显示器(例如,图1A中的触敏显示器系统112或图4A中的触摸屏112)的一些具体实施中,触摸屏上的所检测到的接触充当“焦点选择器”,使得当在触摸屏显示器上在特定用户界面元素(例如,按钮、窗口、滑块或其他用户界面元素)的位置处检测到输入(例如,由接触进行的按压输入)时,该特定用户界面元素根据所检测到的输入而被调节。在一些具体实施中,焦点从用户界面的一个区域移动到用户界面的另一个区域,而无需光标的对应移动或触摸屏显示器上的接触的移动(例如,通过使用制表键或箭头键将焦点从一个按钮移动到另一个按钮);在这些具体实施中,焦点选择器根据用户界面的不同区域之间的焦点移动而移动。不考虑焦点选择器所采取的具体形式,焦点选择器通常是由用户控制的以便递送与用户界面的用户预期的交互(例如,通过向设备指示用户界面的用户期望与其进行交互的元素)的用户界面元素(或触摸屏显示器上的接触)。例如,在触敏表面(例如,触摸板或触摸屏)上检测到按压输入时,焦点选择器(例如,光标、接触或选择框)在相应按钮上方的位置将指示用户期望激活相应按钮(而不是设备显示器上示出的其他用户界面元素)。
如说明书和权利要求中所使用的,接触的“特征强度”这一术语是指基于接触的一个或多个强度的接触的特征。在一些实施方案中,特征强度基于多个强度样本。特征强度任选地基于相对于预定义事件(例如,在检测到接触之后,在检测到接触抬起之前,在检测到接触开始移动之前或之后,在检测到接触结束之前,在检测到接触的强度增大之前或之后和/或在检测到接触的强度减小之前或之后)而言在预先确定的时间段(例如,0.05秒、0.1秒、0.2秒、0.5秒、1秒、2秒、5秒、10秒)期间采集的预定义数量的强度样本或一组强度样本。接触的特征强度任选地基于以下各项中的一者或多者:接触强度的最大值、接触强度的均值、接触强度的平均值、接触强度的前10%处的值、接触强度的半最大值、接触强度的90%最大值等。在一些实施方案中,在确定特征强度时使用接触的持续时间(例如,在特征强度是接触的强度在时间上的平均值时)。在一些实施方案中,将特征强度与一组一个或多个强度阈值进行比较,以确定用户是否已执行操作。例如,该组一个或多个强度阈值可包括第一强度阈值和第二强度阈值。在本示例中,特征强度未超过第一阈值的接触导致第一操作,特征强度超过第一强度阈值但未超过第二强度阈值的接触导致第二操作,并且特征强度超过第二阈值的接触导致第三操作。在一些实施方案中,使用特征强度与一个或多个阈值之间的比较来确定是否要执行一个或多个操作(例如,是执行相应操作还是放弃执行相应操作),而不是用于确定执行第一操作还是第二操作。
在一些实施方案中,识别手势的一部分以用于确定特征强度。例如,触敏表面可接收连续的轻扫接触,该连续的轻扫接触从起始位置过渡并到达结束位置,在该结束位置处,接触的强度增加。在本示例中,接触在结束位置处的特征强度可仅基于连续轻扫接触的一部分,而不是整个轻扫接触(例如,仅结束位置处的轻扫接触的一部分)。在一些实施方案中,可在确定接触的特征强度之前向轻扫手势的强度应用平滑化算法。例如,该平滑化算法任选地包括以下各项中的一者或多者:不加权滑动平均平滑化算法、三角平滑化算法、中值滤波器平滑化算法和/或指数平滑化算法。在一些情况下,这些平滑化算法消除了轻扫接触的强度中的窄的尖峰或凹陷,以实现确定特征强度的目的。
可相对于一个或多个强度阈值诸如接触检测强度阈值、轻按压强度阈值、深按压强度阈值和/或一个或多个其他强度阈值来表征触敏表面上的接触的强度。在一些实施方案中,轻按压强度阈值对应于这样的强度:在该强度下设备将执行通常与点击物理鼠标或触控板的按钮相关联的操作。在一些实施方案中,深按压强度阈值对应于这样的强度:在该强度下设备将执行与通常与点击物理鼠标或触控板的按钮相关联的操作不同的操作。在一些实施方案中,当检测到特征强度低于轻按压强度阈值(例如,并且高于标称接触检测强度阈值,比该阈值低的接触不再被检测到)的接触时,设备将根据接触在触敏表面上的移动来移动焦点选择器,而无需执行与轻按压强度阈值或深按压强度阈值相关联的操作。一般来讲,除非另有陈述,否则这些强度阈值在不同组的用户界面附图之间是一致的。
接触特征强度从低于轻按压强度阈值的强度增大到介于轻按压强度阈值与深按压强度阈值之间的强度有时被称为“轻按压”输入。接触特征强度从低于深按压强度阈值的强度增大到高于深按压强度阈值的强度有时被称为“深按压”输入。接触特征强度从低于接触检测强度阈值的强度增大到介于接触检测强度阈值与轻按压强度阈值之间的强度有时被称为检测到触摸表面上的接触。接触特征强度从高于接触检测强度阈值的强度减小到低于接触检测强度阈值的强度有时被称为检测到接触从触摸表面抬起。在一些实施方案中,接触检测强度阈值为零。在一些实施方案中,接触检测强度阈值大于零。
在本文中所述的一些实施方案中,响应于检测到包括相应按压输入的手势或响应于检测到利用相应接触(或多个接触)执行的相应按压输入来执行一个或多个操作,其中至少部分地基于检测到该接触(或多个接触)的强度增大到高于按压输入强度阈值而检测到相应按压输入。在一些实施方案中,响应于检测到相应接触的强度增大到高于按压输入强度阈值(例如,相应按压输入的“向下冲程”)来执行相应操作。在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于按压输入强度阈值,并且响应于检测到相应接触的强度随后减小到低于按压输入阈值(例如,相应按压输入的“向上冲程”)来执行相应操作。
在一些实施方案中,设备采用强度滞后以避免有时称为“抖动”的意外输入,其中设备限定或选择与按压输入强度阈值具有预定义关系的滞后强度阈值(例如,滞后强度阈值比按压输入强度阈值低X个强度单位,或滞后强度阈值是按压输入强度阈值的75%、90%或某个合理比例)。因此,在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于对应于按压输入强度阈值的滞后强度阈值,并且响应于检测到相应接触的强度随后减小到低于滞后强度阈值(例如,相应按压输入的“向上冲程”)来执行相应操作。类似地,在一些实施方案中,仅在设备检测到接触的强度从等于或低于滞后强度阈值的强度增大到等于或高于按压输入强度阈值的强度并且任选地接触的强度随后减小到等于或低于滞后强度的强度时才检测到按压输入,并且响应于检测到按压输入(例如,根据环境,接触的强度增大或接触的强度减小)来执行相应操作。
为了容易解释,任选地,响应于检测到以下各种情况中的任一种情况而触发对响应于与按压输入强度阈值相关联的按压输入或响应于包括按压输入的手势而执行的操作的描述:接触的强度增大到高于按压输入强度阈值、接触的强度从低于滞后强度阈值的强度增大到高于按压输入强度阈值的强度、接触的强度减小到低于按压输入强度阈值、和/或接触的强度减小到低于与按压输入强度阈值对应的滞后强度阈值。另外,在将操作描述为响应于检测到接触的强度减小到低于按压输入强度阈值而执行的示例中,任选地响应于检测到接触的强度减小到低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行操作。
2.结构化建议
在本公开的实施方案中,电子设备可从用户的消息为用户组织建议联系人和日历事件。建议联系人和日历事件可以是可搜索的,就好像是由用户手动输入的一样,并且用户可选择添加或忽略(例如,拒绝)建议联系人和日历事件。这样,用户几乎不费力气便可维护好自己的联系人和日历事件,不仅可节省用户的时间,提高效率,还能生成更有效的人机界面。
2.1建议联系人信息
图5A示出了根据一些实施方案的用于建议联系人的示例性数据架构502A。如图5A所示,电子设备500可将来自消息510的联系人信息520A与对应联系人530A关联起来(例如,存储)。消息510可包括能够由设备500的用户发送或接收的任何类型的消息,诸如电子邮件、即时消息、经由设备500上的应用程序接发的消息等,并且可包括消息510的任何附件。
联系人信息520A可包括通常与通讯录数据库中的联系人条目相关联的信息,诸如某实体的名称、电话号码、地址、业务或社交网络处理等。联系人条目通常按照实体进行整理或编制索引,实体可包括个人、团体、组织、公司等。联系人信息520A可以以任何合适格式进行存储,只要应用程序诸如联系人模块137能够辨识该格式,从而处理联系人信息520A即可。联系人信息520还可根据标准协议诸如CardDAV协议来编制格式,从而允许更新或通过网络与其他客户端同步。
在一些实施方案中,所识别的联系人信息520A可以以三种互相排斥的状态—建议状态540、已添加状态550和已拒绝状态560中的任一种与联系人530A相关联。建议状态540可反映用户尚未确认或批准将联系人信息520A添加到联系人的状态。已添加状态550可反映用户已经确认或批准将联系人信息520A添加到联系人的状态。已拒绝状态560可反映用户已经拒绝将联系人信息520A添加到联系人的状态。当所有相关联联系人信息属于同一状态时,联系人530A还可与这三种状态中的任一者相关联。
在一些实施方案中,已添加状态550可被设备500视为默认状态,这意味着不需要添加额外数据与此类联系人相关联来指示其处于已添加状态550。例如,用户在设备500上添加的联系人可被默认视为已添加状态550。
在已添加状态550被视为默认状态的实施方案中,设备500可将数据与联系人信息520A相关联,来指示联系人信息520A是属于建议状态540,还是属于已拒绝状态560。此数据可采用任何合适的形式,诸如可采用元数据,处理联系人信息520A的应用程序将使用相应的形式来辨识联系人信息520A是处于建议状态540,还是处于已拒绝状态560。设备500还可将数据与联系人530A相关联来指示联系人530A和所有相关联联系人信息是属于建议状态540,还是属于已拒绝状态560。
以建议状态540存储联系人信息520A,设备500(例如,经由在设备500上运行的应用程序)便可包括建议联系人信息以搜索联系人。为了避免用户混淆,设备500还可通过提供视觉指示(例如,经由添加标记或突出显示)并且/或者阻止用户直接操作联系人信息520A(例如,通过先要求用户提供额外输入,然后再允许用户操作联系人信息520A),向用户指示联系人信息520A处于建议状态540。输入可指任何合适的输入方式,诸如触摸、鼠标、语音等。
以已拒绝状态560存储联系人信息520A,设备500便可记住用户已经拒绝的先前所建议的联系人信息,以免再次向用户建议该信息。处于已拒绝状态560的联系人信息520A,可被处理处于已添加状态550和建议状态540的联系人信息的应用程序忽略。
设备500可将联系人信息520A本地存储在设备500上,并且制止将联系人信息520A同步到远程数据库,直到将联系人信息520A从建议状态540变为已添加状态550为止。在其他实施方案中,联系人信息520A可在处于建议状态540时被更新到远程数据库。
设备500可从消息510中的结构化内容或非结构化内容中识别联系人信息520A。结构化内容是指具有根据预定义格式布置的正式组织或结构的内容,诸如由在线旅行社提供的自动化电子邮件,这些邮件以相同的预定义方式(例如,使用相同HTML结构)列出航班、宾馆和/或租车预订信息。在一些实施方案中,为了从结构化内容中识别联系人信息520A,设备500可使用被配置为辨识由此类消息提供的呈特定格式的联系人信息的模板。在一些实施方案中,设备500可通过网络添加并且/或者更新这些模板。
非结构化内容是指没有正式组织或结构的内容,诸如自然语言内容(例如,某人在消息中说他/她有一个新号码)和电子邮件签名。为了从非结构化内容中识别联系人信息520A,设备500可使用被配置为识别预定义的联系人信息标引诸如“我有了一个新号码,新号码是<号码>”之类的特定短语的数据检测器。设备500还可通过网络添加并且/或者更新这些数据检测器。设备500可通过将设备500上(例如,通讯录数据库中)的联系人信息与和设备500上的该联系人信息相关联的(例如,消息中的)语言相互关联来改进数据检测器所依靠的预定义标引。可接着使用相关语言来细化预定义标引以供后续使用。设备500分析的消息内容可包括设备500能够辨识的任何信息,包括消息元数据。
在一些实施方案中,设备接收用于发起与联系人(例如,个人或公司)的通信(例如,电话呼叫、即时消息、电子邮件)的指令(例如,用户请求)。设备确定该联系人不在设备的通讯录中。作为响应,设备基于一个或多个通信(例如,即时消息、电子邮件、日历条目)定位联系人信息(例如,电话号码、用户名、电子邮件地址)。换句话讲,设备搜索潜在联系人数据库以消除指令中所涉及的所请求联系人的歧义。任选地,设备呈现潜在匹配联系人的排序列表,并且接收选择意向联系人的用户输入。响应于选择意向联系人的用户输入,设备可发起与意向联系人的通信(例如,电话呼叫、即时消息、电子邮件)。
2.2建议事件信息
图5B示出了根据一些实施方案的用于建议日历事件的示例性数据架构502B。如图5B所示,电子设备500可将来自消息510的事件信息520B与对应日历事件530B相关联(例如,存储)。消息510可包括能够由设备500的用户发送或接收的任何类型的消息,诸如电子邮件、即时消息、经由设备上的应用程序接发的消息等,并且可包括该消息的任何附件。
事件信息520B可包括通常与日历数据库中的日历条目相关联的信息,诸如时间、日期、地点等。事件信息520B可以以任何合适格式进行存储,只要应用程序诸如日历模块148能够辨识该格式,从而处理事件信息520B即可。事件信息520B还可根据标准协议诸如CalDAV协议来来编制格式,从而允许更新或通过网络与其他客户端同步。
在一些实施方案中,识别事件信息520B可以以三种互相排斥的状态—建议状态540、已添加状态550和已拒绝状态560中的任一种与日历事件530B相关联。建议状态540可反映用户尚未确认或批准将事件信息520B添加到日历事件的状态。已添加状态550可反映用户已经确认或批准将事件信息520B添加到日历事件的状态。已拒绝状态560可反映用户已经拒绝将事件信息520B添加到日历事件的状态。当所有相关联日历事件信息属于同一状态时,日历事件530B还可与这三种状态中的任一者相关联。
在一些实施方案中,已添加状态550可被设备500视为默认状态,这意味着不需要添加额外数据与此类日历事件相关联来指示其处于已添加状态550。例如,用户在设备500上添加的日历事件可被默认视为已添加状态550。
在已添加状态550被视为默认状态的实施方案中,设备500可将数据与事件信息520B相关联,以指示事件信息520B是属于建议状态540,还是属于已拒绝状态560。此数据可采用任何合适的形式,诸如可采用元数据,处理事件信息520B的应用程序将使用相应的形式来辨识事件信息520B是处于建议状态540,还是处于已拒绝状态560。设备500还可将数据与日历事件530B相关联,以指示日历事件530B和所有相关联事件信息是属于建议状态540,还是属于已拒绝状态560。
以建议状态540存储事件信息520B,设备500(例如,经由在设备500上运行的应用程序)便可包括建议事件信息以搜索日历事件。为了避免用户混淆,设备500还可通过提供视觉指示(例如,经由添加标记或高亮显示)并且/或者阻止用户直接操作事件信息520B(例如,通过先要求用户提供额外输入,然后再允许用户操作事件信息520B),向用户指示事件信息520B处于建议状态540。输入可指任何合适的输入方式,诸如触摸、鼠标、语音等。
以已拒绝状态560存储事件信息520B,设备500便可记住用户已经拒绝的先前所建议的事件信息,以免再次向用户建议该信息。处于已拒绝状态560的事件信息520B,可被处理处于已添加状态550和建议状态540的事件信息的应用程序忽略。
设备500可将事件信息520B本地存储在设备500上,并且制止将事件信息520B同步到远程数据库,直到将事件信息520B从建议状态540变为已添加状态550为止。在其他实施方案中,事件信息520B可在处于建议状态540时被更新到远程数据库。
设备500可从消息510中的结构化内容或非结构化内容中识别事件信息520B。结构化内容是指具有根据预定义格式布置的正式组织或结构的内容,诸如由在线旅行社提供的自动化电子邮件,这些邮件以相同的预定义方式(例如,使用相同HTML结构)列出航班、宾馆和/或租车预订信息。在一些实施方案中,为了从结构化内容中识别事件信息520B,设备500可使用被配置为辨识由此类消息提供的呈特定格式的事件信息的模板。在一些实施方案中,设备500可通过网络添加并且/或者更新这些模板。
非结构化内容是指没有正式组织或结构的内容,诸如自然语言内容(例如,某人在消息中说他/她将在特定时间在某个地方见你)和电子邮件签名。为了从非结构化内容识别事件信息520B,设备500可使用被配置为识别预定义事件信息标引诸如“在<时间>在<地址>见我”之类的特定短语的数据检测器。设备500还可通过网络添加并且/或者更新这些数据检测器。设备500可通过将设备500上(例如,日历数据库中)的事件信息与和设备500上的该事件信息相关联的(例如,消息中的)语言相互关联来改进数据检测器所依靠的预定义标引。可接着使用相关语言来细化预定义标引以供后续使用。设备500分析的消息内容可包括设备500能够辨识的任何信息,包括消息元数据。
在一些实施方案中,设备识别与日历事件(例如,用户添加的日历事件,或用户接受的收到的会面邀请)相关联的一个或多个通信(例如,电子邮件或其他内容)。例如,如果某个通信描述了相同或相似名称的事件、相同或相似日期/时间和/或持续时间的事件,和/或相同地点的事件,设备就可确定该通信与该日历事件相关联。又如,设备可基于某个日历事件包括某个通信中所使用的相同或相似语言,确定该通信与该日历事件相关联。设备对这样的一个或多个通信和相关联日历事件进行分析并且/或者比较,以更好地识别应当为之创建或建议未来日历条目的候选通信。例如,可采用机器学习技术,通过从事件所基于的电子邮件进行训练/分析事件所基于的电子邮件,来学习事件创建模式(使用支持向量机和用于创建日历事件的电子邮件的资料库)。
例如,设备可能从汽车配件店接收到一封电子邮件通信,其中包括“您好,您明天能到配件店取更换配件吗?”的语言。该电子邮件还可能包括电子邮件签名,并且签名中包括配件店的街道地址。之后,用户可能会手动创建日历事件,包括“到配件店取更换配件”的语言。该日历事件还可能包括配件店的街道地址,作为日历事件的地点。基于此电子邮件通信和日历事件,设备可借助机器学习来确定这种类型的电子邮件通信保证可生成一条日历条目建议。该确定可基于:电子邮件通信和日历事件中的“到配件店取更换配件”之间的相似性;电子邮件通信和日历事件中的街道地址之间的相似性;在电子邮件通信和日历事件中所识别的日期/时间的相似性;或这些相似性中的两者或更多者的组合。
在一些实施例中,设备从即时消息会话(例如,SMS或文本消息会话)(例如,在即时消息会话期间)识别事件信息。在会话期间,设备收集与事件相关的信息。在会话的相关部分之后(例如,在已经收集到一组预定信息之后),设备生成建议日历事件。在一些实施例中,在生成初始建议日历事件之后,设备基于发送或接收的会话中的消息来更新建议日历事件。这种会话事件创建技术让用户可基于即时消息会话中的消息来快速且有效地向日历中添加事件。
例如,设备可能正在显示设备的用户与汽车配件店代表之间的即时消息会话。会话中可能包括来自汽车配件店代表的消息,其中包括“您好,您明天能到配件店取更换配件吗?”的语言。会话中还可能包括来自汽车配件店代表的消息,其中包括配件店的街道地址。用户可能回应说“好的,我过去!”。响应于会话的相关部分(例如,到场确认——“好的,我过去!”;或收到时间——“明天”和地点(街道地址)),设备生成建议日历事件。即使之后设备收到汽车配件店代表的消息,指示更新的时间(例如,“实际上,明天不行,但本星期五可以。”)、地点或其他事件元素,设备也可以随之更新建议日历事件。
应当认识到,示例性数据架构520A和520B可以是相同的,也可以是不同的。例如,可以为建议联系人和建议日历事件使用同一个数据架构。或者,为建议联系人使用一种数据架构,而为建议日历事件使用另一种不同的数据架构。
还应认识到,可针对仅建议联系人、仅建议日历事件,或建议联系人和建议日历事件两者处理消息510。当针对建议联系人和建议日历事件两者进行处理时,可串行或并行地针对建议联系人和建议日历事件处理消息510。例如,可首先针对建议联系人处理消息510,接着针对建议日历事件处理消息510。或者,可并行地针对建议联系人和建议日历事件处理消息510和消息510的复本。
在一些实施例中,可基于从消息或其他媒体中的结构化内容或非结构化内容识别的事件信息,向用户呈现通知或提示(例如,通过设备500上的视觉通知、触觉通知、音频通知,或一个或多个通知的组合)。在一些实施例中,即使事件信息不与添加状态相关联,也可向用户呈现通知或提示。例如,收到关于即将到来的露营旅行的电子邮件后,即使该露营旅行尚未被添加到用户的日历,设备也可基于该电子邮件来提醒用户收拾行李。因此,可针对处于建议状态(例如,未被明确接受或拒绝)的日历条目、事件等呈现提示。
3.用户界面和相关联过程
图6A至图13描绘了可在设备500上实现的用户界面(“UI”)和相关联过程的实施方案。在一些实施方案中,设备500对应于设备100或300。
图6A和6G示出了根据一些实施方案的用于提供建议联系人和日历事件的示例性用户界面。
具体地讲,图6A示出了例如在如上所述处理消息之后,对应于具有建议联系人信息(即,处于建议状态540的联系人信息)的联系人的用户界面的显示,例如通过联系人模块137进行显示。在该实施例中,联系人与名为John Appleseed的个人相关联并且包括公司名(“某公司”)、办公室电话号码(“405-555-1234”)和手机号码(“405-123-6633”)。公司名和办公室电话号码是确认联系人信息项目,属于已添加状态550。手机号码是建议联系人信息项目,属于建议状态540。
设备500可在用户界面中提供用户界面对象600(例如,短语“建议”),用来向用户指示该手机号码是建议联系人信息项目,并没有经过用户确认。可使用任何合适的用户界面对象来实现这一目的,包括标签、图标或其他能够指示手机号码是建议联系人信息项目的视觉指示。当同一联系人包括处于建议状态540的联系人信息项目和处于已添加状态550的联系人信息项目时,如在图6A中的情况下,设备500可将处于建议状态540的项目显示在处于已添加状态550的所有项目的下方,或比处于已添加状态550的所有项目的优先级低的位置。
设备500还可阻止用户通过直接调用应用程序(例如,电话模块138),来从这个初始用户界面用建议号码处呼叫John Appleseed。例如,设备500可为与建议号码相关联的文本和/或区提供与确认联系人信息项目的视觉外观不同的视觉外观,诸如灰色显示外观(未示出),以指示用户选择建议号码时将不会直接呼叫该号码。在用户选择建议号码后,设备500可用第二用户界面替换当前用户界面,用户可通过第二用户界面检查并且呼叫建议号码。
如图6B所示,第二用户界面(标记为“检查建议”)包括呈横幅形式的建议部分606,该建议部分包括与建议号码相关联的用户界面对象602(标记为“添加到联系人”)。用户选择用户界面对象602时可致使设备500将建议号码以已添加状态550添加到联系人(例如,将建议号码的状态从建议状态540改成已添加状态550)。用户在这个后续用户界面中选择手机号码或类似指示诸如紧挨着手机号码显示的电话图标后,设备500会调用应用程序(例如,电话模块138)以建议号码呼叫John Appleseed。在一些实施方案中,如果用户不选择用户界面对象602,而是选择手机号码或类似指示,则设备500会保持手机号码处于建议状态540(例如,用户呼叫建议号码的操作,不会被视为是对联系人的建议号码的隐式批准)。在其他实施方案中,设备500会在用户选择手机号码后将手机号码的状态改成已添加状态550,即使用户尚未选择用户界面对象602(例如,用户呼叫建议号码的操作会被视为是对联系人的建议号码的隐式批准)也会如此。
图6B中的第二用户界面还包括与建议号码相关联的用户界面对象604(标记为“忽略”)。用户选择用户界面对象604时可致使设备500停止显示用户界面对象602,这会移除将号码添加到联系人的选项。在选择用户界面对象604后,设备500将建议号码的状态从建议状态540改成已拒绝状态560。处于已拒绝状态560时,设备500可被配置为不再显示与该联系人相关联的此建议号码,也不再建议与该联系人相关联的此建议号码。
另外,图6B中的第二用户界面包括消息部分608(标记为“相关电子邮件”),该消息部分中包括设备500从其中识别建议号码的消息的一部分。因此,在提供用于检查建议联系人信息的界面的时,图6B的用户界面可向用户提供与建议联系人信息相关联的消息上下文。如图6B所示,设备500可显示电子邮件中与包含手机号码的部分相关的有限部分。用户选择显示的那部分消息时,设备500可使消息应用程序(例如,电子邮件客户端模块140)为用户打开整封电子邮件。在一些实施方案中,可在对应于图6D所示的用户界面的用户界面中,将整封电子邮件与建议联系人信息一起显示出来。
图6C示出了响应于用户选择图6A中的“编辑”用户界面对象而显示的用户界面。在这个编辑用户界面中,用户还可直接呼叫由用户界面对象610表示的建议号码,该建议号码被突出显示(即,呈粗体)以指示该号码处于建议状态540。可使用任何合适的视觉指示来指示用户界面对象610处于建议状态540。
图6D示出了用户在设备500上打开消息(例如,由电子邮件客户端模块140显示的电子邮件)后可检视的屏幕,其中设备500已经在消息中识别到建议联系人信息。图6D的用户界面包括建议部分612和消息部分614。消息部分614包括设备500收到的消息的内容。建议部分612包括对应于所识别的实体(“John Appleseed”)的用户界面对象;对应于所识别的联系人信息(“405-123-6633”)的用户界面对象;以及与所识别的联系人信息相关联的用户界面对象618(标记为“添加到联系人”),该用户界面对象在被选择时致使设备将建议号码以已添加状态550添加到联系人。建议部分612包括与所识别的联系人信息相关联的用户界面对象620(标记为“忽略”),该用户界面对象在被选择时致使设备500将所识别的联系人信息的状态从建议状态540改成已拒绝状态560。处于已拒绝状态560时,设备500可被配置为不再显示与该联系人相关联的此条建议联系人信息,也不再建议与该联系人相关联的此条建议联系人信息。选择位于“忽略”和“添加到联系人”图块上方的建议部分612的识别联系人信息616时,设备上会出现对应于与所识别实体相关联的联系人的用户界面。例如,在这个实施方案中,设备500可在对应于图6A所示的用户界面的用户界面中呈现“JohnAppleseed”的联系人信息。
图6E示出了用户在设备500上打开消息(例如,由电子邮件客户端模块140显示的电子邮件)后可检视的屏幕,其中设备500已经在消息中识别到建议事件信息。图6E的用户界面包括建议部分620和消息部分622。消息部分622包括设备500收到的消息的内容。建议部分620包括对应于所识别的事件信息(“晚餐”、“某寿司店”、“3月7日,星期五”或“晚上9:50”)的用户界面对象,以及与所识别的事件信息相关联的用户界面对象626(标记为“添加到日历”),该用户界面对象在被选择时致使设备500将建议事件信息以已添加状态550添加到日历事件。建议部分620包括用户界面对象628(标记为“忽略”),该用户界面对象在被选择时致使设备500将所识别的事件信息的状态从建议状态540改成已拒绝状态560。处于已拒绝状态560时,设备500可被配置为不再显示与该日历事件相关联的此条建议事件信息,也不再建议与该日历事件相关联的此条建议事件信息。选择位于“忽略”和“添加到日历”图块上方的建议部分620的所识别的事件信息624时,设备上会出现对应于与所识别的事件信息相关联的日历事件的用户界面(未示出)(例如,由例如联系人模块137显示),用户可通过这个用户界面选择用户界面对象,将建议事件信息以已添加状态550添加到日历事件。
在一些实施例中,设备可在设备日历上显示日历事件,并且日历中的日历事件对应于处于建议状态540的事件信息。在设备日历上显示的处于建议状态540的日历事件,可任选地采用灰色显示,以指示其处于建议状态540。设备可显示日历事件的详情(例如,当用户激活与日历事件相关联的示能表示时),包括事件信息来源的至少一部分(例如,建议事件信息所基于的通信诸如电子邮件的一部分)。另选地或除此之外,设备可显示被激活时会致使设备显示建议事件信息所基于的通信(例如,电子邮件)的至少一部分的示能表示。显示的建议日历事件的详情还可任选地包括用于忽略(或拒绝)建议日历事件或接受建议日历事件的示能表示。因此,用户可在设备日历上看到建议日历事件,并且用户可快速且有效地拒绝或接受建议日历事件。
图6F示出了用户在设备500上打开消息(例如,由电子邮件客户端模块140显示的电子邮件)后可检视的屏幕,其中设备500已经在消息中识别到多个建议联系人和/或日历事件。图6F的用户界面包括建议部分630和消息部分632。消息部分632包括设备500收到的消息的内容。建议部分630还包括用户可选区,用户可选区在被选择时致使设备500显示后续用户界面,其中包含所识别的联系人信息或事件信息的多个实例的列表,如图6G所示。将图6F的建议部分630限制在单个横幅内而非将图6G的所有建议并入到图6F的用户界面中,这样做可以防止图6F的建议部分对用户产生干扰,导致用户无法轻松检视并阅读消息部分中的消息。
图6G示出了与图6F的用户界面相关联的后续用户界面,其中包含在消息中识别的建议联系人信息和事件信息的列表。如图6G所示,这些建议信息按类型来组织(例如,建议日历事件分在一个组,建议联系人分在另一个组),并且每条建议信息都包括上述“忽略”和“添加到联系人”及“添加到日历”功能。图6G的用户界面还包括用户界面对象634(“全部添加”),该用户界面对象在被选择时致使设备500将所识别的联系人信息或事件信息的多个实例(例如,图6G所示的两个建议日历事件)的分组中的每一个,以已添加状态550添加到对应联系人或日历事件。
图7A和图7B示出了根据一些实施方案的用于生成建议联系人的示例性过程的流程图。该过程可在电子设备(例如,设备500)上执行。
电子设备可接收(702)消息(例如,图6D,消息部分614中的电子邮件),然后在所接收的消息中识别(704)实体(例如,图6D,“John Appleseed”)和与该实体相关联的联系人信息(例如,图6D,“405-123-6633”)。设备可确定(722)与所识别的实体相关联的联系人(例如,图5A,联系人530A)不存在于数据库(例如,设备500上的存储装置,诸如通讯录数据库)中的多个联系人中,并且响应于此确定(724),设备可生成与该实体相关联的联系人,所生成的联系人包括联系人信息以及所生成的联系人是建议联系人(例如,处于建议状态540)的指示(例如,元数据)。需注意,当设备生成联系人“John Appleseed”作为建议联系人时,该联系人中的每个联系人信息项目都可被指示为建议联系人信息项目,并且以建议状态540存储,或者整个联系人作为整体可被指示为建议联系人,并且以建议状态540存储。还需注意,可使用所公开的过程来分析驻留在设备上的任何消息,诸如传入消息和传出消息。
在一些实施方案中,所识别的实体是(706)姓名,并且所识别的联系人信息是电话号码、地址、业务或社交网络处理。
在一些实施方案中,设备可在消息中辨识签名块来在消息中识别非结构化内容。例如,为了在消息中识别实体和相关联联系人信息,设备可识别(708)消息的签名块,并且针对实体和联系人信息来分析所识别的签名块。消息中可包括(710)电子邮件,并且签名块可为电子邮件签名。电子邮件可包括(712)电子邮件线程中的一封或多封先前电子邮件,并且识别电子邮件签名可包括分析电子邮件线程中的一封或多封先前电子邮件。展开电子邮件的引用层,有助于设备避免误关联电子邮件线程中不同电子邮件中的联系人信息位置。
在一些实施方案中,设备可通过使用数据检测器搜索限定短语,在消息中识别非结构化内容。例如,为了在消息中识别实体和相关联联系人信息,设备可基于预定义短语集合在消息中识别(714)一个或多个短语,并且针对实体和联系人信息来分析一个或多个所识别的短语。设备可通过网络来更新(716)预定义短语集合,让设备得以持续使用准确的短语。如果用户请求拒绝建议联系人,设备还可对一个或多个预定义短语进行降级(718)处理。换句话讲,如果用户持续拒绝通过使用特定短语识别得到的建议信息,这种行为可被设备视为是对那些短语不准确的指示。设备还可通过将数据库中的联系人信息与和电子设备上的该联系人信息相关联的语言(诸如消息、日历事件等)相互关联来生成(720)一个或多个预定义短语。这样,设备便可确定包含联系人信息的消息中的什么确切语言,例如导致了用户用该联系人信息创建或更新联系人。
在一些实施方案中,可使用图5A的数据架构让建议联系人变得易于搜索。例如,设备可接收(726)对联系人的请求(例如,用户请求经由设备上的应用程序搜索联系人)并且响应于对联系人的请求,搜索建议联系人。
在一些实施方案中,设备可(728)响应于联系人的生成,制止通过网络将建议联系人存储在远程数据库中。例如,如果建议联系人处于建议状态540,则设备可制止将联系人推送到用于通过网络在多个客户端上更新联系人的更新服务或同步服务(例如,设备上的应用程序)。
在一些实施方案中,设备可(730)接收关于将建议联系人添加到数据库中的请求(例如,图6D,“添加到联系人”618),并且响应于该请求,将所生成的联系人存储在数据库中,而不存储所生成的联系人是建议联系人的指示(例如,将联系人的状态从建议状态540改成已添加状态550)。响应于关于将建议联系人添加到数据库中的请求,设备可通过例如将联系人推送到更新服务或同步服务,来通过网络将所生成的联系人存储(732)到远程数据库中,而不存储所生成的联系人是建议联系人的指示。
在一些实施方案中,设备可(734)接收关于拒绝建议联系人的请求(例如,图6D,“忽略”620),并且响应于该请求,拒绝该建议联系人,从而防止将来作为在未来消息中识别到该实体和该联系人信息的结果而生成该建议联系人。可通过以已拒绝状态560存储被拒绝的联系人来实现这一点,让设备可以知道哪些已被拒绝。
图8A和图8B示出了根据一些实施方案的使用建议的联系人信息项目更新现有联系人的示例性过程的流程图。该过程可在电子设备(例如,设备500)上执行。
电子设备可接收(802)消息(例如,图6D,消息部分614中的电子邮件),然后在所接收的消息中识别(804)实体(例如,图6D,“John Appleseed”)和与该实体相关联的联系人信息项目(例如,图6D,“405-123-6633”)。设备可确定(822)与所识别的实体相关联的联系人(例如,图5A,联系人530A)存在于数据库中的多个联系人中,并且该联系人不包括所识别的联系人信息项目。响应于此确定(824),设备可更新联系人,以包括该联系人信息项目和该联系人信息项目是建议联系人信息项目(例如,处于建议状态540)的指示(例如,元数据)。还需注意,可使用所公开的过程来分析驻留在设备上的任何消息,诸如传入消息和传出消息。
在一些实施方案中,所识别的实体是(806)姓名,并且所识别的联系人信息项目是电话号码、地址、业务或社交网络处理。
在一些实施方案中,设备可在消息中辨识签名来在消息中识别非结构化内容。例如,为了在消息中识别实体和相关联联系人信息项目,设备可识别(808)消息的签名块,并且针对实体和联系人信息项目来分析所识别的签名块。消息中可包括(810)电子邮件,并且签名块可为电子邮件签名。电子邮件可包括(812)电子邮件线程中的一封或多封先前电子邮件,并且识别电子邮件签名可包括分析电子邮件线程中的一封或多封先前电子邮件。展开电子邮件的引用层,有助于设备避免误关联电子邮件线程中不同电子邮件中的联系人信息位置。
在一些实施方案中,设备可通过使用数据检测器搜索限定短语,在消息中识别非结构化内容。例如,为了在消息中识别实体和相关联联系人信息项目,设备可基于预定义短语集合在消息中识别(814)一个或多个短语,并且针对实体和联系人信息项目来分析一个或多个所识别的短语。设备可通过网络来更新(816)预定义短语集合,让设备得以持续使用准确的短语。作为请求拒绝建议联系人信息项目的结果,设备还可对一个或多个预定义短语进行降级(818)处理。换句话讲,如果用户持续拒绝通过使用特定短语识别得到的建议信息,这种行为可被设备视为是对那些短语不准确的指示。设备还可通过将数据库中的联系人信息与和电子设备上的该联系人信息相关联的语言(诸如消息、日历事件等)相互关联来生成(820)一个或多个预定义短语。这样,设备便可确定包含联系人信息的消息中的什么确切语言,例如导致了用户用该联系人信息创建或更新联系人。
在一些实施方案中,可使用图5A的数据架构让建议联系人变得易于搜索。例如,设备可接收(826)对联系人的请求(例如,用户请求经由设备上的应用程序搜索联系人)并且响应于对联系人的请求,搜索建议联系人信息项目。
在一些实施方案中,设备可(828)响应于联系人的更新,制止通过网络将建议联系人信息项目存储在远程数据库中。如果建议联系人信息项目处于建议状态540,则设备可制止将联系人信息项目推送到用于通过网络在多个客户端上更新联系人的更新服务或同步服务(例如,设备上的应用程序)。
在一些实施方案中,设备可(830)接收关于将建议联系人信息项目添加到数据库的请求(例如,图6B,“添加到联系人”602),并且响应于该请求,将所更新的联系人存储在数据库中,而不存储该联系人信息项目是建议联系人信息项目的指示(例如,将联系人信息的状态从建议状态540改成已添加状态550)。响应于对将建议联系人信息项目添加到数据库的请求,设备可通过例如将联系人信息推送到更新/同步服务,来通过网络将所更新的联系人存储(832)到远程数据库中,而不存储该联系人信息项目是建议联系人信息项目的指示。
在一些实施方案中,设备可(834)接收关于拒绝建议联系人信息项目的请求(例如,图6B,“忽略”604),并且响应于该请求,拒绝该建议联系人信息项目,从而防止将来作为在未来消息中识别到该实体和该联系人信息项目的结果而用该建议联系人信息项目更新该联系人。可通过以已拒绝状态560存储被拒绝的联系人信息来实现这一点,让设备可以知道哪些已被拒绝。
图9A和图9B示出了根据一些实施方案的用于显示具有建议联系人信息的联系人的示例性过程的流程图。该过程可在具有显示器的电子设备(例如,设备500)上执行。
电子设备可接收(902)消息(例如,图6D,消息部分614中的电子邮件),然后在所接收的消息中识别(904)实体(例如,图6D,“John Appleseed”)和与该实体相关联的联系人信息(例如,图6D,“405-123-6633”)。设备可生成(906)关于所识别的联系人信息是建议联系人信息的指示(例如,元数据),并且显示(908)对应于与该实体相关联的联系人的第一用户界面(例如,图6A)。第一用户界面可基于所生成的指示包括第一用户界面对象(例如,“建议”),从而指示所识别的联系人信息是建议联系人信息。
在一些实施方案中,设备可阻止(910)对应于选择建议联系人信息的输入调用应用程序来联系实体(例如,图6A,选择建议号码时设备不呼叫该号码)。
在一些实施方案中,设备可(912)在第一用户界面中检测对应于选择建议联系人信息的输入,并且响应于该检测,显示第二用户界面(例如,图6B),该第二用户界面包括与所识别的联系人信息相关联的第二用户界面对象(例如,图6B,“添加到联系人”602),该第二用户界面对象在被选择时致使电子设备将所识别的联系人信息添加到数据库。第二用户界面可(914)包括与所识别的联系人信息相关联的第三用户界面对象(例如,图6B,“忽略”604),该第三用户界面对象在被选择时致使电子设备停止显示第二用户界面对象。显示第二用户界面时会停止(916)显示第一用户界面。设备可响应于将所识别的联系人信息添加到数据库,而停止(918)显示第一用户界面对象。
在一些实施方案中,第二用户界面可显示(920)消息的至少一部分(例如,图6B,“相关电子邮件”)。设备可(922)检测对应于选择所显示的消息的输入,并且响应于该检测,调用应用程序(例如,电子邮件客户端模块140)来打开消息(例如,图6D)。消息可(924)为电子邮件,并且应用程序可为电子邮件应用程序。
在一些实施方案中,设备可在第二用户界面中检测(926)对应于选择建议联系人信息的输入,并且响应于该检测,调用应用程序(例如,电话模块138)来使用所识别的联系人信息联系实体。响应于对对应于在第二用户界面中选择建议联系人信息的输入的检测,设备可(928)将所识别的联系人信息添加到数据库(例如,将联系人信息的状态从建议状态540改成已添加状态550)。设备可响应于将所识别的联系人信息添加到数据库,而停止(918)显示第一用户界面对象。
图10示出了根据一些实施方案的建议联系人信息与消息一起显示的示例性过程的流程图。该过程可在具有显示器的电子设备(例如,设备500)上执行。
电子设备可接收(1002)消息(例如,图6D,消息部分614中的电子邮件),然后在所接收的消息中识别(1004)实体(例如,图6D,“John Appleseed”)和与该实体相关联的联系人信息(例如,图6D,“405-123-6633”)。消息可(1006)为电子邮件。所识别的实体可(1008)为姓名,并且所识别的联系人信息可为电话号码、地址、业务或社交网络处理。
设备可显示(1010)对应于所接收的消息的第一用户界面(例如,图6D)。第一用户界面可包括:第一部分(例如,图6D,消息部分614),其包括电子设备收到的消息的内容;以及第二部分(例如,图6D,建议部分612),其包括对应于所识别的实体的第一用户界面对象(例如,图6D,“John Appleseed”)、对应于所识别的联系人信息的第二用户界面对象(例如,图6D,“405-123-6633”),以及与所识别的联系人信息相关联的第三用户界面对象(例如,图6D,“添加到联系人”618),该第三用户界面对象在被选择时致使电子设备将所识别的联系人信息添加到数据库(例如,将联系人信息存储为联系人)。第二部分可(1012)包括与所识别的联系人信息相关联的第四用户界面对象(例如,图6D,“忽略”620),该第四用户界面对象在被选择时致使电子设备停止显示第三用户界面对象。
图11A和图11B示出了根据一些实施方案的用于生成建议日历事件的示例性过程的流程图。该过程可在电子设备(例如,设备500)上执行。
电子设备可接收(1102)消息(例如,图6E,消息部分622中的电子邮件),并且在所接收的消息中识别(1104)事件信息(例如,图6E,“晚餐”、“某寿司店”、“3月7日,星期五”或“晚上9:50”)。设备可生成(1122)与所识别的事件信息相关联的日历事件(例如,图5B,日历事件530B),其中所生成的日历事件包括事件信息以及所生成的日历事件是建议日历事件(例如,处于建议状态540)的指示(例如,元数据)。
在一些实施方案中,所识别的事件信息是(1106)日期和时间。
在一些实施方案中,设备可通过使用被配置为辨识由此类消息提供的呈特定格式的事件信息的模板,来在消息中识别结构化内容。例如,为了在消息中识别事件信息,设备可(1108)识别消息中内容的格式,从预定义模板集合中识别被配置为辨识消息中呈内容格式的事件信息的模板,并且针对事件信息使用所识别的模板来分析内容。消息可包括(1110)电子邮件,并且内容可包括预订(例如,图6E)。设备可通过网络来更新(1112)预定义模板集合,使得设备可以持续使用准确的模板。
在一些实施方案中,设备可通过使用数据检测器搜索事件信息标引,来在消息中识别非结构化内容。例如,为了在消息中识别事件信息,设备可基于日期和时间的预定义标引集合来在消息中识别(1114)一个或多个日期和时间标引,并且针对事件信息来分析一个或多个所识别的日期和时间的标引。设备可通过网络来更新(1116)日期和时间的预定义标引集合,使得设备可以持续使用准确的标引。作为请求拒绝建议日历事件的结果,设备可对一个或多个日期和时间的预定义标引进行降级(1118)。换句话讲,如果用户持续拒绝通过使用日期和时间的特定标引识别得到的建议信息,这种行为可被设备视为是对那些标引不准确的指示。设备可通过将包括多个日历事件的数据库中的事件信息与和电子设备上的事件信息相关联的语言相互关联来生成(1120)一个或多个日期和时间的预定义标引。这样,设备可更好地确定包含事件信息的消息中的什么语言,例如导致用户用该事件信息创建或更新日历事件。
在一些实施方案中,可使用图5的数据架构让建议日历事件变得易于搜索。例如,设备可接收(1124)对日历事件的请求(例如,用户请求经由设备上的应用程序搜索日历事件)并且响应于针对日历事件的请求,搜索建议日历事件。
在一些实施方案中,设备可响应于日历事件的生成,制止(1126)通过网络将建议日历事件存储在远程数据库中。例如,如果建议日历事件处于建议状态540,则设备可制止将日历事件推送到用于通过网络在多个客户端上更新日历事件的更新或同步服务(例如,设备上的应用程序)。
在一些实施方案中,设备可(1128)接收将建议日历事件添加到包括多个日历事件的数据库的请求(例如,图6E,“添加到日历”626),并且作为响应,将所生成的日历事件存储在数据库中,而不存储所生成的日历事件是建议日历事件的指示(例如,将日历事件的状态从建议状态540改成已添加状态550)。响应于对将建议日历事件添加到数据库的请求,设备可通过例如将日历事件推送到更新或同步服务来通过网络将所生成的日历事件存储(1130)到远程数据库中,而不存储所生成的日历事件是建议日历事件的指示。
在一些实施方案中,设备可(1132)接收关于拒绝建议日历事件的请求(例如,图6E,“忽略”628),并且响应于拒绝请求,阻止将来作为在未来消息中识别到该事件信息的结果而生成该建议日历事件。可通过以已拒绝状态560存储被拒绝的事件来实现这一点,让设备可以知道哪些已被拒绝。
图12示出了根据一些实施方案的建议事件信息与消息一起显示的示例性过程的流程图。该过程可在具有显示器的电子设备(例如,设备500)上执行。
电子设备可接收(1202)消息(例如,图6E,消息部分622中的电子邮件),并且在所接收的消息中识别(1204)事件信息(例如,图6E,“晚餐”、“某寿司店”、“3月7日,星期五”或“晚上9:50”)。消息可为(1206)电子邮件。所识别的事件信息可(1208)为日期和时间。
设备可显示(1210)对应于所接收的消息的第一用户界面(例如,图6E)。第一用户界面可包括:第一部分(例如,图6E,消息部分622),其包括电子设备收到的消息的内容;以及第二部分(例如,图6E,建议部分620),其包括对应于所识别的事件信息的第一用户界面对象(例如,图6E,“晚餐”、“某寿司店”、“3月7日,星期五”或“晚上9:50”)和与所识别的事件信息相关联的第二用户界面对象(例如,图6E,“添加到日历”626),该第二用户界面对象在被选择时致使电子设备将所识别的事件信息添加到包括多个日历事件的数据库(例如,将该事件信息存储为日历事件)。第二部分可(1212)包括与所识别的事件信息相关联的第三用户界面对象(例如,图6E,“忽略”628),该第三用户界面对象在被选择时致使电子设备停止显示第二用户界面对象。
图13示出了根据一些实施方案的多个建议联系人信息或事件信息与消息一起显示的示例性过程的流程图。该过程可在具有显示器的电子设备(例如,设备500)上执行。
电子设备可接收(1302)消息(例如,图6F,消息部分632中的电子邮件),并且在所接收的消息中识别(1304)联系人信息或事件信息的多个实例(例如,图6F,随附行程单中的“2个事件,1个联系人”)。
设备可显示(1306)对应于所接收的消息的第一用户界面(例如,图6F)。第一用户界面可包括:第一部分(例如,图6F,消息部分632),其包括电子设备所接收到的消息的内容;以及第二部分(例如,图6F,建议部分630);该第二部分在被选择时致使电子设备显示第二用户界面(图6G),其中包括所识别的联系人信息或事件信息的多个实例的列表。
在一些实施方案中,设备可(1308)检测对应于选择第一用户界面的第二部分的输入,并且响应于该检测,显示第二用户界面,该第二用户界面包括所识别的联系人信息或事件信息的多个实例的列表,以及针对所识别的联系人信息或事件信息的多个实例中的每一者的第一用户界面对象(例如,图6G,“添加到日历”或“添加到联系人”),该第一用户界面对象在被选择时致使电子设备将所识别的信息添加到数据库(例如,将事件信息存储为日历事件,或将联系人信息存储为联系人)。第二用户界面可(1310)针对所识别的联系人信息或事件信息的多个实例中的每一者包括第二用户界面对象(例如,图6G,“忽略”),该第二用户界面对象在被选择时致使电子设备停止显示第一用户界面对象。第二用户界面可(1312)包括第三用户界面对象(例如,图6G,“添加全部”634),该第三用户界面对象在被选择时致使电子设备将所识别的联系人信息或事件信息的多个实例的分组(例如,多个日历事件或联系人)中的每一者添加到数据库。显示第二用户界面时会停止(1314)显示第一用户界面。
应当理解,已描述的图7A至13中的操作的具体次序是示例性的,而并非意图指示所述次序是这些操作可被执行的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。为了简明起见,这些细节在这里不再重复。此外,需注意,可将过程700至1300(图7至图13)的各方面彼此结合。
上述信息处理过程中的操作可通过运行信息处理装置(诸如通用处理器或专用芯片)中的一个或多个功能模块来实现。这些模块、这些模块的组合、和/或其与一般硬件的组合(例如,如上面相对于图1A、图1B和图3所述的)都包括在本发明的保护范围内。
图14示出了电子设备1400的示例性功能框,在一些实施例中,电子设备执行上文所述的功能。如图14所示,电子设备1400包括被配置为显示图形对象的显示单元1402;被配置为接收用户手势的触敏表面单元1404;被配置为检测外部电子设备并与之通信的一个或多个RF单元1406;以及耦接到显示单元1402、触敏表面单元1404和RF单元1406的处理单元1408。
在一些实施方案中,处理单元1408被配置为支持运行一个或多个应用程序1412的操作系统1410。在一些实施方案中,处理单元1408被配置为从代表在无线通信射程内的外部设备的RF单元1406接收数据;在触敏表面单元1404上显示图形用户界面示能表示;并且响应于在所显示的示能表示上检测到接触,启动设备1400上的对应于正在外部设备上执行的应用程序的应用程序。
设备1400的功能块任选地由执行各种所述实例的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图14中所述的功能块任选地被组合或被分离为子块,以便实现各种所述实例的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
图15示出了另一个电子设备1500的示例性功能框,在一些实施例中,该电子设备执行上文所述的功能。如图14所示,电子设备1500包括被配置为显示图形对象的显示单元1402;被配置为接收用户手势的触敏表面单元1504;被配置为检测外部电子设备并与之通信的一个或多个RF单元1506;以及耦接到显示单元1502、触敏表面单元1504和RF单元1506的处理单元1508。
在一些实施方案中,处理单元1508被配置为支持单元1510至1520中的一者或多者执行上述各种功能。例如,接收单元1510被配置为执行上述接收功能中的一者或多者(例如,接收消息)。识别单元1512被配置为执行上述识别功能中的一者或多者(例如,在所接收的消息中识别实体和与实体相关联的联系人信息;在所接收的消息中识别事件信息;或在所接收的消息中识别联系人信息或事件信息的多个实例)。确定单元1514被配置为执行上述确定功能中的一者或多者(例如,确定与所识别的实体相关联的联系人不存在于数据库中的多个联系人中;确定与所识别的实体相关联的联系人存在于数据库中的多个联系人中,以及该联系人不包括所识别的联系人信息项目)。生成单元1516被配置为执行上述生成步骤中的一者或多者(例如,响应于确定,生成与实体相关联的联系人;生成所识别的联系人信息是建议联系人信息的指示;生成与所识别的事件信息相关联的日历事件)。更新单元1518被配置为执行上述更新步骤中的一者或多者(例如,响应于确定,更新联系人,以包括联系人信息项目和联系人信息项目是建议联系人信息项目的指示)。显示单元1520被配置为执行上述显示步骤中的一者或多者(例如,例如在显示单元1502上显示对应于与实体或所接收的消息相关联的联系人的第一用户界面)。
设备1500的功能块任选地由执行各种所述实例的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图15中所述的功能块任选地被组合或被分离为子块,以便实现各种所述实例的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
根据一些实施方案,图16示出根据各种所述实施方案的原理进行配置的一种电子设备1600的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图16中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图16所示,电子设备1600包括一个或多个RF单元1606,其被配置为与外部电子设备通信;以及处理单元1608,其耦接至RF单元1606。在一些实施方案中,处理单元1608包括接收单元1610、识别单元1612、确定单元1614、生成单元1616、分析单元1618、更新单元1620、降级单元1622、搜索单元1624、制止存储单元1626、存储单元1628和阻止单元1630。
处理单元1608被配置为:(例如,使用接收单元1610)接收消息;在所接收的消息中(例如,使用识别单元1612)识别实体和与实体相关联的联系人信息;(例如,使用确定单元1614)确定与所识别的实体相关联的联系人不存在于数据库中的多个联系人中;并且响应于该确定,(例如,使用生成单元1616)生成与该实体相关联的联系人,所生成的联系人包括联系人信息以及所生成的联系人是建议联系人的指示。
在一些实施方案中,所识别的实体包括姓名,并且所识别的联系人信息包括电话号码、地址、业务或社交网络处理。
在一些实施方案中,为了识别,处理单元1608被进一步配置为:(例如,使用识别单元1612)识别消息的签名块;并且(例如,使用分析单元1618)针对实体和联系人信息来分析所识别的签名块。
在一些实施方案中,消息包括电子邮件,并且签名块包括电子邮件签名。
在一些实施方案中,电子邮件包括电子邮件线程中的一封或多封先前电子邮件,并且其中为了识别电子邮件签名,处理单元1608被进一步配置为(例如,使用分析单元1618):分析电子邮件线程中的该一封或多封先前电子邮件。
在一些实施方案中,为了识别,处理单元1608被进一步配置为:基于预定义短语集合,(例如,使用识别单元1612)在消息中识别一个或多个短语;并且(例如,使用分析单元1618)针对实体和联系人信息来分析该一个或多个所识别的短语。
在一些实施方案中,处理单元1608被进一步配置为:(例如,使用更新单元1620)通过网络来更新预定义短语集合。
在一些实施方案中,处理单元1608被进一步配置为:如果用户请求拒绝建议联系人,(例如,使用降级单元1622)对预定义短语中的一者或多者进行降级。
在一些实施方案中,处理单元1608被进一步配置为:将数据库中的联系人信息与和电子设备上的联系人信息相关联的语言相互关联来(例如,使用生成单元1616)生成预定义短语中的一者或多者。
在一些实施方案中,处理单元1608被进一步配置为:(例如,使用接收单元1610)接收针对联系人的请求;并且响应于针对联系人的请求,(例如,使用搜索单元1624)搜索该建议联系人。
在一些实施方案中,处理单元1608被进一步配置为:响应于联系人的生成,(例如,使用制止存储单元1626)制止通过网络将建议联系人存储在远程数据库中。
在一些实施方案中,处理单元1608被进一步配置为:(例如,使用接收单元1610)接收将建议联系人添加到数据库的请求;并且响应于将建议联系人添加到数据库的请求,(例如,使用存储单元1628)将所生成的联系人存储在数据库中,而不存储所生成的联系人是建议联系人的指示。
在一些实施方案中,处理单元1608被进一步配置为:响应于将建议联系人添加到数据库的请求,(例如,使用存储单元1628)通过网络将所生成的联系人存储在远程数据库中,而不存储所生成的联系人是建议联系人的指示。
在一些实施方案中,处理单元1608被进一步配置为:(例如,使用接收单元1610)接收拒绝建议联系人的请求;并且响应于拒绝建议联系人的请求,(例如,使用阻止单元1630)阻止将来作为在未来消息中识别到该实体和该联系人信息的结果而生成该建议联系人。
以上参考图7A至图7B所述的操作,任选地由图1A至图1B或图16中所描绘的部件来实现。例如,框702处的接收操作、框704处的识别操作、框722处的确定操作、框724处的生成操作、框726处的接收操作和框728处的制止存储操作,可由事件分类器170、事件识别器180和事件处理程序190实现。事件分类器170中的事件监视器171检测在触敏显示器112上的接触,并且事件分配器模块174将事件信息递送到应用程序136-1。应用程序136-1的相应事件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上的第一位置处的第一接触是否对应于预定义的事件或子事件,诸如对用户界面上的示能表示的激活。当检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190可利用或调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件处理程序190访问相应GUI更新器178,以更新由应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道如何可基于在图1A至图1B中所描绘的部件来实现其他过程。
根据一些实施方案,图17示出根据各种所述实施方案的原理进行配置的一种电子设备1700的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图17中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图17所示,电子设备1700包括一个或多个RF单元1706,其被配置为与外部电子设备通信;以及处理单元1708,其耦接至一个或多个RF单元1706。在一些实施方案中,处理单元1708包括接收单元1710、识别单元1712、确定单元1714、生成单元1716、分析单元1718、更新单元1720、降级单元1722、搜索单元1724、制止存储单元1726、存储单元1728和阻止单元1730。
处理单元1708被配置为:(例如,使用接收单元1710)接收消息;(例如,使用识别单元1712)在所接收的消息中识别实体和与实体相关联的联系人信息项目;(例如,使用确定单元1714)确定与所识别的实体相关联的联系人存在于数据库中的多个联系人中,以及该联系人不包括所识别的联系人信息项目;并且响应于该确定,(例如,使用更新单元1720)更新该联系人,以包括联系人信息项目和该联系人信息项目是建议联系人信息项目的指示。
在一些实施方案中,所识别的实体包括姓名,并且所识别的联系人信息项目包括电话号码、地址、业务或社交网络处理。
在一些实施方案中,为了识别,处理单元1708被进一步配置为:(例如,使用识别单元1712)识别消息的签名块;并且(例如,使用分析单元1718)针对实体和联系人信息项目来分析所识别的签名块。
在一些实施方案中,消息包括电子邮件,并且签名块包括电子邮件签名。
在一些实施方案中,电子邮件包括电子邮件线程中的一封或多封先前电子邮件,并且其中为了识别电子邮件签名,处理单元1708被进一步配置为(例如,使用分析单元1718):分析电子邮件线程中的该一封或多封先前电子邮件。
在一些实施方案中,为了识别,处理单元1708被进一步配置为:基于预定义短语集合,(例如,使用识别单元1712)在消息中识别一个或多个短语;并且(例如,使用分析单元1718)针对实体和联系人信息项目来分析该一个或多个所识别的短语。
在一些实施方案中,处理单元1708被进一步配置为:(例如,使用更新单元1720)通过网络来更新预定义短语集合。
在一些实施方案中,处理单元1708被进一步配置为:作为请求拒绝建议联系人信息项目的结果,(例如,使用降级单元1722)对预定义短语中的一者或多者进行降级。
在一些实施方案中,处理单元1708被进一步配置为:将数据库中的联系人信息与和电子设备上的联系人信息相关联的语言相互关联来(例如,使用生成单元1716)生成预定义短语中的一者或多者。
在一些实施方案中,处理单元1708被进一步配置为:(例如,使用接收单元1710)接收针对联系人的请求;并且响应于针对联系人的请求,(例如,使用搜索单元1724)搜索该建议联系人信息项目。
在一些实施方案中,处理单元1708被进一步配置为:响应于联系人的更新,(例如,使用制止存储单元1726)制止通过网络将建议联系人信息项目存储在远程数据库中。
在一些实施方案中,处理单元1708被进一步配置为:(例如,使用接收单元1710)接收将建议联系人信息项目添加到数据库的请求;并且响应于将建议联系人信息项目添加到数据库的请求,将所更新的联系人存储(例如,使用存储单元1728)在数据库中,而不存储联系人信息项目是建议联系人信息项目的指示。
在一些实施方案中,处理单元1708被进一步配置为:响应于将建议联系人信息项目添加到数据库的请求,(例如,使用存储单元1728)通过网络将所更新的联系人存储在远程数据库中,而不存储联系人信息项目是建议联系人信息项目的指示。
在一些实施方案中,处理单元1708被进一步配置为:(例如,使用接收单元1710)接收拒绝建议联系人信息项目的请求;并且响应于拒绝建议联系人信息项目的请求,(例如,使用阻止单元1730)阻止将来因为在未来消息中识别到实体和联系人信息项目而用建议联系人信息项目更新联系人。
以上参考图8A至图8B所述的操作任选地由图1A至图1B或图17中所描绘的部件来实现。例如,框802处的接收操作、框804处的识别操作、框822处的确定操作和框824处的更新操作可由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类器170中的事件监视器171检测在触敏显示器112上的接触,并且事件分配器模块174将事件信息递送到应用程序136-1。应用程序136-1的相应事件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上的第一位置处的第一接触是否对应于预定义的事件或子事件,诸如对用户界面上的示能表示的激活。当检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190可利用或调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件处理程序190访问相应GUI更新器178,以更新由应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道如何可基于在图1A至图1B中所描绘的部件来实现其他过程。
根据一些实施方案,图18示出根据各种所述实施方案的原理进行配置的一种电子设备1800的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图18中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图18所示,电子设备1800包括显示单元1802,其被配置为显示图形对象;一个或多个RF单元1806,其被配置为与外部电子设备通信;以及处理单元1808,其耦接到显示单元1802和一个或多个RF单元1806。在一些实施方案中,处理单元1808包括接收单元1810、识别单元1812、生成单元1814、显示启用单元1816、阻止单元1818、检测单元1820、调用单元1822和添加单元1824。
处理单元1808被配置为:(例如,使用接收单元1810)接收消息;(例如,使用识别单元1812)在所接收的消息中识别实体和与实体相关联的联系人信息;(例如,使用生成单元1814)生成所识别的联系人信息是建议联系人信息的指示;并且(例如,使用显示启用单元1816)启用显示对应于与实体相关联的联系人的第一用户界面,并且该第一用户界面包括第一用户界面对象,该第一用户界面对象基于所生成的指示来指示所识别的联系人信息是建议联系人信息。
在一些实施方案中,处理单元1808被进一步配置为:(例如,使用阻止单元1818)阻止对应于选择建议联系人信息的输入调用应用程序来联系该实体。
在一些实施方案中,处理单元1808被进一步配置为:(例如,使用检测单元1820)在第一用户界面中检测对应于选择建议联系人信息的输入;并且响应于在第一用户界面中检测到对应于选择建议联系人信息的输入,(例如,使用显示启用单元1816)启用显示第二用户界面,并且该第二用户界面包括与所识别的联系人信息相关联的第二用户界面对象,该第二用户界面对象在被选择时致使电子设备将所识别的联系人信息添加到数据库。
在一些实施方案中,第二用户界面包括与所识别的联系人信息相关联的第三用户界面对象,该第三用户界面对象在被选择时致使电子设备停止显示第二用户界面对象。
在一些实施方案中,显示第二用户界面停止显示第一用户界面。
在一些实施方案中,第二用户界面显示消息的至少一部分。
在一些实施方案中,处理单元1808被进一步配置为:例如,使用检测单元1820)检测(对应于选择所显示的消息的输入;并且响应于检测到对应于选择所显示的消息的输入,(例如,使用调用单元1822)调用应用程序来打开该消息。
在一些实施方案中,消息包括电子邮件,并且应用程序包括电子邮件应用程序。
在一些实施方案中,处理单元1808被进一步配置为:(例如,使用检测单元1820)在第二用户界面中检测对应于选择建议联系人信息的输入;并且响应于在第二用户界面中检测到对应于选择建议联系人信息的输入,(例如,使用调用单元1822)调用应用程序来使用所识别的联系人信息来联系该实体。
在一些实施方案中,处理单元1808被进一步配置为:响应于在第二用户界面中检测到对应于选择建议联系人信息的输入,(例如,使用添加单元1824)将所识别的联系人信息添加到数据库。
在一些实施方案中,处理单元1808被进一步配置为:响应于将所识别的联系人信息添加到数据库,停止第一用户界面对象的显示。
以上参考图9A至图9B所述的操作,任选地由图1A至图1B或图18中所描绘的部件来实现。例如,框902处的接收操作、框904处的识别操作、框906处的生成操作和框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中所描绘的部件来实现其他过程。
根据一些实施方案,图19示出根据各种所述实施方案的原理进行配置的一种电子设备1900的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图19中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图19所示,电子设备1900包括显示单元1902,其被配置为显示图形对象;一个或多个RF单元1906,其被配置为与外部电子设备通信;以及处理单元1908,其耦接到显示单元1902和一个或多个RF单元1906。在一些实施方案中,处理单元1908包括接收单元1910、识别单元1912和显示启用单元1914。
处理单元1908被配置为:(例如,使用接收单元1910)接收消息;(例如,使用识别单元1912)在所接收的消息中识别实体和与实体相关联的联系人信息;并且(例如,使用显示启用单元1914)启用显示对应于所接收消息的第一用户界面,并且该第一用户界面包括:第一部分,其包括电子设备所接收到的消息的内容;以及第二部分,其包括:对应于所识别的实体的第一用户界面对象;对应于所识别的联系人信息的第二用户界面对象;以及与所识别的联系人信息相关联的第三用户界面对象,该第三用户界面对象在被选择时致使电子设备将所识别的联系人信息添加到数据库。
在一些实施方案中,第二部分包括与所识别的联系人信息相关联的第四用户界面对象,该第四用户界面对象在被选择时致使电子设备停止显示第三用户界面对象。
在一些实施方案中,消息包括电子邮件。
在一些实施方案中,所识别的实体包括姓名,并且所识别的联系人信息包括电话号码、地址、业务或社交网络处理。
以上参考图10所述的操作任选地由图1A至图1B或图19中所描绘的部件来实现。例如,框1002处的接收操作、框1004处的识别操作和框1010处的显示操作可由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类器170中的事件监视器171检测在触敏显示器112上的接触,并且事件分配器模块174将事件信息递送到应用程序136-1。应用程序136-1的相应事件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上的第一位置处的第一接触是否对应于预定义的事件或子事件,诸如对用户界面上的示能表示的激活。当检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190可利用或调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件处理程序190访问相应GUI更新器178,以更新由应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道如何可基于在图1A至图1B中所描绘的部件来实现其他过程。
根据一些实施方案,图20示出根据各种所述实施方案的原理进行配置的一种电子设备2000的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图20中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图20所示,电子设备2000包括一个或多个RF单元2006,其被配置为与外部电子设备通信;以及处理单元2008,其耦接至一个或多个RF单元2006。在一些实施方案中,处理单元2008包括接收单元2010、识别单元2012、生成单元2014、分析单元2016、更新单元2018、降级单元2020、搜索单元2022、制止存储单元2024、存储单元2026和阻止单元2028。
处理单元2008被配置为:(例如,使用接收单元2010)接收消息;(例如,使用识别单元2012)在所接收的消息中识别事件信息;并且(例如,使用生成单元2014)生成与所识别的事件信息相关联的日历事件,所生成的日历事件包括事件信息以及所生成的日历事件是建议日历事件的指示。
在一些实施方案中,所识别的事件信息包括日期和时间。
在一些实施方案中,为了识别,处理单元2008被进一步配置为:(例如,使用识别单元2012)识别消息中内容的格式;(例如,使用识别单元2012)从预定义模板集合中识别被配置为辨识消息中呈内容格式的事件信息的模板;并且(例如,使用分析单元2016)针对事件信息使用所识别的模板来分析内容。
在一些实施方案中,消息包括电子邮件,并且内容包括预订。
在一些实施方案中,处理单元2008被进一步配置为(例如,使用更新单元2018)通过网络来更新预定义模板集合。
在一些实施方案中,为了识别,处理单元2008被进一步配置为:基于日期和时间的预定义标引集合,(例如,使用识别单元2012)在消息中识别一个或多个日期和时间的标引;并且(例如,使用分析单元2016)针对事件信息来分析一个或多个所识别的日期和时间的标引。
在一些实施方案中,处理单元2008被进一步配置为(例如,使用更新单元2018)通过网络来更新日期和时间的预定义标引集合。
在一些实施方案中,处理单元2008被进一步配置为:如果用户请求拒绝建议建议日历事件,(例如,使用降级单元2020)对日期和时间的预定义标引中的一者或多者进行降级。
在一些实施方案中,处理单元2008被进一步配置为:将包括多个日历事件的数据库中的事件信息与和电子设备上的事件信息相关联的语言相互关联来(例如,使用生成单元2014)生成日期和时间的预定义标引中的一者或多者。
在一些实施方案中,处理单元2008被进一步配置为:(例如,使用接收单元2010)接收针对日历事件的请求;并且响应于针对日历事件的请求,(例如,使用搜索单元2022)搜索建议日历事件。
在一些实施方案中,处理单元2008被进一步配置为:响应于日历事件的生成,(例如,使用制止存储单元2024)制止通过网络将建议日历事件存储在远程数据库中。
在一些实施方案中,处理单元2008被进一步配置为:(例如,使用接收单元2010)接收将建议日历事件添加到包括多个日历事件的数据库的请求;并且响应于将建议日历事件添加到数据库的请求,将所生成的日历事件存储(例如,使用存储单元2026)到数据库中,而不存储所生成的日历事件是建议日历事件的指示。
在一些实施方案中,处理单元2008被进一步配置为:响应于将建议日历事件添加到数据库的请求,(例如,使用存储单元2026)通过网络将所生成的日历事件存储在远程数据库中,而不存储所生成的日历事件是建议日历事件的指示。
在一些实施方案中,处理单元2008被进一步配置为:(例如,使用接收单元2010)接收拒绝建议日历事件的请求;并且响应于拒绝建议日历事件的请求,(例如,使用阻止单元2028)阻止将来作为在未来消息中识别到该事件信息的结果而生成该建议日历事件。
以上参考图11A至图11B所述的操作,任选地由图1A至图1B或图20中所描绘的部件来实现。例如,框1102处的接收操作、框1104处的识别操作和框1122处的生成操作可由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类器170中的事件监视器171检测在触敏显示器112上的接触,并且事件分配器模块174将事件信息递送到应用程序136-1。应用程序136-1的相应事件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上的第一位置处的第一接触是否对应于预定义的事件或子事件,诸如对用户界面上的示能表示的激活。当检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190可利用或调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件处理程序190访问相应GUI更新器178,以更新由应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道如何可基于在图1A至图1B中所描绘的部件来实现其他过程。
根据一些实施方案,图21示出根据各种所述实施方案的原理进行配置的一种电子设备2100的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图21中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图21所示,电子设备2100包括显示单元2102,其被配置为显示图形对象;一个或多个RF单元2106,其被配置为与外部电子设备通信;以及处理单元2108,其耦接到显示单元2102和一个或多个RF单元2106。在一些实施方案中,处理单元2108包括接收单元2110、识别单元2112和显示启用单元2114。
处理单元2108被配置为:(例如,使用接收单元2110)接收消息;(例如,使用识别单元2112)在所接收的消息中识别事件信息;并且(例如,使用显示启用单元2114)启用显示对应于所接收的消息的第一用户界面,该第一用户界面包括:第一部分,其包括电子设备所接收到的消息的内容;以及第二部分,其包括:对应于所识别的事件信息的第一用户界面对象;以及与所识别的事件信息相关联的第二用户界面对象,该第二用户界面对象在被选择时致使电子设备将所识别的事件信息添加到包括多个日历事件的数据库。
在一些实施方案中,第二部分包括与所识别的事件信息相关联的第三用户界面对象,该第三用户界面对象在被选择时致使电子设备停止显示第二用户界面对象。
在一些实施方案中,消息包括电子邮件。
在一些实施方案中,所识别的事件信息包括日期和时间。
以上参考图12所述的操作任选地由图1A至图1B或图21中所描绘的部件来实现。例如,框1202处的接收操作、框1204处的识别操作和框1210处的显示操作可由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类器170中的事件监视器171检测在触敏显示器112上的接触,并且事件分配器模块174将事件信息递送到应用程序136-1。应用程序136-1的相应事件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上的第一位置处的第一接触是否对应于预定义的事件或子事件,诸如对用户界面上的示能表示的激活。当检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190可利用或调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件处理程序190访问相应GUI更新器178,以更新由应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道如何可基于在图1A至图1B中所描绘的部件来实现其他过程。
根据一些实施方案,图22示出根据各种所述实施方案的原理进行配置的一种电子设备2200的功能框图。该设备的功能块任选地由执行各种所述实施方案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图22中所述的功能块任选地被组合或被分离为子块,以便实现各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图22所示,电子设备2200包括显示单元2202,其被配置为显示图形对象;一个或多个RF单元2206,其被配置为与外部电子设备通信;以及处理单元2208,其耦接到显示单元2202和一个或多个RF单元2206。在一些实施方案中,处理单元2208包括接收单元2210、识别单元2212、显示启用单元2214和检测单元2216。
处理单元2208被配置为:(例如,使用接收单元2210)接收消息;(例如,使用识别单元2212)在所接收的消息中识别联系人信息或事件信息的多个实例;并且(例如,使用显示启用单元2214)启用显示对应于所接收的消息的第一用户界面,并且该第一用户界面包括:第一部分,其包括电子设备所接收到的消息的内容;以及第二部分,该第二部分在被选择时致使电子设备显示第二用户界面,该第二用户界面包括所识别的联系人信息或事件信息的多个实例的列表。
在一些实施方案中,处理单元2208被进一步配置为:(例如,使用检测单元2216)检测对应于选择第一用户界面的第二部分的输入;并且响应于检测到对应于选择第一用户界面的第二部分的输入,(例如,使用显示启用单元2214)启用显示第二用户界面,并且该第二用户界面包括:所识别的联系人信息或事件信息的多个实例的列表;以及针对所识别的联系人信息或事件信息的多个实例中的每一者的第一用户界面对象,该第一用户界面对象在被选择时致使电子设备将所识别的信息添加到数据库。
在一些实施方案中,第二用户界面针对所识别的联系人信息或事件信息的多个实例中的每一者包括第二用户界面对象,该第二用户界面对象在被选择时致使电子设备停止显示第一用户界面对象。
在一些实施方案中,第二用户界面包括第三用户界面对象,该第三用户界面对象在被选择时致使电子设备将所识别的联系人信息或事件信息的多个实例的分组中的每一者添加到数据库。
在一些实施方案中,启用显示第二用户界面的显示会停止第一用户界面。
以上参考图13所述的操作任选地由图1A至图1B或图22中所描绘的部件来实现。例如,框1302处的接收操作、框1304处的识别操作和框1306处的显示操作可由事件分类器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 (45)

1.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序被配置为由具有显示器的电子设备的一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
接收包括非结构化内容的消息;
响应于接收到所述消息,在所述非结构化内容中识别事件信息;
响应于识别出所述事件信息,生成与所识别的所述事件信息相关联的日历事件;
如果确定与所识别的所述事件信息相关联的所述日历事件已经被生成,并且响应于与打开所接收的所述消息的请求相对应的用户输入,在所述显示器上同时显示:
所接收的所述消息的至少一部分;
所生成的所述日历事件是建议日历事件的指示;以及
针对所生成的所述日历事件的拒绝示能表示;
在所述显示器上显示针对所生成的所述日历事件的所述拒绝示能表示的同时,检测对所述拒绝示能表示的选择;以及
响应于检测到对所述拒绝示能表示的选择:
停止显示所生成的所述日历事件是建议日历事件的所述指示;以及
维持所接收的所述消息的所述至少一部分的显示。
2.根据权利要求1所述的非暂态计算机可读存储介质,其中所识别的所述事件信息是日期和时间。
3.根据权利要求1所述的非暂态计算机可读存储介质,其中识别所述事件信息还包括:
识别所述消息中的内容的格式;
从预定义模板集合中识别被配置为辨识所述消息中的所述内容的所述格式中的事件信息的模板;以及
针对所述事件信息利用所识别的所述模板来分析所述内容。
4.根据权利要求3所述的非暂态计算机可读存储介质,其中所述消息包括电子邮件,并且所述内容包括预订。
5.根据权利要求3所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
通过网络来更新所述预定义模板集合。
6.根据权利要求1所述的非暂态计算机可读存储介质,其中识别事件信息还包括:
基于日期和时间的预定义标引的集合来在所述消息中识别日期和时间的一个或多个标引;以及
针对所述事件信息来分析日期和时间的所识别的所述一个或多个标引。
7.根据权利要求6所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
通过网络来更新日期和时间的预定义标引的所述集合。
8.根据权利要求6所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
作为请求拒绝所述建议日历事件的结果,对日期和时间的所述预定义标引中的一个或多个预定义标引进行降级。
9.根据权利要求6所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
通过将包括多个日历事件的数据库中的事件信息与和所述电子设备上的事件信息相关联的语言相互关联来生成日期和时间的所述预定义标引中的一个或多个预定义标引。
10.根据权利要求1所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
接收对日历事件的请求;以及
响应于针对日历事件的所述请求,搜索所述建议日历事件。
11.根据权利要求1所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
响应于所述日历事件的生成,制止通过网络将所述建议日历事件存储在远程数据库中。
12.根据权利要求1所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
接收将所述建议日历事件添加到包括多个日历事件的数据库的请求;以及
响应于将所述建议日历事件添加到所述数据库的所述请求,将所生成的所述日历事件存储在所述数据库中,而不存储所生成的所述日历事件是建议日历事件的所述指示。
13.根据权利要求12所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
响应于将所述建议日历事件添加到所述数据库的所述请求,通过网络将所生成的所述日历事件存储到远程数据库中,而不存储所生成的所述日历事件是建议日历事件的所述指示。
14.根据权利要求1所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
接收拒绝所述建议日历事件的请求;以及
响应于拒绝所述建议日历事件的所述请求,阻止将来作为在未来消息中所述事件信息被识别的结果而生成所述建议日历事件。
15.根据权利要求1所述的非暂态计算机可读存储介质,其中所述非结构化内容是自然语言内容。
16.一种电子设备,包括:
显示器;
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
接收包括非结构化内容的消息;
响应于接收到所述消息,在所述非结构化内容中识别事件信息;
响应于识别出所述事件信息,生成与所识别的所述事件信息相关联的日历事件;
如果确定与所识别的所述事件信息相关联的所述日历事件已经被生成,并且响应于与打开所接收的所述消息的请求相对应的用户输入,在所述显示器上同时显示:
所接收的所述消息的至少一部分;以及
所生成的所述日历事件是建议日历事件的指示;以及
针对所生成的所述日历事件的拒绝示能表示;
在所述显示器上显示针对所生成的所述日历事件的所述拒绝示能表示的同时,检测对所述拒绝示能表示的选择;以及
响应于检测到对所述拒绝示能表示的选择:
停止显示所生成的所述日历事件是建议日历事件的所述指示;以及
维持所接收的所述消息的所述至少一部分的显示。
17.根据权利要求16所述的电子设备,其中所识别的所述事件信息是日期和时间。
18.根据权利要求16所述的电子设备,其中识别所述事件信息还包括:
识别所述消息中的内容的格式;
从预定义模板集合中识别被配置为辨识所述消息中的所述内容的所述格式中的事件信息的模板;以及
针对所述事件信息利用所识别的所述模板来分析所述内容。
19.根据权利要求18所述的电子设备,其中所述消息包括电子邮件,并且所述内容包括预订。
20.根据权利要求18所述的电子设备,所述一个或多个程序还包括用于以下的指令:
通过网络来更新所述预定义模板集合。
21.根据权利要求16所述的电子设备,其中识别事件信息还包括:
基于日期和时间的预定义标引的集合来在所述消息中识别日期和时间的一个或多个标引;以及
针对所述事件信息来分析日期和时间的所识别的所述一个或多个标引。
22.根据权利要求21所述的电子设备,所述一个或多个程序还包括用于以下的指令:
通过网络来更新日期和时间的预定义标引的所述集合。
23.根据权利要求21所述的电子设备,所述一个或多个程序还包括用于以下的指令:
作为请求拒绝所述建议日历事件的结果,对日期和时间的所述预定义标引中的一个或多个预定义标引进行降级。
24.根据权利要求21所述的电子设备,所述一个或多个程序还包括用于以下的指令:
通过将包括多个日历事件的数据库中的事件信息与和所述电子设备上的事件信息相关联的语言相互关联来生成日期和时间的所述预定义标引中的一个或多个预定义标引。
25.根据权利要求16所述的电子设备,所述一个或多个程序还包括用于以下的指令:
接收对日历事件的请求;以及
响应于针对日历事件的所述请求,搜索所述建议日历事件。
26.根据权利要求16所述的电子设备,所述一个或多个程序还包括用于以下的指令:
响应于所述日历事件的生成,制止通过网络将所述建议日历事件存储在远程数据库中。
27.根据权利要求16所述的电子设备,所述一个或多个程序还包括用于以下的指令:
接收将所述建议日历事件添加到包括多个日历事件的数据库的请求;以及
响应于将所述建议日历事件添加到所述数据库的所述请求,将所生成的所述日历事件存储在所述数据库中,而不存储所生成的所述日历事件是建议日历事件的所述指示。
28.根据权利要求27所述的电子设备,所述一个或多个程序还包括用于以下的指令:
响应于将所述建议日历事件添加到所述数据库的所述请求,通过网络将所生成的所述日历事件存储到远程数据库中,而不存储所生成的所述日历事件是建议日历事件的所述指示。
29.根据权利要求16所述的电子设备,所述一个或多个程序还包括用于以下的指令:
接收拒绝所述建议日历事件的请求;以及
响应于拒绝所述建议日历事件的所述请求,阻止将来作为在未来消息中所述事件信息被识别的结果而生成所述建议日历事件。
30.根据权利要求16所述的电子设备,其中所述非结构化内容是自然语言内容。
31.一种用于生成建议日历事件的方法,包括:
在具有显示器的电子设备处:
接收包括非结构化内容的消息;
响应于接收到所述消息,在所述非结构化内容中识别事件信息;
响应于识别出所述事件信息,生成与所识别的所述事件信息相关联的日历事件;
如果确定与所识别的所述事件信息相关联的所述日历事件已经被生成,并且响应于与打开所接收的所述消息的请求相对应的用户输入,在所述显示器上同时显示:
所接收的所述消息的至少一部分;以及
所生成的所述日历事件是所述建议日历事件的指示;以及
针对所生成的所述日历事件的拒绝示能表示;
在所述显示器上显示针对所生成的所述日历事件的所述拒绝示能表示的同时,检测对所述拒绝示能表示的选择;以及
响应于检测到对所述拒绝示能表示的选择:
停止显示所生成的所述日历事件是建议日历事件的所述指示;以及
维持所接收的所述消息的所述至少一部分的显示。
32.根据权利要求31所述的方法,其中所识别的所述事件信息是日期和时间。
33.根据权利要求31所述的方法,其中识别所述事件信息还包括:
识别所述消息中的内容的格式;
从预定义模板集合中识别被配置为辨识所述消息中的所述内容的所述格式中的事件信息的模板;以及
针对所述事件信息利用所识别的所述模板来分析所述内容。
34.根据权利要求33所述的方法,其中所述消息包括电子邮件,并且所述内容包括预订。
35.根据权利要求33所述的方法,还包括:
通过网络来更新所述预定义模板集合。
36.根据权利要求31所述的方法,其中识别事件信息还包括:
基于日期和时间的预定义标引的集合来在所述消息中识别日期和时间的一个或多个标引;以及
针对所述事件信息来分析日期和时间的所识别的所述一个或多个标引。
37.根据权利要求36所述的方法,还包括:
通过网络来更新日期和时间的预定义标引的所述集合。
38.根据权利要求36所述的方法,还包括:
作为请求拒绝所述建议日历事件的结果,对日期和时间的所述预定义标引中的一个或多个预定义标引进行降级。
39.根据权利要求36所述的方法,还包括:
通过将包括多个日历事件的数据库中的事件信息与和所述方法上的事件信息相关联的语言相互关联来生成日期和时间的所述预定义标引中的一个或多个预定义标引。
40.根据权利要求31所述的方法,还包括:
接收对日历事件的请求;以及
响应于针对日历事件的所述请求,搜索所述建议日历事件。
41.根据权利要求31所述的方法,还包括:
响应于所述日历事件的生成,制止通过网络将所述建议日历事件存储在远程数据库中。
42.根据权利要求31所述的方法,还包括:
接收将所述建议日历事件添加到包括多个日历事件的数据库的请求;以及
响应于将所述建议日历事件添加到所述数据库的所述请求,将所生成的所述日历事件存储在所述数据库中,而不存储所生成的所述日历事件是建议日历事件的所述指示。
43.根据权利要求42所述的方法,还包括:
响应于将所述建议日历事件添加到所述数据库的所述请求,通过网络将所生成的所述日历事件存储到远程数据库中,而不存储所生成的所述日历事件是建议日历事件的所述指示。
44.根据权利要求31所述的方法,还包括:
接收拒绝所述建议日历事件的请求;以及
响应于拒绝所述建议日历事件的所述请求,阻止将来作为在未来消息中所述事件信息被识别的结果而生成所述建议日历事件。
45.根据权利要求31所述的方法,其中所述非结构化内容是自然语言内容。
CN202010484773.7A 2014-05-30 2015-05-28 结构化建议 Active CN111666352B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462005839P 2014-05-30 2014-05-30
US62/005,839 2014-05-30
US14/718,049 US10565219B2 (en) 2014-05-30 2015-05-20 Techniques for automatically generating a suggested contact based on a received message
US14/718,049 2015-05-20
CN201580028663.7A CN106415542A (zh) 2014-05-30 2015-05-28 结构化建议

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201580028663.7A Division CN106415542A (zh) 2014-05-30 2015-05-28 结构化建议

Publications (2)

Publication Number Publication Date
CN111666352A CN111666352A (zh) 2020-09-15
CN111666352B true CN111666352B (zh) 2022-01-11

Family

ID=53373643

Family Applications (5)

Application Number Title Priority Date Filing Date
CN202010484773.7A Active CN111666352B (zh) 2014-05-30 2015-05-28 结构化建议
CN201580028663.7A Pending CN106415542A (zh) 2014-05-30 2015-05-28 结构化建议
CN202010485672.1A Active CN111666354B (zh) 2014-05-30 2015-05-28 结构化建议
CN202010485434.0A Pending CN111666353A (zh) 2014-05-30 2015-05-28 结构化建议
CN202211115327.4A Pending CN115481203A (zh) 2014-05-30 2015-05-28 结构化建议

Family Applications After (4)

Application Number Title Priority Date Filing Date
CN201580028663.7A Pending CN106415542A (zh) 2014-05-30 2015-05-28 结构化建议
CN202010485672.1A Active CN111666354B (zh) 2014-05-30 2015-05-28 结构化建议
CN202010485434.0A Pending CN111666353A (zh) 2014-05-30 2015-05-28 结构化建议
CN202211115327.4A Pending CN115481203A (zh) 2014-05-30 2015-05-28 结构化建议

Country Status (7)

Country Link
US (1) US10565219B2 (zh)
EP (5) EP3188101A1 (zh)
JP (6) JP6340479B2 (zh)
KR (6) KR102223150B1 (zh)
CN (5) CN111666352B (zh)
AU (6) AU2015266840B2 (zh)
WO (1) WO2015184163A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
WO2015183699A1 (en) 2014-05-30 2015-12-03 Apple Inc. Predictive messaging method
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
US10725618B2 (en) * 2015-12-11 2020-07-28 Blackberry Limited Populating contact information
CN105574167B (zh) * 2015-12-17 2020-01-14 惠州Tcl移动通信有限公司 一种基于移动终端的照片自动命名处理方法及系统
US10607191B2 (en) * 2016-01-08 2020-03-31 Microsoft Technology Licensing, Llc Efficient calendar creation
US20180032585A1 (en) * 2016-08-01 2018-02-01 Qualcomm Incorporated Systems and methods for context-based contact suggestion
US10606821B1 (en) 2016-08-23 2020-03-31 Microsoft Technology Licensing, Llc Applicant tracking system integration
US10185738B1 (en) 2016-08-31 2019-01-22 Microsoft Technology Licensing, Llc Deduplication and disambiguation
US11138566B2 (en) * 2016-08-31 2021-10-05 Fulcrum Global Technologies Inc. Method and apparatus for tracking, capturing, and synchronizing activity data across multiple devices
AT519192B1 (de) * 2016-09-19 2019-03-15 B & R Ind Automation Gmbh Kamera für die industrielle Bildverarbeitung
CN108462625B (zh) * 2017-02-20 2021-10-12 阿里巴巴集团控股有限公司 回复电子邮件过程中确定收件人的方法和装置
US10977236B2 (en) * 2017-04-03 2021-04-13 Salesforce.Com, Inc. Dynamic recommendation methods and systems for database changes
CN117056004A (zh) * 2017-05-16 2023-11-14 苹果公司 商业即时消息界面
US11416817B2 (en) * 2017-06-02 2022-08-16 Apple Inc. Event extraction systems and methods
US11113604B2 (en) * 2017-11-06 2021-09-07 Google Llc Training and/or utilizing an interaction prediction model to determine when to interact, and/or prompt for interaction, with an application on the basis of an electronic communication
US11631056B2 (en) 2018-02-05 2023-04-18 Google Llc Electronic event management system
US10877784B1 (en) * 2018-05-30 2020-12-29 Facebook, Inc. Determining and servicing user intent with a virtual assistant
CN111352949B (zh) * 2018-12-21 2024-04-02 北京金山云网络技术有限公司 一种信息显示方法及装置
CN109815448B (zh) * 2019-02-02 2024-02-27 天津字节跳动科技有限公司 幻灯片生成方法及装置
JP7298249B2 (ja) * 2019-04-08 2023-06-27 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
JP7151654B2 (ja) 2019-07-26 2022-10-12 トヨタ自動車株式会社 検索装置、学習装置、検索システム、検索プログラム、及び学習プログラム
US11182055B2 (en) * 2020-03-31 2021-11-23 Snap Inc. Interactive messaging stickers
CN112583697A (zh) * 2020-11-17 2021-03-30 北京聚友大道科技发展有限公司 一种即时通信方法、装置和电子设备
KR20230050807A (ko) * 2021-10-08 2023-04-17 삼성전자주식회사 전자 장치 및 이의 제어 방법
US12095886B2 (en) * 2022-03-18 2024-09-17 Zoho Corporation Private Limited Entity card utilization

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US7730143B1 (en) * 2004-12-01 2010-06-01 Aol Inc. Prohibiting mobile forwarding
CN101951425A (zh) * 2010-09-30 2011-01-19 宇龙计算机通信科技(深圳)有限公司 一种联系人信息处理方法、系统及移动终端

Family Cites Families (269)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US5519606A (en) 1992-01-21 1996-05-21 Starfish Software, Inc. System and methods for appointment reconciliation
JPH09179831A (ja) * 1995-12-27 1997-07-11 Toshiba Corp スケジュール管理機能を有する情報機器、及びスケジュールデータ管理方法
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
JPH09244969A (ja) 1996-03-05 1997-09-19 Nippon Telegr & Teleph Corp <Ntt> パーソナル情報抽出方法及び装置
US5699227A (en) 1996-06-28 1997-12-16 Intel Corporation Heat pipe to baseplate attachment method
JPH1031635A (ja) * 1996-07-16 1998-02-03 Matsushita Electric Ind Co Ltd 携帯電子メール端末
JPH10171827A (ja) 1996-12-11 1998-06-26 Nippon Telegr & Teleph Corp <Ntt> 住所録更新支援方法及び装置
US6169911B1 (en) 1997-09-26 2001-01-02 Sun Microsystems, Inc. Graphical user interface for a portable telephone
US20060033724A1 (en) 2004-07-30 2006-02-16 Apple Computer, Inc. Virtual input device placement on a touch screen user interface
US7663607B2 (en) 2004-05-06 2010-02-16 Apple Inc. Multipoint touchscreen
US7844914B2 (en) 2004-07-30 2010-11-30 Apple Inc. Activating virtual keys of a touch-screen virtual keyboard
US6323846B1 (en) 1998-01-26 2001-11-27 University Of Delaware Method and apparatus for integrating manual input
US8479122B2 (en) 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US7614008B2 (en) 2004-07-30 2009-11-03 Apple Inc. Operation of a computer with touch screen interface
JP2000020465A (ja) * 1998-07-02 2000-01-21 Casio Comput Co Ltd データ処理装置及び記憶媒体
JP2000090020A (ja) 1998-09-14 2000-03-31 Sharp Corp 情報処理装置及び返信メール作成プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2000055739A1 (fr) 1999-03-17 2000-09-21 Pascal Co., Ltd. Procede de transmission de courrier electronique a l'aide de code bidimensionnel, et systeme de transmission de courrier electronique
US6571234B1 (en) * 1999-05-11 2003-05-27 Prophet Financial Systems, Inc. System and method for managing online message board
US7793824B2 (en) 1999-05-25 2010-09-14 Silverbrook Research Pty Ltd System for enabling access to information
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
US7143089B2 (en) 2000-02-10 2006-11-28 Involve Technology, Inc. System for creating and maintaining a database of information utilizing user opinions
US6952805B1 (en) 2000-04-24 2005-10-04 Microsoft Corporation System and method for automatically populating a dynamic resolution list
US7216085B1 (en) 2000-07-13 2007-05-08 Ita Software, Inc. Competitive availability tools
US7218226B2 (en) 2004-03-01 2007-05-15 Apple Inc. Acceleration-based theft detection system for portable electronic devices
US7688306B2 (en) 2000-10-02 2010-03-30 Apple Inc. Methods and apparatuses for operating a portable device based on an accelerometer
US6990452B1 (en) 2000-11-03 2006-01-24 At&T Corp. Method for sending multi-media messages using emoticons
KR100377936B1 (ko) 2000-12-16 2003-03-29 삼성전자주식회사 이동통신 단말기의 감정 아이콘 입력방법
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
US20020188688A1 (en) 2001-06-12 2002-12-12 Bice Richard S. Automated message handling system and process
US6987991B2 (en) 2001-08-17 2006-01-17 Wildseed Ltd. Emoticon input method and apparatus
CN1413008A (zh) 2001-10-12 2003-04-23 致福股份有限公司 自动提供启动及回复短信息的方法
US20030078981A1 (en) 2001-10-24 2003-04-24 Infowave Software, Inc. System for and method of populating a contact list on a portable device
GB2383660A (en) 2001-11-02 2003-07-02 Superscape Ltd System for graphic/text messaging
US6965900B2 (en) 2001-12-19 2005-11-15 X-Labs Holdings, Llc Method and apparatus for electronically extracting application specific multidimensional information from documents selected from a set of documents electronically extracted from a library of electronically searchable documents
US7228335B2 (en) 2002-02-19 2007-06-05 Goodcontacts Research Ltd. Method of automatically populating contact information fields for a new contract added to an electronic contact database
US7343365B2 (en) 2002-02-20 2008-03-11 Microsoft Corporation Computer system architecture for automatic context associations
US6629793B1 (en) 2002-04-26 2003-10-07 Westie Intellectual Properties Limited Partnership Emoticon keyboard
US20040002958A1 (en) 2002-06-26 2004-01-01 Praveen Seshadri System and method for providing notification(s)
US11275405B2 (en) 2005-03-04 2022-03-15 Apple Inc. Multi-functional hand-held device
US7814055B2 (en) 2002-08-28 2010-10-12 Apple Inc. Method of managing a calendar and a computer system for implementing that method
US20040054736A1 (en) 2002-09-17 2004-03-18 Daniell W. Todd Object architecture for integration of email and instant messaging (IM)
US20040066404A1 (en) 2002-10-08 2004-04-08 Bellsouth Intellectual Property Corporation Adding contacts to recipient list
US7539699B2 (en) 2003-03-21 2009-05-26 Yahoo! Inc. Apparatus, system and method for use in generating and maintaining an electronic address book
US7584253B2 (en) * 2003-05-27 2009-09-01 Sun Microsystems, Inc. Method and system for creating and tracking appointments and tasks from email messages
JP4590835B2 (ja) 2003-07-11 2010-12-01 ソニー株式会社 情報処理装置および情報処理方法、情報処理システム、記憶媒体、並びに、プログラム
US8171084B2 (en) 2004-01-20 2012-05-01 Microsoft Corporation Custom emoticons
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
US20050197846A1 (en) 2004-03-04 2005-09-08 Peter Pezaris Method and system for generating a proximity index in a social networking environment
US8898239B2 (en) * 2004-03-05 2014-11-25 Aol Inc. Passively populating a participant list with known contacts
US20050204007A1 (en) * 2004-03-12 2005-09-15 International Business Machines Corporation Apparatus method and system for automatically populating an interactive messaging contact list
GB2412546B (en) 2004-03-25 2009-03-04 Samsung Electronics Co Ltd Messaging in a mobile communications network
US7419469B2 (en) 2004-06-24 2008-09-02 Siemens Medical Solutions Usa, Inc. Method and system for diagnostigraphic based interactions in diagnostic medical imaging
US7669135B2 (en) 2004-07-15 2010-02-23 At&T Mobility Ii Llc Using emoticons, such as for wireless devices
US7653883B2 (en) 2004-07-30 2010-01-26 Apple Inc. Proximity detector in handheld device
US8381135B2 (en) 2004-07-30 2013-02-19 Apple Inc. Proximity detector in handheld device
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
JP4081056B2 (ja) * 2004-08-30 2008-04-23 株式会社東芝 情報処理装置、情報処理方法及びプログラム
US20070002077A1 (en) 2004-08-31 2007-01-04 Gopalakrishnan Kumar C Methods and System for Providing Information Services Related to Visual Imagery Using Cameraphones
CA2481065C (en) 2004-09-07 2014-01-21 Research In Motion Limited System and method for inserting a graphic object in to a text based message
JP2006139384A (ja) * 2004-11-10 2006-06-01 Hitachi Information Technology Co Ltd 情報処理装置及びプログラム
US20060184584A1 (en) * 2005-02-11 2006-08-17 Microsoft Corporation Contact merge auto-suggest
US7831834B2 (en) * 2005-03-14 2010-11-09 Yahoo! Inc Associating a postmark with a message to indicate trust
GB2424969A (en) 2005-04-04 2006-10-11 Messagelabs Ltd Training an anti-spam filter
US7502606B2 (en) * 2005-04-11 2009-03-10 Microsoft Corporation Computer-readable medium, method, and device for associating information with a contact
KR100907974B1 (ko) 2005-05-13 2009-07-16 노키아 코포레이션 전자 장치에 캐릭터를 입력하는 방법
US8417782B2 (en) * 2005-07-14 2013-04-09 Yahoo! Inc. Universal calendar event handling
US8069166B2 (en) 2005-08-01 2011-11-29 Seven Networks, Inc. Managing user-to-user contact with inferred presence information
US7573984B2 (en) * 2005-09-02 2009-08-11 Verizon Business Global Llc Systems and methods for providing emergency contact services
US8509827B2 (en) 2005-09-21 2013-08-13 Buckyball Mobile Inc. Methods and apparatus of context-data acquisition and ranking
US7633076B2 (en) 2005-09-30 2009-12-15 Apple Inc. Automated response to and sensing of user activity in portable devices
US8359341B2 (en) 2005-12-10 2013-01-22 International Business Machines Corporation Importing content into a content management system using an e-mail application
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
US7480870B2 (en) 2005-12-23 2009-01-20 Apple Inc. Indication of progress towards satisfaction of a user input condition
US7788296B2 (en) * 2005-12-29 2010-08-31 Guidewire Software, Inc. Method and apparatus for managing a computer-based address book for incident-related work
US8122019B2 (en) 2006-02-17 2012-02-21 Google Inc. Sharing user distributed search results
US7894859B2 (en) 2006-03-13 2011-02-22 Alcatel-Lucent Usa Inc. Privacy protection in network-based phonebooks
US20070239832A1 (en) * 2006-04-05 2007-10-11 Qwest Communications International Inc. Communication presentation in a calendar perspective
US8060567B2 (en) * 2006-04-12 2011-11-15 Google Inc. Method, system, graphical user interface, and data structure for creating electronic calendar entries from email messages
US8279180B2 (en) 2006-05-02 2012-10-02 Apple Inc. Multipoint touch surface controller
US7979469B2 (en) * 2006-06-14 2011-07-12 Research In Motion Limited 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
US8219920B2 (en) * 2006-08-04 2012-07-10 Apple Inc. Methods and systems for managing to do items or notes or electronic messages
US8745141B2 (en) * 2006-08-07 2014-06-03 Yahoo! Inc. Calendar event, notification and alert bar embedded within mail
US8564544B2 (en) * 2006-09-06 2013-10-22 Apple Inc. Touch screen device, method, and graphical user interface for customizing display of content category icons
US7903801B1 (en) * 2006-10-06 2011-03-08 At&T Intellectual Property I, L.P. Contact information management
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
US8006002B2 (en) 2006-12-12 2011-08-23 Apple Inc. Methods and systems for automatic configuration of peripherals
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US7957762B2 (en) 2007-01-07 2011-06-07 Apple Inc. Using ambient light sensor to augment proximity sensor output
US9817436B2 (en) 2007-01-07 2017-11-14 Apple Inc. Portable multifunction device, method, and graphical user interface for displaying user interface objects adaptively
US8078978B2 (en) * 2007-10-19 2011-12-13 Google Inc. Method and system for predicting text
US9294609B2 (en) 2007-02-27 2016-03-22 Sony Corporation Events on multiple phones
US8370349B2 (en) 2007-02-28 2013-02-05 Yahoo! Inc. Instant contact searching and presentation by category
US8943018B2 (en) 2007-03-23 2015-01-27 At&T Mobility Ii Llc Advanced contact management in communications networks
US20080261569A1 (en) 2007-04-23 2008-10-23 Helio, Llc Integrated messaging, contacts, and mail interface, systems and methods
JP2007272918A (ja) * 2007-05-14 2007-10-18 Itec Japan Co Ltd 情報処理装置、情報処理方法、及びプログラム
US20080294994A1 (en) * 2007-05-18 2008-11-27 Justin David Kruger Event management system and method with calendar interface
US9933937B2 (en) 2007-06-20 2018-04-03 Apple Inc. Portable multifunction device, method, and graphical user interface for playing online videos
WO2009021134A1 (en) 2007-08-09 2009-02-12 T-Mobile Usa, Inc. Synchronization and display of a plurality of calendars on a device
WO2009039609A1 (en) 2007-09-28 2009-04-02 Research In Motion Limited Electronic device and method for managing storage of data
US8543927B1 (en) 2007-11-01 2013-09-24 Google Inc. Methods for simulating icon popout on memory constrained devices
US9241063B2 (en) 2007-11-01 2016-01-19 Google Inc. Methods for responding to an email message by call from a mobile device
US9002344B2 (en) 2007-12-05 2015-04-07 Microsoft Technology Licensing, Llc Phone content service
US8086676B2 (en) 2007-12-17 2011-12-27 Smooth Productions Inc. Contact aggregator
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
JP4592768B2 (ja) * 2008-02-06 2010-12-08 Sky株式会社 電子メール機能付き携帯通信端末
US9049255B2 (en) 2008-02-29 2015-06-02 Blackberry Limited Visual event notification on a handheld communications device
US20090235280A1 (en) * 2008-03-12 2009-09-17 Xerox Corporation Event extraction system for electronic messages
CN101247366A (zh) 2008-03-31 2008-08-20 腾讯科技(深圳)有限公司 自动回复方法及即时通信客户端
US8676577B2 (en) * 2008-03-31 2014-03-18 Canyon IP Holdings, LLC Use of metadata to post process speech recognition output
CN101557409B (zh) 2008-04-09 2013-04-17 华为技术有限公司 一种地址簿信息融合管理的方法及装置
US20110093328A1 (en) 2008-05-22 2011-04-21 Six Degrees Capital Corporation item information system
US20090292690A1 (en) 2008-05-23 2009-11-26 Daniel Jason Culbert Method and System for Automatic Event Administration and Viewing
US8180630B2 (en) 2008-06-06 2012-05-15 Zi Corporation Of Canada, Inc. Systems and methods for an automated personalized dictionary generator for portable devices
US8874148B2 (en) 2008-06-06 2014-10-28 Apple Inc. Automatic contact recognition from SMS
US20090319288A1 (en) * 2008-06-24 2009-12-24 Yahoo Inc. Suggesting contacts for social networks
US9246870B2 (en) * 2008-07-01 2016-01-26 David H. Parker Sua sponte establishment of large-scale person-to-person emergency electronic messaging communications based in part on subscriber telephone numbers
US10095375B2 (en) * 2008-07-09 2018-10-09 Apple Inc. Adding a contact to a home screen
US8166019B1 (en) 2008-07-21 2012-04-24 Sprint Communications Company L.P. Providing suggested actions in response to textual communications
US8942675B2 (en) * 2008-09-05 2015-01-27 Good Technology Corporation System, apparatus and associated methodology for enriching contact of a remote client
US8914228B2 (en) 2008-09-26 2014-12-16 Blackberry Limited Method of sharing event information and map location information
US9602310B2 (en) 2008-10-02 2017-03-21 Avaya Inc. Associating system requests with SMS user responses
KR101564314B1 (ko) 2008-10-06 2015-11-02 삼성전자주식회사 텍스트 입력방법 및 이를 적용한 디스플레이 장치
US8165605B2 (en) * 2008-10-30 2012-04-24 Sony Mobile Communications Ab Automatic detection of personal networks
US8584031B2 (en) 2008-11-19 2013-11-12 Apple Inc. Portable touch screen device, method, and graphical user interface for using emoji characters
US20100174998A1 (en) 2009-01-06 2010-07-08 Kiha Software Inc. Calendaring Location-Based Events and Associated Travel
JP5287315B2 (ja) 2009-02-10 2013-09-11 日本電気株式会社 通信端末、電話帳登録方法、通信端末取り扱い方法およびこれらのプログラム
US20110047492A1 (en) * 2009-02-16 2011-02-24 Nokia Corporation Method and apparatus for displaying favorite contacts
US8832584B1 (en) 2009-03-31 2014-09-09 Amazon Technologies, Inc. Questions on highlighted passages
KR101542136B1 (ko) 2009-03-31 2015-08-05 삼성전자 주식회사 문자 메시지 작성 방법 및 이를 이용한 휴대 단말기
US8539382B2 (en) 2009-04-03 2013-09-17 Palm, Inc. Preventing unintentional activation and/or input in an electronic device
CN101895623A (zh) 2009-05-18 2010-11-24 鸿富锦精密工业(深圳)有限公司 手机自动发送短信的方法
US8583784B2 (en) 2009-06-05 2013-11-12 Palm, Inc. Dynamic communication integration with calendar
US8667009B2 (en) 2009-07-21 2014-03-04 Saambaa Llc Systems and methods for utilizing and searching social network information
US20110054976A1 (en) 2009-08-26 2011-03-03 Apple Inc. Scheduling Recurring Calendar Events
EP2480957B1 (en) 2009-09-22 2017-08-09 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
CN102055832A (zh) 2009-10-30 2011-05-11 深圳市友利通电子有限公司 一种手机来电回复处理系统及方法
KR101612788B1 (ko) 2009-11-05 2016-04-18 엘지전자 주식회사 이동 단말기 및 그 제어 방법
US20110141493A1 (en) 2009-12-15 2011-06-16 Kelly Berger System and method for managing contacts and calendars within an online card system
US8311531B2 (en) 2009-12-23 2012-11-13 Nokia Corporation Methods, apparatuses and computer program products for automatically saving information associated with one or more unknown contacts
US9785341B2 (en) 2009-12-31 2017-10-10 Verizon Patent And Licensing Inc. Inter-application navigation apparatuses, systems, and methods
US8698845B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface with interactive popup views
US20110184768A1 (en) 2010-01-27 2011-07-28 Norton Kenneth S Automatically determine suggested meeting locations based on previously booked calendar events
US8782556B2 (en) 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
US10788976B2 (en) 2010-04-07 2020-09-29 Apple Inc. Device, method, and graphical user interface for managing folders with multiple pages
US8874090B2 (en) 2010-04-07 2014-10-28 Apple Inc. Remote control operations in a video conference
US20110252351A1 (en) 2010-04-09 2011-10-13 Calamander Inc. Systems and methods for consuming, sharing, and synchronizing time based information
US9092485B2 (en) 2010-04-19 2015-07-28 Facebook, Inc. Dynamic suggested search queries on online social networks
US9275119B2 (en) * 2010-04-19 2016-03-01 Facebook, Inc. Sharing search queries on online social network
US8588825B2 (en) 2010-05-25 2013-11-19 Sony Corporation Text enhancement
JP5822436B2 (ja) * 2010-05-27 2015-11-24 京セラ株式会社 携帯電話機
EP2393046A1 (en) 2010-06-02 2011-12-07 Research In Motion Limited Method for assisted message generation
US20110302249A1 (en) 2010-06-02 2011-12-08 Research In Motion Limited Method for assisted message generation
US20120030194A1 (en) 2010-07-29 2012-02-02 Research In Motion Limited Identification and scheduling of events on a communication device
JP2012059083A (ja) 2010-09-09 2012-03-22 Social Groupware Co Ltd システム
US8918421B2 (en) * 2010-09-30 2014-12-23 Microsoft Corporation Collecting and presenting information
US20120096389A1 (en) * 2010-10-19 2012-04-19 Ran J Flam Integrated web-based workspace with curated tree-structure database schema
US8782149B2 (en) * 2010-11-09 2014-07-15 Comcast Interactive Media, Llc Smart address book
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
US8473507B2 (en) 2011-01-14 2013-06-25 Apple Inc. Tokenized search suggestions
WO2012128527A2 (en) 2011-03-18 2012-09-27 Samsung Electronics Co., Ltd. Method and system for managing contact information in a universal plug and play home network environment
US20140067702A1 (en) * 2011-03-29 2014-03-06 Yogesh Chunilal Rathod Method and System for Dynamically Publishing, Sharing, Communication and Subscribing
WO2012138994A2 (en) * 2011-04-07 2012-10-11 Oman Stephen System and methods for targeted event detection and notification
EP2697720B1 (en) 2011-04-13 2023-02-22 Razer (Asia-Pacific) Pte. Ltd. Computer peripheral display and communication device providing an adjunct 3d user interface
GB2490313A (en) * 2011-04-18 2012-10-31 Nokia Corp Joint contacts list address book and events calendar to chronologically display details of all events associated with selected contacts
US9269078B2 (en) * 2011-04-22 2016-02-23 Verizon Patent And Licensing Inc. Method and system for associating a contact with multiple tag classifications
EP2702473A1 (en) 2011-04-25 2014-03-05 Veveo, Inc. System and method for an intelligent personal timeline assistant
JP2012234341A (ja) 2011-04-28 2012-11-29 Toshiba Corp 映像表示装置およびメニュー画面表示方法
CN102289431A (zh) 2011-06-24 2011-12-21 华南理工大学 一种基于自然语言理解并提供短信回复选项的方法
US9519883B2 (en) * 2011-06-28 2016-12-13 Microsoft Technology Licensing, Llc Automatic project content suggestion
US8930820B1 (en) 2011-06-30 2015-01-06 Intuit Inc. Automatic calendaring system
US9460290B2 (en) 2011-07-19 2016-10-04 Elwha Llc Conditional security response using taint vector monitoring
US8832301B2 (en) 2011-07-21 2014-09-09 Parlant Technology System and method for enhanced event participation
US20130185285A1 (en) * 2011-07-22 2013-07-18 Qualcomm Incorporated Method and apparatus for multiple personality support and dynamic personality selection
US20130024910A1 (en) * 2011-07-22 2013-01-24 Salesforce.Com, Inc. Computer implemented methods and apparatus for integrating a social network information feed with a network communications application
US20130036369A1 (en) * 2011-08-02 2013-02-07 SquaredOut, Inc. Systems and methods for managing event-related information
WO2013039486A2 (en) * 2011-09-13 2013-03-21 Research In Motion Limited System and method of suggesting supplemental contact data to a computing device
US20130085786A1 (en) * 2011-09-30 2013-04-04 American International Group, Inc. System, method, and computer program product for dynamic messaging
GB201117052D0 (en) * 2011-10-04 2011-11-16 Daybees Ltd Automated diary population
US20180032997A1 (en) 2012-10-09 2018-02-01 George A. Gordon System, method, and computer program product for determining whether to prompt an action by a platform in connection with a mobile device
US20130093793A1 (en) * 2011-10-17 2013-04-18 Microsoft Corporation Pinning a Callout Animation
US9171105B2 (en) 2011-11-22 2015-10-27 Lg Electronics Inc. Electronic device and method of operating the same
US20130159919A1 (en) 2011-12-19 2013-06-20 Gabriel Leydon Systems and Methods for Identifying and Suggesting Emoticons
JP5767962B2 (ja) 2011-12-28 2015-08-26 株式会社ゼンリンデータコム アドレス情報登録更新装置、アドレス情報登録更新方法およびアドレス情報登録更新プログラム
US9081875B2 (en) 2011-12-30 2015-07-14 General Electric Company Systems and methods for organizing clinical data using models and frames
US9223933B2 (en) 2011-12-30 2015-12-29 General Electric Company Formlets as an enabler of the clinical user experience
US8548444B2 (en) 2012-01-20 2013-10-01 Intuit Inc. Linking a name to a phone number in a text message based on a contact list in a mobile device
US8626748B2 (en) 2012-02-03 2014-01-07 International Business Machines Corporation Combined word tree text visualization system
KR102051591B1 (ko) 2012-02-10 2019-12-03 삼성전자주식회사 통신 장치에서 캘린더를 구성하는 방법 및 장치
US9299065B2 (en) 2012-02-17 2016-03-29 Blackberry Limited Intelligent downloading of message attachments to mobile devices
US20140066044A1 (en) 2012-02-21 2014-03-06 Manoj Ramnani Crowd-sourced contact information and updating system using artificial intelligence
US8930456B2 (en) 2012-03-13 2015-01-06 Google Inc. Method and system of suggesting contacts through the display of public posts within a social networking service
US9223497B2 (en) 2012-03-16 2015-12-29 Blackberry Limited In-context word prediction and word correction
US8818794B2 (en) 2012-03-26 2014-08-26 Verizon Patent And Licensing Inc. Environment sensitive predictive text entry
US9665574B1 (en) * 2012-04-13 2017-05-30 Google Inc. Automatically scraping and adding contact information
US9685160B2 (en) 2012-04-16 2017-06-20 Htc Corporation Method for offering suggestion during conversation, electronic device using the same, and non-transitory storage medium
US9201510B2 (en) 2012-04-16 2015-12-01 Blackberry Limited Method and device having touchscreen keyboard with visual cues
US20150127628A1 (en) * 2012-04-16 2015-05-07 Onepatont Software Limited Method and System for Display Dynamic & Accessible Actions with Unique Identifiers and Activities
US20130326385A1 (en) 2012-05-03 2013-12-05 Life of Two System and method for creating an auto-journaling calendar application
US9002768B2 (en) 2012-05-12 2015-04-07 Mikhail Fedorov Human-computer interface system
US9307293B2 (en) 2012-05-30 2016-04-05 Palo Alto Research Center Incorporated Collaborative video application for remote servicing
US9262752B2 (en) 2012-06-08 2016-02-16 Google Inc. Attendee suggestion for events based on profile information on a social networking site
US8972323B2 (en) * 2012-06-14 2015-03-03 Microsoft Technology Licensing, Llc String prediction
JP5175402B1 (ja) 2012-06-21 2013-04-03 株式会社 ディー・エヌ・エー 通信方法、通信装置、および、プログラム
US20140006970A1 (en) 2012-06-27 2014-01-02 Brandon Casey Automatic Contact Creation Based on User Interaction
KR20140011073A (ko) 2012-07-17 2014-01-28 삼성전자주식회사 텍스트 추천 방법 및 장치
KR102100952B1 (ko) 2012-07-25 2020-04-16 삼성전자주식회사 데이터 관리를 위한 방법 및 그 전자 장치
US20140040368A1 (en) 2012-08-06 2014-02-06 Olivier Maurice Maria Janssens Systems and methods of online social interaction
EP2713323A1 (en) 2012-09-27 2014-04-02 BlackBerry Limited Apparatus and method pertaining to automatically-suggested emoticons
CN102970401A (zh) * 2012-11-01 2013-03-13 北京小米科技有限责任公司 一种记录联系人信息的方法及装置
US9026429B2 (en) 2012-12-05 2015-05-05 Facebook, Inc. Systems and methods for character string auto-suggestion based on degree of difficulty
US9244905B2 (en) 2012-12-06 2016-01-26 Microsoft Technology Licensing, Llc Communication context based predictive-text suggestion
US9213754B1 (en) 2012-12-17 2015-12-15 Google Inc. Personalizing content items
US20140179358A1 (en) * 2012-12-20 2014-06-26 Microsoft Corporation Messages augmented with structured entities
GB201322037D0 (en) 2013-12-12 2014-01-29 Touchtype Ltd System and method for inputting images/labels into electronic devices
CN103051768B (zh) * 2012-12-28 2016-08-17 东莞宇龙通信科技有限公司 一种更新通讯录中的联系方式的方法及系统
CN103902630B (zh) 2012-12-31 2017-08-18 华为技术有限公司 处理消息的方法、终端和系统
CN103079008B (zh) 2013-01-07 2015-05-27 播思通讯技术(北京)有限公司 根据短信内容自动生成回复建议的方法和系统
US10157228B2 (en) * 2013-02-22 2018-12-18 Mitel Networks Corporation Communication system including a confidence level for a contact type and method of using same
CN103200293A (zh) * 2013-03-05 2013-07-10 上海斐讯数据通信技术有限公司 一种导入通讯录文件过程中自动合并重名联系人的方法
US9990611B2 (en) 2013-03-08 2018-06-05 Baydin, Inc. Systems and methods for incorporating calendar functionality into electronic messages
US9558743B2 (en) 2013-03-15 2017-01-31 Google Inc. Integration of semantic context information
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
CN104079696A (zh) * 2013-03-29 2014-10-01 腾讯科技(深圳)有限公司 联系人名片的生成方法及装置
US10445115B2 (en) 2013-04-18 2019-10-15 Verint Americas Inc. Virtual assistant focused user interfaces
KR102046582B1 (ko) 2013-05-07 2019-11-19 삼성전자주식회사 호 기록을 제공하기 위한 방법 및 장치
CN103281442B (zh) * 2013-05-08 2015-12-02 广东欧珀移动通信有限公司 一种区分同一联系人多号码的方法、系统及通信设备
US9923849B2 (en) 2013-05-09 2018-03-20 Ebay Inc. System and method for suggesting a phrase based on a context
US10341421B2 (en) * 2013-05-10 2019-07-02 Samsung Electronics Co., Ltd. On-device social grouping for automated responses
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
US10915868B2 (en) 2013-06-17 2021-02-09 Microsoft Technology Licensing, Llc Displaying life events while navigating a calendar
KR20150007910A (ko) 2013-07-11 2015-01-21 삼성전자주식회사 사용자 인터렉션을 제공하는 사용자 단말 장치 및 그 방법
US20150046828A1 (en) 2013-08-08 2015-02-12 Samsung Electronics Co., Ltd. Contextualizing sensor, service and device data with mobile devices
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
US9143907B1 (en) 2013-10-21 2015-09-22 West Corporation Providing data messaging support by intercepting and redirecting received short message service (SMS) messages
US20150127753A1 (en) 2013-11-04 2015-05-07 Meemo, Llc Word Recognition and Ideograph or In-App Advertising System
US9928272B1 (en) * 2013-11-26 2018-03-27 Sugarcrm Inc. Determining contact-related information
EP3080726A4 (en) 2013-12-13 2017-09-20 Fuze, Inc. Systems and methods of address book management
US9729483B2 (en) * 2013-12-18 2017-08-08 Verizon Patent And Licensing Inc. Anonymous calling and/or texting via content provider web sites and applications
US20150188861A1 (en) 2013-12-26 2015-07-02 Aaren Esplin Mechanism for facilitating dynamic generation and transmission of canned responses on computing devices
US10033679B2 (en) 2013-12-31 2018-07-24 Google Llc Systems and methods for displaying unseen labels in a clustering in-box environment
US10050926B2 (en) * 2014-02-05 2018-08-14 Facebook, Inc. Ideograms based on sentiment analysis
US10013601B2 (en) 2014-02-05 2018-07-03 Facebook, Inc. Ideograms for captured expressions
US10445774B2 (en) 2014-02-14 2019-10-15 Retailmenot, Inc. Geotargeting of content by dynamically detecting geographically dense collections of mobile computing devices
KR102274043B1 (ko) * 2014-03-24 2021-07-08 삼성전자 주식회사 연락처를 표시하는 방법 및 이를 구현하는 전자장치
US20150294220A1 (en) 2014-04-11 2015-10-15 Khalid Ragaei Oreif Structuring data around a topical matter and a.i./n.l.p./ machine learning knowledge system that enhances source content by identifying content topics and keywords and integrating associated/related contents
US20150347586A1 (en) 2014-05-28 2015-12-03 Microsoft Corporation Calendar event peripheral view
CN105187676B (zh) 2014-05-29 2021-05-07 斑马智行网络(香港)有限公司 一种呼叫请求处理的方法和装置
US10579212B2 (en) 2014-05-30 2020-03-03 Apple Inc. Structured suggestions
WO2015183699A1 (en) 2014-05-30 2015-12-03 Apple Inc. Predictive messaging method
US9253302B2 (en) * 2014-06-04 2016-02-02 Google Inc. Populating user contact entries
TWI647608B (zh) 2014-07-21 2019-01-11 美商蘋果公司 遠端使用者介面
US10178229B2 (en) 2014-07-29 2019-01-08 United Efficiency, Inc. System for limiting mobile phone distraction in motor vehicles and / or within fixed locations
US9880714B2 (en) * 2014-10-30 2018-01-30 Ebay Inc. Dynamic loading of contextual ontologies for predictive touch screen typing
US9904673B2 (en) 2014-12-17 2018-02-27 International Business Machines Corporation Conversation advisor
US9613022B2 (en) 2015-02-04 2017-04-04 Lenovo (Singapore) Pte. Ltd. Context based customization of word assistance functions
US9906482B2 (en) 2015-05-13 2018-02-27 The Travelers Indemnity Company Predictive electronic message management systems and controllers
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10007894B2 (en) 2015-07-22 2018-06-26 International Business Machines Corporation Maintaining a custodian directory by analyzing documents
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses
CA3023982A1 (en) 2016-05-09 2017-11-16 Rapidsos, Inc. Systems and methods for emergency communications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US7730143B1 (en) * 2004-12-01 2010-06-01 Aol Inc. Prohibiting mobile forwarding
CN101951425A (zh) * 2010-09-30 2011-01-19 宇龙计算机通信科技(深圳)有限公司 一种联系人信息处理方法、系统及移动终端

Also Published As

Publication number Publication date
JP6811226B2 (ja) 2021-01-13
AU2016231588B2 (en) 2018-03-29
WO2015184163A1 (en) 2015-12-03
JP7391925B2 (ja) 2023-12-05
KR20210025705A (ko) 2021-03-09
CN111666352A (zh) 2020-09-15
EP3188101A1 (en) 2017-07-05
US20150347534A1 (en) 2015-12-03
KR101974644B1 (ko) 2019-05-03
JP2021039766A (ja) 2021-03-11
AU2018204388A1 (en) 2018-07-05
JP6975304B2 (ja) 2021-12-01
KR102223150B1 (ko) 2021-03-05
KR20190047131A (ko) 2019-05-07
KR20220038816A (ko) 2022-03-29
JP2024020193A (ja) 2024-02-14
KR20160150102A (ko) 2016-12-28
AU2015266840B2 (en) 2018-03-29
AU2016231590B2 (en) 2018-04-26
EP3159837A1 (en) 2017-04-26
AU2016231590A1 (en) 2016-10-13
JP2018163669A (ja) 2018-10-18
JP2017520069A (ja) 2017-07-20
CN115481203A (zh) 2022-12-16
AU2015266840A1 (en) 2016-10-06
CN111666354A (zh) 2020-09-15
KR102375794B1 (ko) 2022-03-17
CN106415542A (zh) 2017-02-15
AU2016231588A1 (en) 2016-10-13
JP2022028748A (ja) 2022-02-16
EP3188100A1 (en) 2017-07-05
KR20200043510A (ko) 2020-04-27
US10565219B2 (en) 2020-02-18
KR102512520B1 (ko) 2023-03-21
EP3105723A1 (en) 2016-12-21
JP2019071072A (ja) 2019-05-09
AU2016231589B2 (en) 2018-04-26
JP6446581B2 (ja) 2018-12-26
AU2016231587B2 (en) 2018-05-10
EP3159836A1 (en) 2017-04-26
CN111666354B (zh) 2023-09-15
KR102103398B1 (ko) 2020-04-22
CN111666353A (zh) 2020-09-15
AU2016231589A1 (en) 2016-10-13
AU2018204388B2 (en) 2019-12-19
KR102707801B1 (ko) 2024-09-23
JP6340479B2 (ja) 2018-06-06
AU2016231587A1 (en) 2016-10-13
KR20230040385A (ko) 2023-03-22

Similar Documents

Publication Publication Date Title
CN111666352B (zh) 结构化建议
US20200363916A1 (en) Structured suggestions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant