CN101978364B - 在多个输入装置之间实现一致性操作的操作系统 - Google Patents

在多个输入装置之间实现一致性操作的操作系统 Download PDF

Info

Publication number
CN101978364B
CN101978364B CN200980109342.4A CN200980109342A CN101978364B CN 101978364 B CN101978364 B CN 101978364B CN 200980109342 A CN200980109342 A CN 200980109342A CN 101978364 B CN101978364 B CN 101978364B
Authority
CN
China
Prior art keywords
application program
navigation message
input signal
mobile computing
input
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.)
Expired - Fee Related
Application number
CN200980109342.4A
Other languages
English (en)
Other versions
CN101978364A (zh
Inventor
保罗·默瑟
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101978364A publication Critical patent/CN101978364A/zh
Application granted granted Critical
Publication of CN101978364B publication Critical patent/CN101978364B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Digital Computer Display Output (AREA)

Abstract

移动计算装置的操作系统将来自输入装置的原始输入信号翻译为用于调用应用程序上的导航操作的导航消息。该导航操作代表用户有意在应用程序上执行的动作单元(例如,“选择”项目)。在该操作系统,来自不同输入装置的输入信号被映射到导航消息。该应用程序接收并处理该导航消息,因此,该应用程序被解除了与处理原始输入信号相关的任务。通过提供来自该操作系统的导航消息,可以在不同应用程序上,实现一致导航操作,并且应用程序的编程者可以为具有不同硬件配置的计算装置方便地编制应用程序。

Description

在多个输入装置之间实现一致性操作的操作系统
技术领域
本说明书一般地涉及操作运行在移动计算装置上的应用程序,并且更具体地,本说明书涉及将通常与应用程序相关的操作委派给移动计算装置的操作系统。
背景技术
诸如个人数字助理(PDA)、智能手机、MP3播放器的移动计算装置通常采用不同的用户输入装置。例如,某些移动计算装置采用触摸屏和许多按钮的组合,作为其用户输入装置,而其他移动计算装置采用小键盘或者触摸屏,作为其唯一用户输入装置。在某些情况下,同一移动计算装置的两个或者更多个输入装置使得在该移动计算装置上执行相同的操作。例如,为了在智能电话上执行电话呼叫,用户可以按下智能电话上的制定键,或者触摸显示在智能电话的触摸屏上的图标。
在传统的移动计算装置上,编制应用程序,以处理来自设备驱动器的原始输入信息,并且根据该输入信息的指示,执行操作。在采用触摸屏的移动计算装置中,例如,安装在移动计算装置上的操作系统(具体地说,设备驱动器)将物理输入信号翻译为可以被应用程序译码的原始输入事件信息(例如,小键盘上的键“a”被按下)。每个应用程序均包括代码或者例程,以接收输入事件信息,并根据该输入事件信息,执行操作。
在传统的移动计算装置上,每个应用程必须被编制,以接收该输入事件信息,并对该输入事件信息做出响应。尽管该操作系统的设备驱动器将物理输入信号翻译为输入事件信息,但是每个应用程序均包括代码或者例程,以寻址与不同设备驱动器相关的输入事件信息。此外,不同的应用程序开发者可以采用不同的准则来定义哪个输入事件信息代表哪个应用程序的操作。这样可能导致,在不同的应用程序中,用户输入的定义不一致,这样降低了移动计算装置的总体用户体验。
此外,由于包括寻址不同类型输入装置的代码和例程,增加了应用程序编程者的负担。应用程序开发者必须预先考虑可能用于该移动计算装置的用户输入装置,并且在每个应用程序中设置例程和代码,以从不同类型的用户输入装置中寻址用户输入。当开发新型用户输入装置,并且将该新型用户输入装置集成到移动计算装置上时,问题就严重了。当新的用户输入装置可用时,应用程序开发者必须分别对应用程序进行更新,以结合新用户输入装置工作。
因此,连同其他缺陷,即使采用不同的输入装置来接收用户输入,现有技术仍缺少使用户在多个应用程序中有一致体验的技术方案和方法。此外,现有技术还缺少使应用程序与不同类型的用户输入装置一致通信的导航方案和方法。
发明内容
所披露的实施例采用操作系统将来自输入装置的物理输入信号翻译为导航消息,该导航消息代表其逻辑级别比该物理输入信号的逻辑级别高的信号,并且对该操作系统上可执行的两个或者更多个应用程序,调用导航操作。该导航操作代表用户有意在应用程序上执行的动作单元(例如,“选择”项目)。该导航操作可以是两个或者更多个应用程序共同的或者可以应用于两个或者更多个应用程序的操作。该操作系统被分配了将该低级输入信号处理成高级导航消息的任务,因此,该应用程序免除了寻址该低级输入信号的任务。
在一个实施例中,该导航消息调用核心导航命令,例如,包括:选择该应用程序中的项目,激活该应用程序中的被选项目,返回该移动计算装置在激活被选项目之前的状态,变更为该移动计算装置的其中该移动计算装置的预定操作可以被执行的状态,以及变更为该应用程序的选项可以被设置的状态。
在一个实施例中,该操作系统包括核心导航模块,用于将来自不同输入装置的输入映射到该导航消息。该核心导航模块包括输入映射表,该输入映射表指出,来自哪个输入装置的哪个输入信号会调用哪个导航操作。该核心导航模块用于将来自不同输入装置的用户输入一致翻译为导航消息,用于在该应用程序调用该导航操作。
在一个实施例中,该操作系统定义一组导航消息。该第一输入装置的第一输入信号可以被映射到该组导航消息中的第一子组,而该第二输入装置的第二输入信号可以被映射到该组导航消息中的第二子组。该第一子组的导航消息可以与该第二子组的导航消息重叠。通过对不同输入装置采用不同子组的导航消息,该输入装置可以被编排,以根据该输入装置的能力和特性表示大量的导航消息。
该说明书中描述的特征和优点并不是全部包括在内的,特别是,根据附图、说明书和权利要求书,许多附加特征和优点对于本技术领域内的技术人员是显而易见的。此外,应当注意,选择该说明书中使用的语言主要是为了便于阅读和讲授,而不是为了描述或者限定所披露的主题选择的。
附图说明
结合附图研究下面的详细说明,可以轻而易举地理解所披露的实施例。
图1A是示出根据一个实施例,具有第一硬件配置的第一移动计算装置的示意图。
图1B是示出根据一个实施例,具有第二硬件配置的第二移动计算装置的示意图。
图2是示出根据一个实施例的移动计算装置的结构的方框图。
图3A和3B是示出根据一个实施例,在具有不同硬件配置的移动计算装置上生成屏幕图像的处理过程的方框图。
图4A和4B是示出根据一个实施例,利用从输入装置收到的用户输入在应用程序内或者在应用程序之外导航的处理过程的方框图。
图5是根据一个实施例的操作系统的核心导航模块的示意图。
图6是示出根据一个实施例,采用不同输入装置执行导航操作的方法的流程图。
具体实施方式
操作系统的实施例提供了一种环境,在这种环境下,应用程序无需寻找来自不同输入装置的输入信号的差异。该操作系统将原始输入信号处理为表示在应用程序上的导航操作的高级导航消息。该操作系统将该高级导航消息送到该应用程序,代替该原始输入信号;因此,该应用程序被解除了与从来自不同输入装置的原始输入信号中寻找特异性相关的任务。
该移动计算装置指具有至少一个输入装置的任意便携式计算装置。该移动计算装置可以是包括智能电话、个人数字助理(PDA)、游戏机(game console)、MP3播放器和移动电话的计算装置以及其他装置。该移动计算装置还可以指移动客户机装置或者手持计算装置。该移动客户机装置至少包括处理器和用于存储操作系统和应用程序的存储装置。
物理输入信号是由该移动计算装置的输入装置产生的原始信号。该物理输入信号表示该输入装置上的物理变化,包括电子部件的电阻或者电容的变化以及其他变化。例如,在小键盘上,物理输入信号表示特定键是否被用户按下。例如,在触摸屏上,物理输入信号表示屏幕上的哪个部分(垂直坐标和水平坐标)被用户触摸。
导航消息是指,由操作系统提供的表示移动计算装置的用户想要执行的导航操作的信息。根据想要在应用程序上执行的特定事件,移动计算装置的用户对移动计算装置的输入装置提供用户输入。例如,当用户按下“返回(back)”键时,用户的意图并不是使来自该键的电信号,而是使导航操作返回该应用程序的先前屏幕。导航消息表示用户的这种意图,即,在该应用程序上的该部分调用导航操作。导航消息的数量和类型可以根据移动计算装置变化。即,移动计算装置可以仅使用操作系统提供的导航消息子集。作为一种选择,移动计算装置还可以提供由该操作系统确定的公用导航消息之外的导航消息。
典型移动计算装置
图1A和1B示出根据本说明书的实施例,具有不同硬件配置的两种移动计算装置。图1A是智能电话的例子,它至少包括:触摸屏26、小键盘24、五向导航键16以及功能按钮18、20、22,作为其用户输入装置。该小键盘用于输入字母数字字符,而五向导航键16可以用于在该应用程序的菜单或者项目上向左、向右、向上以及向下导航。五向导航键16的中心可以被按下,以表示在导航经过该菜单或者项目后,选择该项目。功能键18、20、22可以用于执行特定指定功能(例如,设置或者启动万维网浏览器的选项)。触摸屏26可以用于结合小键盘24或者其他键16、18、20、22输入数据。
图1B是采用触摸屏40、功能键32、34、36、38、拨盘40和中心按钮42作为其输入装置的移动电话的例子。大多数用户输入都是由触摸屏40提供的,而其他输入装置专用于其他基本功能。例如,功能键32、34、36、38可以用于执行指定功能,诸如发出呼叫,启动互联网浏览器、拍摄照片、或者启动电子邮件程序。
图1A所示的智能电话和图1B所示的移动电话均采用相同的操作系统,下面将参考图2进行详细解释。安装在图1A所示智能电话中的和安装在图1B所示移动电话中的操作系统与多个用户输入装置交互,但是提供一致的高级导航消息,下面将参考图4A和4B作详细解释。具体地说,图1A所示智能电话上的操作系统对来自触摸屏26、小键盘24、五向导航键16以及功能按钮18、20、22的用户输入进行处理,而图1B所示移动电话上的相同操作系统对来自触摸屏40、功能键32、34、36、38、拨盘40、以及中心按钮42的用户输入进行处理。
移动计算装置的上述例子仅用于说明可以引入移动计算装置的各种不同输入装置。可以用于移动计算装置的各种其他类型的输入装置包括:鼠标、跟踪球、键盘、游戏杆、语音命令系统的麦克风或者待开发的其他输入装置,以及其他装置。
移动计算装置的结构
图2是示出根据一个实施例的移动计算装置的各部件的方框图。图2所示的移动计算装置包括:处理器(未示出)、内存200、屏幕238、以及多个输入装置240A-N,以及其他部件。输入装置240A-N可以是例如参考图1A和1B描述的各种类型的用户输入装置。
处理器与内存200相连,以执行使移动计算装置操作的指令。内存200存储软件部件,包括操作系统220和应用程序210A-N(下面统称为应用程序210)。内存200可以由包括闪速存储器件、硬盘、软盘、以及随机存取存储器(RAM)的各种存储装置予以实现。
操作系统220管理移动计算装置的资源,并且使应用程序210与输入装置240A-N交互。操作系统220包括:驱动器226、硬件信息224、核心导航模块228、以及样式表222。与传统操作系统中相同,每个设备驱动器均与诸如屏幕238或者输入装置240A-N的硬件部件相连,从而使应用程序210与硬件部件交互。具体地说,与输入装置240A-N相连的设备驱动器将来自输入装置的物理输入信号翻译为原始输入事件信息(例如,小键盘上的键“a”被按下)。在一个或者多个实施例中,多个序列的输入事件信息被映射到单个导航消息。然后,该输入事件信息由核心导航模块228翻译为代表高级导航操作的导航消息。
硬件信息224由操作系统管理,以指出移动计算装置的当前硬件配置。硬件信息224可以由该移动计算装置在检测到安装在该移动计算装置上的硬件部件后自动产生。作为一种选择,硬件信息224可以由该移动计算装置的制造商编译或者存储在该移动计算装置上。在一个实施例中,操作系统220根据硬件信息224确定要装载的设备驱动器和要映射到核心导航模块228的用户输入装置240A-N。
核心导航模块228将该导航消息送到该应用程序210。在一个实施例中,核心导航模块228将来自不同输入装置的用户输入映射到该导航消息,正如下面参考图5所详细描述的。核心导航模块228检索映射到该输入事件信号的导航消息,然后,将该导航消息送到应用程序210,以激励导航操作。
样式表222与应用程序210交互,以在该移动计算装置的显示器件上显示外观一致的屏幕图像,正如下面参考图3A和3B所详细描述的。
导航消息和导航操作
该导航消息不同于由驱动器226提供的低级输入事件信息。驱动器226提供的输入事件信息表示来自该用户输入装置的特定用户输入,而可以不代表要在应用程序调用的高级导航操作。该驱动器在收到物理输入信号时所提供的输入事件信息不代表特定导航操作。该输入事件信息可以由该应用程序(在传统方法中)或者由该核心导航模块(在本说明书的实施例中)映射到不同操作,因此,该输入事件信息本身可以不代表特定导航操作。在本说明书的移动计算装置中,该输入事件信息由核心导航模块228翻译为导航消息。与输入事件信息相反,该导航消息代表导航操作,因为相同的导航消息在可能程度上的多个应用程序210中调用相同的导航操作。
在一个实施例中,该导航消息表示“选择”操作、“激活”操作、“返回”操作、“归位”操作和“选项”操作以及其他操作。“选择”操作允许用户通过导航选择该应用程序上的项目。“激活”操作激活通过该应用程序的菜单或者项目导航后选择的项目。“返回”操作表示该应用程序中的先前状态(例如,返回先前页或者屏幕)。“归位”操作变化到该操作系统或者该应用程序的特定屏幕。移动计算装置的应用程序可以被组织为树结构,该树结构的每个分支代表不同的操作集。“归位”操作允许用户从操作的一个分支转移到该操作的根或者操作的另一个分支。例如,“归位”操作允许用户离开当前活动的应用程序(例如,日历程序),而转移到执行诸如发出电话呼叫或者接收电话呼叫的预定操作的不同操作轴(axis of operation)。“选项”操作允许用户将该应用程序转移到可以对该应用程序的特定用户选项进行配置的状态。
在另一个实施例中,该导航消息进一步表示缩放(相对缩放或者缩放到特定比例)、卷动/摇摄、以及定向轻弹(directional flicking)操作。
该导航消息代表的操作的数量和类型可以依据该移动计算装置的类型和应用的不同而不同。在一些实施例中,为该应用程序操作所必不可少的导航操作,设置该导航消息。在另一个实施例中,无遗漏地定义该导航消息,以包括通过该应用程序可以执行的所有导航操作。
典型移动计算装置的输出操作
图3A和3B示出在该移动计算装置的显示器件上产生输出屏幕图像的实施例。在一个实施例中,应用程序210利用不同的可视单元(例如,图标或者字母数字字符)在显示器件上产生屏幕图像。利用样式表222,应用程序210A-N可以在移动计算装置的显示器件上产生具有一致外观的屏幕图像。
在一个实施例中,应用程序210A将代表该可视单元的代码送到样式表222。样式表222解释来自该应用程序210A的代码,并产生代表将显示在显示器件上的可视单元的信息。利用样式表222,可以以一致方式在显示器件上对该可视单元进行润色,而不考虑该应用程序210或者该显示器件的硬件配置的差异。
在图3A所示的例子中,移动计算装置(实线所示的)包括输入/输出装置组340A。具体地说,移动计算装置包括触摸屏314和小键盘318作为其输入装置以及屏幕A322作为其输出装置。应用程序210将代表可视单元的代码(例如,指出在屏幕上绘制“电话”图标的代码)送到样式表222后,样式表222将该代码翻译为可视单元信息(例如,“电话”图标的像素信息)。可视单元信息被送到屏幕驱动器A338,以产生送到屏幕A322的物理装置信号,用于润色包括屏幕A322上的可视单元的屏幕图像。
除了图3B所示的移动计算装置包括不同的输入/输出装置组340B外,图3B所示的移动计算装置(实线所示的)与图3A所示的移动计算装置基本相同。具体地说,输入/输出装置组340B包括触摸屏326、拨盘330和屏幕B334。
与屏幕A322相比,屏幕B334可以具有不同的能力、特性或者尺寸。尽管该屏幕的能力或者尺寸不同,但是应用程序210仍可以在屏幕B上显示一致的屏幕图像,因为样式表222将来自应用程序210的代码翻译为适于屏幕B334的可视单元信息。具体地说,样式表222根据硬件信息224确定屏幕B的能力、特性或者尺寸。然后,样式表222考虑到屏幕的不同能力、特性或者尺寸,以使不同屏幕上的屏幕图像具有类似外观的方式,产生可视单元信息。
典型移动计算装置的输入操作
图4A和4B示出根据从输入装置收到的物理输入信号产生导航消息的移动计算装置的实施例。图4A所示的移动计算装置(实线示出)与图3A所示的移动计算装置相同。图4A仅是图3A的镜像处理,它示出同一个移动计算装置中的输入处理(图3A示出输出处理)。如上参考图3A所述,图4A所示的移动计算装置包括触摸屏314和小键盘318,作为其用户输入装置。
来自输入装置314、318的物理输入信号由相应设备驱动器350和354翻译为输入事件信息。具体地说,来自触摸屏314的物理输入信号由触摸屏驱动器354翻译为输入事件信息。同样,来自小键盘318的物理输入信号由小键盘驱动器350翻译为输入事件信息。拨盘驱动器360(虚线框所示的)没有激活,因为输入/输出装置组340A不包括拨盘。输入事件信息被送到核心导航模块228,以将该输入事件信息翻译为导航消息,如下参考图5所作的详细解释。
图4B示出与图4A所示的移动计算装置相同的移动计算装置的实施例,只是图4B所示的移动计算装置包括拨盘330,代替小键盘318作为其输入装置,而屏幕B334作为其输出装置。图4B所示的移动计算装置是图3B的镜像处理,它示出相同移动计算装置中的输入处理(图3B示出输出处理)。在图4B所示的实施例中,拨盘驱动器360是激活的,因为输入/输出装置组340B包括拨盘330。小键盘驱动器350(虚线框所示的)没有激活,因为输入/输出装置组340B不包括小键盘。
如图4A和4B所示,核心导航模块228对来自不同设备驱动器的输入事件信息进行翻译,以将高级导航消息送到应用程序210。该导航消息代表独立于特定输入装置的导航操作。因为应用程序210通过高级导航消息与该输入装置交互,所以该应用程序210不需要在来自不同输入装置的输入事件信息中寻找特异性,诸如数据类型、信息的频率以及包括在该输入事件信息中的不同信息。
图4A和4B所示的例子仅是说明性的。还可以采用各种其他类型的输入装置。此外,核心导航模块228也不需要是与驱动器350、354、360分立的模块。在一个实施例中,核心导航模块228可以与驱动器350、354、360组合在一起。而且,核心导航模块228不需要是专用于将输入事件信息翻译为导航消息的模块。核心导航模块228可以是执行翻译输入事件信息以及其他操作的该操作系统中的其他模块的一部分。
核心导航模块的结构
图5是示出根据一个实施例的核心导航模块228的原理图。核心导航模块228是用于将原始输入事件信息翻译为高级导航消息的操作系统220的一部分。在一个实施例中,核心导航模块228尤其包括输入映射表530。从设备驱动器350、354、360收到一个或者多个输入事件信息后,该核心导航模块228利用该输入映射表530识别与该输入事件信息相关的导航消息。传统的算法或者方法可以用于识别与该输入事件信息匹配的导航操作。
识别并且检索了对应于该输入事件信息的导航消息后,核心导航模块228将该导航消息送到该应用程序,以调用该导航操作。在一个实施例中,核心导航模块228将该导航消息修改为可以被收到该导航消息的特定应用程序识别的形式。例如,核心导航模块228可以将未被该应用程序识别的导航消息翻译为被该应用程序识别的一系列导航消息。
在图5所示的例子中,输入映射表530包括多行的项目,每行分别代表与一个输入装置(例如,触摸屏、拨盘或者小键盘)相关的用户输入。输入映射表530中的列表示在该应用程序上实现相同导航操作的输入装置的用户输入。例如,单触该触摸屏、拨盘的盘旋转指尖运动、以及按下导航键(例如,五向导航键)均使得在该应用程序210上“选择”导航操作。
一些输入装置可以仅与该操作系统220提供的一个子组的导航操作相关。在图5所示的例子中,拨盘仅提供与该“选择”操作、“激活”操作以及“归位”操作相关的用户输入。此外,不同输入装置可以与不同子组的导航操作相关。例如,触摸屏可以仅与“选择”操作和“激活”操作相关,而小键盘可以仅与“返回”操作和“归位”操作相关。在一个实施例中,该操作系统可以提供的导航消息的数量和类型局限于适用于两个或者更多个应用程序的导航消息。在另一个实施例中,可以提供的导航消息的数量和类型局限于,即使不适用于全部,也适用于大多数应用程序的导航消息。
尽管输入装置存在差异,但是核心导航模块228仍可以将高级导航消息送到该应用程序。因此,该应用程序不需要寻找来自不同输入装置的输入信号的差异,并且可以在不同计算装置之间实现一致操作。该应用程序不需要包括用于寻址不同类型的输入装置的代码和例程。此外,核心导航模块228可以允许从复合序列的输入事件信息中映射高级导航消息,因此,允许使用复合导航操作,否则,对于该应用程序就太麻烦了,以致不能实现。此外,当新输入装置可用并被集成到移动计算装置时,只是核心导航模块228需要更新,而无需为了适应该新输入装置调整全部应用程序。
利用核心导航模块进行导航的方法
图6是示出根据一个实施例,执行应用程序上的导航操作的方法的流程图。首先,在第一输入装置(例如,小键盘)接收614第一用户输入。然后,该第一输入装置将该物理输入信号送到操作系统220。操作系统220(具体地说,该第一输入装置的设备驱动器)接收630该物理输入信号,然后,产生第一输入事件信息。操作系统220从该核心导航模块230检索634第一导航消息,然后,将该第一导航消息送到638该应用程序210。该应用程序210接收该第一导航消息,然后,执行对应于该第一导航消息的导航操作(例如,“选择”操作)。
在第二输入装置(例如,触摸屏)收到622第二用户输入后,该第二输入装置将该物理输入信号送到626该操作系统220。该操作系统220(具体地说,该第二输入装置的设备驱动器)接收642该物理输入信号,然后,产生第二输入事件信息。该操作系统220从该核心导航模块228检索646第二导航消息,然后,将该第二导航消息送到650该应用程序210。该应用程序210接收658第二导航消息,然后,执行对应于该第二导航消息的第二导航操作(例如,“激活”操作)。
变型例子
在一个实施例中,该设备驱动器可以包括使该输入事件信息与该导航消息映射的信息。当该设备驱动器活动时,该信息可以被传送到核心导航模块228。在一个实施例中,利用来自设备驱动器的信息在输入映射表530中插入新行。利用该设备驱动器上的信息,当新输入装置被连接到或者集成到该移动计算装置上时,该核心导航模块228自动更新或者改变。
如上所述,实施例可以被配置为软件单元或者模块。软件可以是利用编程语言编写为或者编码为指令的进程(例如,参考图6所述的)。编程语言的例子可以包括C、C++、BASIC、Perl、Matlab、Pascal、Visual BASIC、JAVA、ActiveX、汇编语言、机器码等等。指令可以包括任意适当类型的代码,诸如源代码、目标代码、编译代码、解释代码、可执行代码、静态代码、动态代码等等。可以利用任意类型的计算机可读介质或者机器可读介质存储该软件。此外,该软件可以作为源代码或者目标代码存储在介质上。该软件还可以作为压缩的和/或者加密的数据存储在介质上。该软件的例子可以包括任意软件部件、程序、应用软件、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件界面、应用程序编程接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或者它们的任意组合。该实施例并不局限于这种情况。
例如,一些实施例可以利用任意有形计算机可读介质、机器可读介质、或者能够存储软件的制品。该介质或者制品可以包括任意适当类型的存储单元、存储器件、存储制品、存储介质、储存器件、储存制品、储存介质和/或者储存单元,诸如参考存储器描述的任意例子。介质或者制品可以包括:存储器、可移动或者不可移动介质、可擦或者不可擦介质、可写或者可重写介质、数字或者模拟介质、硬盘、软盘、只读光盘(CD-ROM)、可录光盘(CD-R)、可擦写光盘(CD-RW)、光盘、磁介质、磁光盘、可移动存储卡或者盘、各种类型的数字多功能光盘(DVD)、用户识别模块、磁带、卡型盒式磁带机等等。
在此使用的任何涉及“一个实施例”或者“实施例”均指,结合该实施例描述的特定单元、特征、结构或者特性包括在至少一个实施例中。在该说明书各位置出现的短语“在一个实施例中”不一定都指同一个实施例。
在此使用的术语“包括”、“包含”、“含有”、“含括”、“具有”、“有”或者它们的任何其它变型均用于指非排他性包括。例如,包括一系列单元的处理过程、方法、制品或者设备不必仅局限于这些单元,而是可以包括没有明确列出的或者对这些处理过程、方法、制品或者设备固有的其它单元。此外,除非有明确相反地说明,“或者”指包含的或,而非指排他性的或。例如,条件A或者B由下面中的任何一项满足:A成立(或者存在)而B不成立(或者不存在),A不成立(或者不存在)而B成立(或者存在),以及A和B二者都成立(或者存在)。
此外,在此采用“一个”描述本发明实施例的单元和部件。这样做只是为了方便并给出本发明实施例的一般意义。应当认为该描述包括一个或者至少一个,并且该单数形式也包括多个,除非显而易见地意味着别的意思。
本说明书的实施例提供了一种环境,在这种环境下,应用程序被解除了处理与不同输入装置相关的低级输入信息的任务。该低级输入信息由该操作系统翻译为高级导航消息,然后,将它送到该应用程序。有利的是,该应用程序中的代码不需要为了寻址与不同输入装置相关的不同低级输入信息而改变。此外,可以在该应用程序之内或者之外实现一致导航操作,因为不同的应用程序之间采用相同的高级导航消息。
阅读了所披露的内容后,根据在此披露的原理,本技术领域内的技术人员还可以设想,用于提供导航消息的系统和处理过程的附加变型结构和功能设计。因此,尽管在此示出并描述了特定实施例和应用,但是应当明白,所披露的实施例并不局限于在此披露的具体构造和部件,在不脱离所附权利要求书限定的实质范围的情况下,可以对在此披露的本实施例的方法和设备的布置、操作和细节进行各种修改、变更和变型,这对于本技术领域内的技术人员是显而易见的。

Claims (20)

1.一种移动计算装置,包括:
第一输入装置,配置成产生第一输入信号以响应收到第一用户输入;
操作系统,与该第一输入装置相关,该操作系统配置成将该第一输入信号翻译为与多个应用程序相关的导航消息,该导航消息代表逻辑级别比该第一输入信号高的信号,并且代表用户有意在多个应用程序上执行的导航操作;以及
应用程序模块,与该操作系统相关,用于执行多个应用程序,该多个应用程序执行该导航消息表示的导航操作;
其中该操作系统进一步配置成如果接收应用程序没有识别出所述导航消息则将所述导航消息修改为被该接收应用程序识别的形式。
2.根据权利要求1所述的移动计算装置,进一步包括第二输入装置,用于产生第二输入信号以响应收到第二用户输入,该操作系统将该第二输入信号翻译为另一个导航消息,该多个应用程序执行由该另一个导航消息表示的导航操作。
3.根据权利要求2所述的移动计算装置,其中该操作系统包括核心导航模块,用于将该第一输入信号和该第二输入信号映射到导航消息。
4.根据权利要求2所述的移动计算装置,其中该操作系统存储一组导航消息,每个导航消息调用该多个应用程序上的不同导航操作,该第一输入信号映射到该组导航消息中的第一子组,并且该第二输入信号映射到该组导航消息中的第二子组。
5.根据权利要求1所述的移动计算装置,其中该导航操作包括选自下面的组中的至少一个操作:选择该应用程序的项目,激活该应用程序的被选项目,返回该移动计算装置在激活被选项目之前的状态,变更到该移动计算装置的其中该移动计算装置的预定操作可以被执行的状态,以及变更到接收配置选项的状态。
6.根据权利要求1所述的移动计算装置,其中该多个应用程序不包括用于处理来自该第一输入装置的该第一输入信号的代码或者例程。
7.一种用于处理对移动计算装置操作的用户输入的方法,该方法包括:
在第一输入装置,产生第一输入信号以响应收到第一用户输入;
在操作系统,将该第一输入信号翻译为与多个应用程序相关的导航消息,该导航消息代表逻辑级别比该第一输入信号高的信号,并且代表用户有意在多个应用程序上执行的导航操作;
在多个应用程序上,执行由该导航消息表示的导航操作;以及
如果接收应用程序没有识别出所述导航消息,则在该操作系统将所述导航消息修改为被该接收应用程序识别的形式。
8.根据权利要求7所述的方法,进一步包括产生第二输入信号以响应在第二输入装置上收到第二用户输入,该操作系统将该第二输入信号翻译为另一个导航消息,并且该多个应用程序执行由该另一个导航消息表示的导航操作。
9.根据权利要求8所述的方法,其中将该第一输入信号翻译为导航消息包括从输入映射表中检索对应于该第一输入信号的导航消息。
10.根据权利要求8所述的方法,其中该操作系统将该第一输入信号映射到第一组导航消息,并且将该第二输入信号映射到第二组导航消息。
11.根据权利要求7所述的方法,其中该导航操作包括选自下面的组中的至少一个操作:选择该应用程序的项目,激活该应用程序的被选项目,返回该移动计算装置在激活被选项目之前的状态,变更到该移动计算装置的其中该移动计算装置的预定操作可以被执行的状态,以及变更到接收配置选项的状态。
12.根据权利要求7所述的方法,其中该多个应用程序不对该第一输入信号进行处理。
13.一种用于处理对移动计算装置操作的用户输入的设备,该设备包括:
用于在第一输入装置产生第一输入信号以响应收到第一用户输入的装置;
用于在操作系统将该第一输入信号翻译为与多个应用程序相关的导航消息的装置,该导航消息代表逻辑级别比该第一输入信号高的信号,并且代表用户有意在多个应用程序上执行的导航操作;
用于在多个应用程序上执行由该导航消息表示的导航操作的装置;以及
用于如果接收应用程序没有识别出所述导航消息,则在该操作系统将所述导航消息修改为被该接收应用程序识别的形式的装置。
14.根据权利要求13所述的设备,进一步包括:
用于产生第二输入信号以响应在第二输入装置上收到第二用户输入的装置,该操作系统将该第二输入信号翻译为另一个导航消息,并且该多个应用程序执行由该另一个导航消息表示的导航操作。
15.根据权利要求14所述的设备,其中用于将该第一输入信号翻译为导航消息的装置包括用于从输入映射表中检索对应于该第一输入信号的导航消息的装置。
16.根据权利要求13所述的设备,其中该导航操作包括选自下面的组中的至少一个操作:选择该应用程序的项目,激活该应用程序的被选项目,返回该移动计算装置在激活被选项目之前的状态,变更到该移动计算装置的其中该移动计算装置的预定操作可以被执行的状态,以及变更到接收配置选项的状态。
17.根据权利要求13所述的设备,其中该多个应用程序不对该第一输入信号进行处理。
18.一种移动计算装置,包括:
第一输入装置,配置成产生第一输入信号以响应收到第一用户输入;
操作系统,与该第一输入装置相关,该操作系统配置成将该第一输入信号翻译为与多个应用程序相关的导航消息,该导航消息代表逻辑级别比该第一输入信号高的信号,并且代表从包括选自下面的组中的至少一个导航操作:选择该应用程序的项目,激活该应用程序的被选项目,返回该移动计算装置在激活被选项目之前的状态,变更到该移动计算装置的其中该移动计算装置的预定操作可以被执行的状态,以及变更到接收配置选项的状态;以及
应用程序模块,与该操作系统相关,用于执行多个应用程序,该多个应用程序执行由该导航消息表示的导航操作,该多个应用程序不包括用于处理该第一输入信号的代码或者例程;
其中该操作系统进一步配置成如果接收应用程序没有识别出所述导航消息则将所述导航消息修改为被该接收应用程序识别的形式。
19.根据权利要求18所述的移动计算装置,进一步包括第二输入装置,用于产生第二输入信号以响应收到第二用户输入,该操作系统将该第二输入信号翻译为另一个导航消息,该多个应用程序执行由该另一个导航消息表示的导航操作。
20.根据权利要求18所述的移动计算装置,该操作系统进一步配置成在该移动计算装置的显示器件上提供与该多个应用程序相关的屏幕图像,所述屏幕图像具有一致的外观。
CN200980109342.4A 2008-01-18 2009-01-15 在多个输入装置之间实现一致性操作的操作系统 Expired - Fee Related CN101978364B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/016,895 US20090187847A1 (en) 2008-01-18 2008-01-18 Operating System Providing Consistent Operations Across Multiple Input Devices
US12/016,895 2008-01-18
PCT/US2009/031152 WO2009091924A2 (en) 2008-01-18 2009-01-15 Operating system providing consistent operations across multiple input devices

Publications (2)

Publication Number Publication Date
CN101978364A CN101978364A (zh) 2011-02-16
CN101978364B true CN101978364B (zh) 2015-07-22

Family

ID=40877430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980109342.4A Expired - Fee Related CN101978364B (zh) 2008-01-18 2009-01-15 在多个输入装置之间实现一致性操作的操作系统

Country Status (4)

Country Link
US (1) US20090187847A1 (zh)
EP (1) EP2248030A4 (zh)
CN (1) CN101978364B (zh)
WO (1) WO2009091924A2 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201314733D0 (en) 2013-08-16 2013-10-02 Sparkle Coupon Services Ltd A data processing method and system
GB201314732D0 (en) 2013-08-16 2013-10-02 Sparkle Coupon Services Ltd A data transmission method and system
KR101901881B1 (ko) * 2013-09-26 2018-09-27 구글 엘엘씨 차량에 네비게이션 데이터를 제공하기 위한 시스템 및 방법
US20150153897A1 (en) * 2013-12-03 2015-06-04 Microsoft Corporation User interface adaptation from an input source identifier change
US20170277311A1 (en) * 2016-03-25 2017-09-28 Microsoft Technology Licensing, Llc Asynchronous Interaction Handoff To System At Arbitrary Time

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1956571A (zh) * 2005-10-28 2007-05-02 乐金电子(中国)研究开发中心有限公司 具备有多重输入装置的移动通信终端

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157384A (en) * 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface
US5252951A (en) * 1989-04-28 1993-10-12 International Business Machines Corporation Graphical user interface with gesture recognition in a multiapplication environment
US5922075A (en) * 1996-12-20 1999-07-13 Intel Corporation Power management control of pointing devices during low-power states
US6463304B2 (en) * 1999-03-04 2002-10-08 Openwave Systems Inc. Application launcher for a two-way mobile communications device
US6374208B1 (en) * 1999-03-11 2002-04-16 Robert D. Ferris System and method for adapting a PC-based application to an automated format
US7116310B1 (en) * 1999-04-06 2006-10-03 Microsoft Corporation Application programming interface that maps input device controls to software actions
US6715086B1 (en) * 1999-06-30 2004-03-30 International Business Machines Corporation Data processing system and method having time-span support for input device driver
CN1393779A (zh) * 2001-06-27 2003-01-29 英业达股份有限公司 电脑操作引导方法及具有操作引导功能的使用者界面系统
US7284205B2 (en) * 2003-11-18 2007-10-16 Microsoft Corporation Providing multiple input bindings across device categories
DE602004028302D1 (de) * 2004-06-04 2010-09-02 Research In Motion Ltd Rollrad mit Zeicheneingabe
US20060053411A1 (en) * 2004-09-09 2006-03-09 Ibm Corporation Systems, methods, and computer readable media for consistently rendering user interface components
WO2006128248A1 (en) * 2005-06-02 2006-12-07 National Ict Australia Limited Multimodal computer navigation
US7831547B2 (en) * 2005-07-12 2010-11-09 Microsoft Corporation Searching and browsing URLs and URL history
KR100735375B1 (ko) * 2005-08-25 2007-07-04 삼성전자주식회사 이동통신단말기에서 어플리케이션 구동 방법 및 그이동통신단말기
US7669770B2 (en) * 2005-09-06 2010-03-02 Zeemote, Inc. Method of remapping the input elements of a hand-held device
US7703039B2 (en) * 2005-12-08 2010-04-20 Adobe Systems Incorporated Methods and apparatus for displaying information
US7634263B2 (en) * 2006-01-30 2009-12-15 Apple Inc. Remote control of electronic devices
KR100790078B1 (ko) * 2006-03-14 2008-01-02 삼성전자주식회사 이동 통신 단말기에서 어플리케이션으로의 빠른 접근 방법및 장치
US8866750B2 (en) * 2006-04-10 2014-10-21 Microsoft Corporation Universal user interface device
US9019245B2 (en) * 2007-06-28 2015-04-28 Intel Corporation Multi-function tablet pen input device
US8073884B2 (en) * 2007-12-20 2011-12-06 Hewlett-Packard Development Company, L.P. System and method to derive high level file system information by passively monitoring low level operations on a FAT file system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1956571A (zh) * 2005-10-28 2007-05-02 乐金电子(中国)研究开发中心有限公司 具备有多重输入装置的移动通信终端

Also Published As

Publication number Publication date
EP2248030A4 (en) 2014-03-19
WO2009091924A2 (en) 2009-07-23
CN101978364A (zh) 2011-02-16
US20090187847A1 (en) 2009-07-23
WO2009091924A3 (en) 2009-10-29
EP2248030A2 (en) 2010-11-10

Similar Documents

Publication Publication Date Title
KR101825799B1 (ko) 다수의 애플리케이션들로부터 수신된 통지들을 디스플레이하기 위한 시스템들 및 방법들
TWI531916B (zh) 用於系統層級搜尋使用者介面之登錄的計算裝置、電腦儲存記憶體及方法
KR100458369B1 (ko) 이동식 데이터 처리 장치와 그 운영 방법
US8788269B2 (en) Satisfying specified intent(s) based on multimodal request(s)
CN107508961A (zh) 一种活动窗口启动方法、终端及计算机可读存储介质
CN103106266A (zh) 基于安卓系统的文件夹管理和显示方法及移动终端
US20020149609A1 (en) Display device, display method, program recording medium, and program
US9684444B2 (en) Portable electronic device and method therefor
JP2001014079A (ja) アイコンを複数の動作に関連付けることによってコンピュータ・ディスプレイ画面上のスペースを保存できるユーザ・インタフェース、方法、およびコンピュータ・プログラム製品
US20120079418A1 (en) Interface for application management in an electronic device
CN104007894A (zh) 便携式设备及其多应用操作方法
KR20110117170A (ko) 사용자-애플리케이션 인터페이스
JP2012507089A (ja) ウィンドウ固有の制御の表面化および管理
CN102197366A (zh) 子窗口显露和管理
CN103370684A (zh) 电子设备、显示方法以及程序
US9729691B2 (en) Portable device and method for multiple recording of data
CN101923434B (zh) 一种应用图标的排版方法、系统移动终端
CN101978364B (zh) 在多个输入装置之间实现一致性操作的操作系统
CN108614655B (zh) 分屏显示方法、装置、存储介质及电子设备
WO2019032185A1 (en) TRANSITION BETWEEN GRAPHICAL INTERFACE ELEMENT MODALITIES BASED ON COMMON DATA SETS AND USER INPUT CHARACTERISTICS
CN109388309B (zh) 菜单的显示方法、装置、终端及存储介质
CN111628897A (zh) 一种智能设备的初始化方法、装置及系统
CN111602381A (zh) 一种图标切换方法、显示gui的方法及电子设备
CN112199135A (zh) 信息引导方法、装置、电子设备以及存储介质
CN110413192A (zh) 快捷按键响应方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: HEWLETT PACKARD CO.

Free format text: FORMER OWNER: PAM SA

Effective date: 20110919

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20110919

Address after: Texas, USA

Applicant after: Hewlett-Packard Development Co.,L.P.

Address before: California, USA

Applicant before: PALM, Inc.

ASS Succession or assignment of patent right

Owner name: PAM SA

Free format text: FORMER OWNER: HEWLETT PACKARD CO.

Effective date: 20140109

Owner name: HEWLETT PACKARD DEVELOPMENT CO., LLP

Free format text: FORMER OWNER: PAM SA

Effective date: 20140109

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20140109

Address after: Texas, USA

Applicant after: HEWLETT-PACKARD DEVELOPMENT Co.,L.P.

Address before: California, USA

Applicant before: PALM, Inc.

Effective date of registration: 20140109

Address after: California, USA

Applicant after: PALM, Inc.

Address before: Texas, USA

Applicant before: Hewlett-Packard Development Co.,L.P.

ASS Succession or assignment of patent right

Owner name: QUALCOMM INC.

Free format text: FORMER OWNER: HEWLETT PACKARD DEVELOPMENT CO., LLP

Effective date: 20140228

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20140228

Address after: California, USA

Applicant after: QUALCOMM Inc.

Address before: Texas, USA

Applicant before: HEWLETT-PACKARD DEVELOPMENT Co.,L.P.

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150722

Termination date: 20170115

CF01 Termination of patent right due to non-payment of annual fee