CN102687105A - 用于运行时可配置的用户界面控制器的系统及方法 - Google Patents

用于运行时可配置的用户界面控制器的系统及方法 Download PDF

Info

Publication number
CN102687105A
CN102687105A CN2010800459313A CN201080045931A CN102687105A CN 102687105 A CN102687105 A CN 102687105A CN 2010800459313 A CN2010800459313 A CN 2010800459313A CN 201080045931 A CN201080045931 A CN 201080045931A CN 102687105 A CN102687105 A CN 102687105A
Authority
CN
China
Prior art keywords
data
limited
user
configurable
theme
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.)
Granted
Application number
CN2010800459313A
Other languages
English (en)
Other versions
CN102687105B (zh
Inventor
罗伯特·J·卡普
布雷特·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.)
FLUFFY SPIDER TECHNOLOGIES Pty Ltd
Original Assignee
FLUFFY SPIDER TECHNOLOGIES Pty Ltd
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 FLUFFY SPIDER TECHNOLOGIES Pty Ltd filed Critical FLUFFY SPIDER TECHNOLOGIES Pty Ltd
Publication of CN102687105A publication Critical patent/CN102687105A/zh
Application granted granted Critical
Publication of CN102687105B publication Critical patent/CN102687105B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72427User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting games or graphical animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Programmable Controllers (AREA)

Abstract

本发明涉及用于结合消费型电子装置使用的界面控制系统及方法。通常在制造时预定义的用户界面由于下层核心或操作系统而完全专用于所述器具。本发明的系统包含用于向用户提供信息及从用户接收信息以针对用户界面建立控制的装置。所述用于提供及接收所述信息的装置可至少部分由独立于所述操作系统及应用程序两者的可更改数据库控制。这样,可在不改变下层操作系统或应用程序的情况下改变所述数据库。所述可更改数据库可呈脚本形式,且可在设备的正常操作期间的任何时间由所述用户配置。所述系统可响应于所述可更改数据库外部的刺激而调用或修改所述可更改数据库含有的信息。所述可更改数据库还允许设置旗标。这些旗标可对所述设备的操作形成限制,对所述应用程序的操作形成限制,或更改所述可更改数据库参考的信息。

Description

用于运行时可配置的用户界面控制器的系统及方法
技术领域
背景技术
本发明涉及结合消费型电子装置使用的界面控制系统及方法。更明确地说,本发明涉及用于控制在器具上的用户界面的系统及方法以实现增强的用户个性化及运行时可配置性。
消费型电子装置的用户日益对定制及个性化感兴趣。此现象已导致高度个性化社交网络网页、蜂窝式电话的可定制铃声及个人电脑可用的背景主题的广泛普及。商家及制造商已意识到通过提供产品设计及颜色的更多选择来利用用户对更多选项的这种受驱动欲望。
本发明涉及消费型电子装置,其包含大范围的装置,包含个人计算机、游戏系统及便携式个人器具(例如,媒体播放机、PDA及移动电话)。大多数这些消费型电子装置具有完全类似的用户界面(UI)。当特别考虑便携式个人器具时,一般来说,用于此些装置的UI是主要应用程序软件的部分,或代码,或由用于设计所述界面的专用工具包产生。
此外,对于来自相同制造商或使用相同技术基础的装置来说常见的是,共享相同核心设计特点中的许多特点,且因此任何定制或个性化通常是受限制的。为适应变体数目,将要求所述操作系统放大且以失去共享核心的优势的方式消耗存储器。典型地,可由用户作出的改变相对简单,关注于改变使用中背景(壁纸)或调色板。许多情况下,UI的更改仅在带有伴随经济处罚的核心软件的改变之后为可能。
通常,器具可并入有确定用户将如何体验互动的用户界面。举例来说,在地址簿中,屏幕可显示邀请用户输入信息的符号,且此视觉元件将完全依赖于应用程序员如何构思所述UI。因为用户受所察觉的易用性的强烈影响,且此为主观量度,实物产品的制造商通常执行冗长的研究以帮助其提供“最佳”UI体验。因为所述UI通常并入于应用程序中,所以结果通常为较长的开发循环,且如果所述UI证明不受欢迎,那么将产生不期望的市场反应。
计算科学中的常见设计模式是在最初关于大约1979年的施乐(Xerox)PARC“Smalltalk”作品中所描述的模型-视图-控制器方法论。此方案的成功使用将商业逻辑从用户界面考虑中分离出来,以产生一种应用程序,在其中较容易彼此不受影响地修改输出外观或应用程序的用户感知或下层应用程序商业规则。然而,处置器具的UI组件中的共同限制是所述UI必须在编译时指定,且此后仅仅可能存在上文所论述的有限及相当细微的改变。
已尝试用以“再换肤”移动电话的显示元件的商业定制成果(由TriGenix在2004年十月获得且现在并入到高通(Qualcomm)的Brew技术中,在其“换肤”应用程序中使用扩展的标记语言),但主要是因为使用的复杂性而成效有大有小。这必定迫使制造商针对所述问题采取具有相对繁重的存储器需求的图形方法。
假如用户强烈希望将其设备个性化且不受欢迎的用户界面的风险可能显著损害器具销售,那么存在提供可容易定制的界面的强烈需求,所述可容易定制的界面使用起来相对不复杂,且没有繁重的存储器或处理要求。此些系统及方法可在运行时对较宽范围的消费型电子装置中的用户界面的个性化及修改提供增强的控制。因此,用户能够在无留意汇编及嵌入过程的延迟及困难的情况下立即看到改变的结果。
考虑到上述内容,揭示了用于改进器具的个性化的效率的系统及方法。本发明为具有在设计阶段中的空前灵活性、非凡的易用性及对下层应用程序的最小依赖性的用户界面的实施方案提供一种新颖的方法。
发明内容
本发明揭示用于结合消费型电子装置使用的界面控制系统及方法。更明确地说,本发明涉及用于控制器具上的用户界面以实现增强的用户个性化及运行时可配置性的系统及方法。
所述界面控制系统为制造商、服务提供商(如果存在)、当然还有最终用户提供灵活性。通过使用解译程序,或一些嵌入于虚拟机中的功能等效物,可完成运行时操作,且用户能够在无留意汇编及嵌入过程的延迟及困难的情况下立即看到改变的结果。制造商可享受现有的OS(操作系统)或Kernel(核心)及任何相关联的应用程序的广泛的再使用,且将UI设计及实施方案视为所述器具的背景内完全单独的活动。
所述系统可包括能实现个性化的设备。所述设备可具有微处理器、存储器及操作系统。结合所述操作系统而操作的应用程序可存在于所述系统上。这些应用程序可产生及接收界面数据。
所述设备还可包括用于经由用户界面将信息提供给用户且从用户接收信息的装置。可至少部分地通过与所述操作系统及应用程序两者分开的可更改数据库来控制所述用于提供及接收信息的装置。这可允许改变数据库,而不对下层操作系统或应用程序作任何改变。
所述可更改数据库可为脚本形式,且可在所述设备的正常操作期间的任何时候由用户配置。此外,所述可更改数据库可由解译程序读取,或可被编译为字节码。所述可更改数据库还可并入有信息脚本的当前及先前版本两者,且如果在当前版本中发生错误,那么所述设备可恢复到先前版本。
在一些实施例中,所述可更改数据库参考描述所述信息的格式、布局及内容中的至少一者的可更改信息。同样地,所述数据库可参考信息的比例缩放、偏斜、变换、动画及更改中的至少一者。
在一些实施例中,所述可更改数据库可由一个以上个性数据库组成。这些个性数据库或主题可独立地更改及选择,且各自包含单独的完整个性。
所述系统可响应于可更改数据库外部的刺激而调用或修改包含于所述可更改数据库中的信息。同样地,可响应于数据库外部的刺激而调用或修改每一个性数据库或主题。
所述可更改数据库还可致使一个或一个以上旗标被设置。这些旗标可导致对所述设备的操作的限制、对应用程序的操作的限制、或所述可更改数据库所参考的信息的更改。
注意,以上描述的本发明的各种特征可单独地或组合实践。下文将在本发明的具体描述中且结合附图更详细地描述本发明的这些或其它特征。
附图说明
本发明在附图的图中通过实例的方式而不是通过限制的方式进行说明,且其中相同的参考标号指代相同元件,且其中:
图1是根据本发明实施例的用户界面控制系统的实例的结构框图;
图2A是在用户界面控制系统的一个实施例中用于数据联接布置的逻辑框图;
图2B是在用户界面控制系统的一个实施例中用于在应用程序与输入输出驱动器之间插入可配置演示器的逻辑框图;
图3是在用户界面控制系统的一个实施例中用于定义应用编程界面的逻辑框图;
图4是用户界面控制系统的一个实施例中的可配置演示器的数据操纵的流程图;
图5是用户界面控制系统的一个实施例中对至少一个定义数据库主题的基于密钥的接入的逻辑框图;
图6是用户界面控制系统的一个实施例中包含一个以上主题的定义数据库的结构框图;
图7A是用户界面控制系统的一个实施例中的记录表的说明;
图7B是用户界面控制系统的一个实施例中并入到地址中的键类型的说明;
图8到15提供使用用户界面控制系统的一个实施例的图像个性化的各种屏幕截图实例;
图16A到16K提供由用户界面控制系统的一些实施例产生的第一移动界面主题的各种屏幕截图;及
图17A到17G提供由用户界面控制系统的一些实施例产生的第二移动界面主题的各种屏幕截图。
在图式中,相同参考标号有时用于指示相同结构元件。还应了解,图中的描述为概略的且不按比例。
具体实施方式
将如附图中所说明参考本发明的选定优选实施例来详细描述本发明。在以下的描述中,陈述大量的具体细节是为了提供对本发明的通透理解。然而,所属领域的技术人员将明白,本发明可在没有这些具体细节中的一些或全部的情况下实践。在其它实例中,为了不使本发明不必要地模糊,未具体描述众所周知的工艺步骤及/或结构。本发明的特征及优势可通过参考附图及下面的论述得到更好的理解。
本发明大体涉及用于控制用户界面以实现可配置运行时定制的系统及方法。明确地说,本发明是针对用于用户界面个性化的新颖方法及系统,其为制造商提供灵活性,且允许用户在无留意汇编及嵌入过程的延迟及困难的情况下立即看到改变的结果。
值得注意的是,在此应用程序的其余部分中,将对便携式个人器具上的视觉显示器特别关注。重要的是要认识到,本发明可同等有效地应用于所有样式的消费型电子装置,包含但不限于计算机、平板计算机系统、电子读取器装置、厨房器具、数字音乐播放器、媒体播放器、数字腕表、照相机及实际上任何包含界面的电子装置。另外,虽然已详尽地描述了视觉界面,但是本发明完全能够进行具有广范围界面类型的操作,所述界面类型包含视觉显示器、触觉及音频输出及视觉、触觉或声音用户界面(UI)的任何组合。
用于专利许可证的本申请案描述中间可配置演示器,其插入在便携式个人装置的操作系统(OS)与用户界面之间。所述便携式个人装置还可简单地称为装置或器具。
这为制造商、服务提供商(如果存在)当然还有最终用户提供了灵活性。通过使用解译程序或一些嵌入到虚拟机中的等效功能,可完成运行时间操作,同时允许用户立即看到更改结果,而不会遇到汇编及嵌入过程常有的延迟及困难。制造商可充分利用现有OS(操作系统)或Kernel(核心)及任何相关联应用程序,将UI设计及实施完全视为在该器具范围内的独立活动。就UI本身而言,可通过图1中的中间可配置演示器120来提供。
应用程序开发者仅需要考虑应用程序的功能性,器具或装置背景下的UI操作可在稍后确定。更具体地说,此时无需考虑任何输出数据的出现或输入数据的输入机制,而UI可在适当的隔离环境中开发。因此器具可使用共用应用程序代码基础,而无需共享共同的UI因素。虽然可能牺牲效率,因为谨慎构造的代码可被编译至非常紧凑,仅占用极少的存储器,但常常能获得独特独特的实施方案,且通常不考虑超出少数可选择及预先定义选项之外的汇编后改变。
可配置演示器子系统可用于处置来自应用程序的数据并将其演示给用户,且可处置输入事件并将其提供给应用程序。可配置演示器120与下层应用程序或操作系统100之间的相互作用可使用应用程序编程界面来实现,应用程序编程界面可为可配置演示器120与所述器具其余部分之间的提供连接便利。这些相互作用可不受应用程序约束,例如固定的预定义输出格式由更适合所述器具或适合预期用户偏好的格式代替。可配置演示器120可使用一组配置文件来变换或操纵数据,所述文件可简单地由用户更改。此变换或操纵可包含改变数据属性,例如色彩、大小及定向,或可基于时间、位置或当前装置状态提供复杂的装置背景变换;举例来说,电池电量或振铃器警报类型可改变将信息呈现给用户的方式。数据处置的性质可为静态的、准静态的或动态的,且此性质本身可动态地更改。举例来说,数据处置可基于提供的服务而为动态的,或主要基于时间考虑,例如每隔一定时间改变或移动一个图标。
另外,所述可配置演示器子系统可添加新的或隐藏的UI元件以改进用户体验或移除依据所述器具的状态为过量的元件。
除了处置元件的外观,视觉UI元件的定位及布局也可由可配置演示器120来处置。可配置演示器120还可处置声音及触觉信息的若干方面。UI元件可由系统修改,包含比例缩放、定位或添加动画、视觉或声音或附加组件。元件可由效果(例如,阴影、反射或高光(其自身可为可更改的)的动态添加)来增强。在所述UI元件的声音组件被更改的情况下,这些效果可包含回音及反响以产生深度及宽度的听觉感知。所述UI的触觉相互作用可并入有振动装置或对加速敏感的装置,以及物理地改变装置特性。举例来说,如果虚拟键盘上的某些按键是优选的,那么可扩大所述按键,而可通过点亮或熄灭嵌入式发光体或电机械地更改弹簧张力来改变物理按键的外观或对物理按键的运动的阻挡。
所述应用程序可指定可配置演示器120不应为了可顺应任何调整、服务或产品需求而改变的属性。举例来说,如果要求文本字段具有强制的背景色以表明紧急情况,那么可配置演示器120可尊重受保护的属性且限制可用交互作用的范围。这可直接通过与应用程序相互作用来实现或通过标记可配置演示器的数据定义内的某些数据来实现。
可配置演示器120还可基于其它UI元件的特性、存在或缺乏来调整UI元件的外观。举例来说,一组检查栏可修改其位置以彼此对准,或可修改色彩及图像以改进基于当前背景的对比度。如果电池电力低,那么可更改对比色的选择以最小化基于器具的照明。类似地,可以改进所显示数据的用户感知的方式检测及响应周围的照明。
可配置演示器120可根据可保持在单独存储库中的主题信息来执行其功能。此主题信息可存储在存储器中。在一个实施方案中,通过使用脚本语言格式,主题信息可作为文本而存储,且可仅受可用存储器大小或分配来限制。所存储的信息可在任何时间被更改或添加,且可配置演示器120可解译此所存储信息,所述信息可接着支配可配置演示器120的动作。
可配置演示器120可维持表或列表,其参考对象存储在所述主题信息存储库中。每次可作出改变以将对象添加到所述主题信息中,可配置演示器120可补充其数据,且可记录与定位此所添加对象以及某些其它信息有关的信息。这可使可配置演示器120能够将对象定位在信息存储库内,而不必读取整个存储库。以这种方式,可行使由存储库中的对象支配的功能,而在定位所述对象时没有意外的延迟。
下面提供许多用户界面控制的实例系统及方法。为使清晰明了,提供具有对应标题的多个分段。这些分段为了清晰而单独提供,且无意以任何方式限制本发明。
Ⅰ.用户界面控制系统
图1提供根据本发明实施例的用户界面控制系统的实例的结构框图。此系统可在便携式个人装置、器具或任何其它消费型电子装置上操作。所述器具的平台或核心由操作系统(OS)100来定义,操作系统(OS)100组织机器资源,例如应指派给所述机器必须执行的各种任务的存储器量及时间量。举例来说,在例如电话等器具中,至关重要的是对服务网络的响应是即时的且不因例如写入消息等用户任务而延迟。所述操作系统提供此调度,并确保在服务于对时间相对不敏感的任务之前达到实时要求。在较早的器具中,任务列表会一直相对较小,且控制软件或固件通常为专用的,而无需相当多地共享子例程,此通常被称为“核心”。所述核心通常被认为是操作系统可基于的最低抽象等级,且许多核心可近实时地操作。
作为比OS 100高的抽象等级的应用程序110是器具的处理特定任务的那些程序或元件。在上述电话实例中,这些应用程序110可包含(例如)用户直接但通过被称为用户界面或UI的组件与之互相作用的拨号器程序或地址簿。所述UI(也称作“人机界面”)的目的是为机器表示数据的方式与人类用户偏好相互作用的方式之间的鸿沟架桥。举例来说,当用户输入信息时,会希望看见正输入的信息,仅仅是为了产生正确信息正被作用的舒适等级。还需要排列所述信息以使其被用户熟悉且足够大以容易被看见。所有这些因素在术语中被称作“可用性”。
应用程序110通常将信息递送给UI的组件且从UI的组件接收信息。这信息可来自所述器具的经特别配置以用作用户界面组件(例如,一些描述的屏幕、扬声器或听筒及键盘)的物理件。其它UI界面硬件可包含蓝牙适配器或其它信号接收器、触摸板、铁笔输入、指针扫描仪、加速计、指南针、振动器或任何已知或未来知晓的器具界面机构。广泛地说,这些界面组件可被细分为视觉显示器150、声音组件160及触觉组件170。然而,如上所述,考虑不易配合在这三个所说明的UI组件中的任何一者内的额外界面。为了清晰起见,将这些额外界面类型从图中省去。
由于这些后面物理组件的固有复杂性,可在现代可编程机器内找到对不同于惯有逻辑电平的电压及电流的要求,所述机器的操作的细节可由一些完全专用于操作这些组件的输入/输出驱动器140来处置。以此方式,物理世界的连接性可为可由许多应用程序共享的资源,且这些驱动器可为OS自身的一部分或为单独的元件。图2A展示典型的布置及如线201展示的数据联接。
如所属领域的技术人员所知,由于驱动器140执行相对较好界定的任务,用驱动器处理的信息可为放入缓冲器中或从缓冲器读取的数据,而无需所述应用程序的部分上的任何进一步交互作用。此信息可含有代表实际材料的数据,其将与可指令驱动器以特定方式处置输出材料的额外数据一起输出。举例来说,待显示的文本串可用致使文本以某一特定字体及大小显示的额外信息来补充。在典型的器具中,用户可被限于少数被预编程到驱动器中的呈现选项中的一者,例如三个字体大小中的一者的选择。
在本发明的一些实施例中,输入输出驱动器140从中取其指令的应用程序与缓冲器之间的连接201可被切断,且可配置演示器120可被插入于应用程序110与驱动器140之间。这可在图2B中清楚地看到,图2B展示将可配置演示器插入在应用程序与输入输出驱动器之间的逻辑框图。
可配置演示器120结合一个或一个以上定义数据库130形成用户界面控制系统115的一个实施例。可配置演示器120可接着成为用于UI进程的代理。在一些实施例中,可配置演示器120可与应用程序110及物理装置的输入/输出驱动器140交换信息。可配置演示器120对于一些信息可为透明的,因为其仅中继信息而不更改信息。在其它情况中,可配置演示器120对于信息流可为不透明的,且信息可相当彻底地变换。可配置演示器的不透明性可完全由所存储信息控制。可配置演示器的功能可完全由存储在定义数据库130中的主题信息来定义,定义数据库130可存储可配置演示器120支配信息流的规则。数据存储可为许多形式中的任何一者,且为所属领域的技术人员所众所周知,在一个实施例中,其可被表示为文本文件。同样地,可在一些实施例中考虑表格、矩阵及经压缩存储。
在典型的器具中,装置驱动器140包括可经编程以致使显示器或触摸屏150、声音组件160及/或触觉组件170将信息提供给用户且从用户接收信息的组件。此组件的实例将为显示数据且返回例如铁笔或手指等指点装置的位置和动作的触摸屏。指点装置活动到输入数据的转换是此项技术中众所周知的。在另一实施例中,声音驱动器补充所述实施方案,且音频信息可由可配置演示器120路由到此组件。触觉信息可为可用于提示操作(其中声音环境阻止音频提示正常工作)的振动或脉冲。在另一实施方案中,布莱叶(Braille)信息可通过传感器栓的移动来输出。
图2A是用户界面控制系统115的一个实施例中的数据联接布置的逻辑框图,且图2B是将可配置演示器插入应用程序与输入输出驱动器之间的逻辑框图。此插入需要到器具的物理连接性及并入到所述连接中的逻辑协议两者。用户界面控制系统115的插入在其拦截且修改的数据中是选择性的。此选择性可依赖指示用户界面控制系统115在将任何给定数据递送到驱动器140之前应对所述数据采取的行动的标签或警报。以下提供更多关于此选择过程的细节。
图3是用于定义用户界面控制系统115的一个实施例中的应用编程界面的逻辑框图。如上所述,为了允许发生消息接发,需要一个以上物理连接;在一些实施例中,定义消息交换的协议可并入到所述连接中。这可通过定义证明消息结构、消息协议及结果的应用编程界面(API)310来实现。应用编程界面(API)310与配置引擎320一起可为可配置演示器120的部分。为了实现本发明的成功并入,建议API 310从传入数据及传出数据两者的观点出发被恰当地服务。已知(多个应用程序110的)应用程序300与I/O驱动器140之间的现有协议使制造商能够在不涉及应用程序或OS开发者的情况下实施本发明。当然,在一些实施例中,应用程序开发者能够将特征添加到利用可配置演示器120的应用程序。
如上所述,在一些实施例中,API 310可含有使配置引擎320能够不同程度地与应用程序110与驱动器140之间的数据相互作用的消息协议。在一些实施例中,此操纵等级可被再分成三个干扰等级:i)调用配置引擎320,ii)准许配置引擎320相互作用,及iii)防止配置引擎320相互作用。在此最后一个实例中,在一些实施方案中,API 310可对于数据表现为透明的。在此情况下,API 310所接收的数据可简单地重复,从而导致轻微的时间延迟,然而在别的方面却不以任何方式更改数据。
Ⅱ.用户界面控制的方法
图4更清晰地说明通过提供由可配置演示器120进行的数据操纵的流程图来选择特定干扰等级的方法。此流程作为实例而提供,且既定为用于澄清目的的简化过程。因此,图4所提供的过程完全是说明性的,且并不限制API 310的作用。
如图4所见,在所述过程开始之后,如步骤400中所示,可从应用程序300接收数据,且可将其临时存储在缓冲器中。在步骤410中,可检查所接收的数据以看是否设定任何条件旗标。如上所述,可利用数据中含有的这些旗标,以指示配置引擎320对数据的处理的范围及性质。旗标可包含透明旗标,且在功能上受限。在一些实施例中,如果接着设定透明旗标,那么在步骤460处,可简单地从缓冲器中读取数据且将数据直接发送到驱动器中,以用于I/O功能。然而,如果在步骤410处,数据并非以此方式(没有透明旗标)受到限制,那么随后所述过程可进行到步骤420,其中可将数据传递到配置引擎320,其可配置演示器120的数据操纵元件。
接着,在步骤430处,可提出另一询问以检查是否存在指示应用程序限制的任何旗标。除了数据上的任何预置限制之外,器具状态或条件可成为决定过程中的要素以了解是否存在一些功能上的限制。举例来说,功率限制或时间限制可包含于是否限制功能性的决策中。
响应于功能性测试,在步骤450处从定义数据库中可获取完全启用的主题,或可在步骤440处选择受限的主题。在一些实施例中,在步骤460处,可将三个可能结果中的仅一者传递到I/O驱动器。
作为基于装置条件的限制的实例,在一些实施例中,用户选择在正常环境下将文本显示为蓝色背景上的白色字体。然而,在低功率条件下,色彩设计可转变成紫色背景上的黄色字体。此高对比度使得能够减少屏幕背光且降低总功率消耗。因此,代替于应用偏好设置(蓝色上的白色),可改为应用受限设置(高对比度的紫色上黄色)。
作为数据操纵上的时间限制的实例,考虑已到达时区不同于原始位置的国家的旅行用户。如果器具知道时间,那么随后可将此信息用于使可能被指定的主题适中。如果现在是深夜,那么可调节警报声以在减小的音量下操作,且显示受限于部分强度。作为对比,如果现在是中午,那么可将显示强度设定为全部亮度,且将铃声设定为更适合环境的等级。在一个实施方案中,可监视声音输入,且将其用于动态地更改警报声的音量及节奏。
返回参考图3,可配置演示器120可存取任何或全部定义数据库130。在一些实施例中,定义数据库130可被分割以包括一个或一个以上主题340a到340n。以此方式,个性化可在若干用户之间共享或可简单地具体化为单个用户的个性化。存取可通过密钥的使用来控制。所述密钥可用于允许或拒绝对任何或全部数据库的存取,且准许共享器具的用户使用其个性主题来操作,而不影响其它人对其的使用。此存取还可用于限制可配置演示器120的数据变换能力的范围,使得可创建并再用多个预先存储的变换规则,但确保可防止由于粗心或有意的操作而造成的规则冲突或不相容。
图5是对至少一个定义数据库主题的基于密钥的存取的逻辑框图。在一些实施例中,密钥可被预定义。密钥还可具有类型,且在一些实施例中,密钥类型可为表格或功能。当可配置演示器120使用密钥存取所述数据库时,可检查密钥的类型。如果密钥类型是表格,那么数据指代可包含其它信息的第二数据库。如果密钥类型是功能,那么此指令可配置演示器120执行特定功能。密钥可由可配置演示器120本地产生,或可在应用程序处指派且为简单的设计选择。应用程序300将包含密钥505的数据传递到API 310。API 310可分离数据与密钥505,且将此传递到配置引擎320,配置引擎320可使用密钥类型来确定将使用所接收的数据执行的下一动作。如果密钥505为功能类型,那么引擎执行遵照从所述应用程序接收的数据而检索到的功能,如540处所示。如果所述密钥类型为表格类型,那么从第二数据库550检索数据,且将其与从应用程序中接收的数据合并。这可修改应用程序数据,且可改变其外观或结构。当用户输入数字串时可看到功能的实例,且所述数字在短周期中以大字体显示,之后被移动到文本串中的下一个空位置且尺寸减小。在此情况下,所述功能可为“显示大文字、启始定时器、时间已过时使文字收缩到中等、测量到串末端的距离、中途移动文字、将文字收缩为小、将文字置于串末端”。这可能给出容易可见数字以供确认的合意显示,接着其平滑减小且添加到可接着用于拨号的串。拨号器上下文中的功能的另一实例可为随着所拨打串中的每一数字依次被拨打,一类似放大镜的制品在所述数字上方移动,且致使每一数字的大小临时增大。当数据是可变的且其布置为预备的结构时,功能可在实例中有利地加以使用。
在密钥类型=表格的情况下(其中所表示的数据可作为表格存储),表格条目可为可与可随后被返回到所述应用程序的密钥相关联的值元组。这些值元组可由可配置演示器120使用以建立或修改可被提供到驱动器140或从驱动器140接收的项目(例如视觉、声音或触觉信号)的参数。表格可在其中密钥的机器值将被改变的实例中有利地加以使用。考虑将9密钥数字键区用于要求围绕屏幕移动或引导光标的简单应用程序。在简单射击游戏的情况下,中心密钥(通常为5密钥)可被指定为开火按钮,且周围的密钥被指派用于瞄准机制的移动属性。此处,文字值是无意义的,且表格对于将4密钥转变为致使视线移到左边的值元组可能是有用的。类似地,所述密钥可表示全音阶中的音符,且在此情况下,所述值元组可表示可被编程到音频振荡器中的频率。这些表格所定义的项目可随后作为所显示的屏幕项目或作为可听信息或以触觉形式呈现给器具的用户。触觉数据的实例可如振动一样简单,或可为较复杂的,例如布莱叶信号。触觉输入数据可从加速计获得,且可允许动作由手持轻拍控制而不是在触敏屏上控制。举例来说,手指轻拍可被用于发信号通知确认,而无需关心屏幕上的位置。在一个实施方案中,可指派旗标以确定功能或表格处理是否为既定的,且可使用单个位来从一者切换到另一者。举例来说,如果所述位是零值,那么表格可为既定的,但如果所述位为一,那么功能可为既定的。如果定义其它操作,那么四位结构可定义16种可能性,且是此项技术中众所周知的。
Ⅲ.实例
提供下列论述及附图参考来说明本发明的一些实施例的一组实例。所述实例可包括特定限制,其对于给定实例是唯一的,且无意作为整体扩展到本发明。同样地,为了清晰的目的已经简化一些实例。应理解,虽然上述实例帮助阐释及澄清本发明,但是这些实例并不限制本发明的范围及功能。
简要地参考图3,定制引擎320的操作可至少部分地由定义数据库130来控制。定义数据库130含有可以所属领域的技术人员众所周知的许多方式中的任一者存储的信息。为了便于说明,可将此视为简单线性列表,但在一些实施方案中,所构造的列表或表格可更方便。将定义数据库130说明为包含多个主题340a到340n。在一些实施例中,可利用较少的主题,然而,在器具在各种用户之间共享的情形中,或在单个用户选择具有多个个性化方案的设计中,一个以上的主题设定可为有利的。
图6展示一个实施方案的简化实例,其中定义数据库包含主题集600中的一个或一个以上主题。在此实例中,每一主题可包含一个或一个以上脚本。每一脚本包括一个或一个以上元件或行。脚本M 630展示包含于定义数据库130中的主题集600中的主题340a中的样本脚本的实例。
使用脚本M 630的此实例,其经简化以便于读取:
Figure BDA0000152495260000121
第一脚本行致使可配置演示器120创建(增加)名为“背景”的对象的记录。此记录可以所属领域的技术人员已知的任何方式存储;举例来说此可作为表格中的列表或如图7a中所示。所存储的信息结构可含有:名称记录700;特定地址710,其指引可配置演示器120在项目“背景”被调用时在合适点存取所述脚本;及任何密钥类型数据。如果密钥类型由应用程序300供应,那么可忽略所存储的密钥数据。地址710可为指向含有所述脚本的数据存储库的指针。在此实例中,指向地址0x yyyy的指针将启动解译程序在“背景”的定义实际上开始的块的第二行处读取。密钥类型可为此目的通过保留所述地址的上部少数位来与此地址便利地合并,如图7b中所示。如果仅存在两种类型,那么此处仅需要保存最前面的数字,且保留上部半字节将容纳至多达16种类型。如果将此记录保存为表格,那么有关属性可存储在同一表格中,且一组指针720可存储在允许放置有关对象的表格中。举例来说,如果应用程序通常具有用于若干所列出对象的主题简档,那么可安排存储次序,使得这些对象可分组在一起。以此方式,通过减少读取完对象序列所花的时间来提高速度。在另一个实施方案中,密钥可涉及所属领域的技术人员众所周知的散列表。参考克努斯(Knuth)的“计算机编程艺术”第三卷,ISBN0-201-03803-X搜索与分类,第6.4节,“散列”。
记录的旗标数据可包含关于有关对象及其状态的信息,以及关于器具状态的信息。将了解,虽然在简单情况下,通过简单操纵对象在表格中的位置来关联对象将是可能的,但在较复杂的情况下,可能有必要存储有关对象的位置。旗标数据对于所关注的对象可为唯一的,且一旦所有有关对象均已被剖析,那么可用算法确定对合计任务的净效应。这些种类的问题及其解决方案是此项技术中已知的,且此些方法详尽地描述于克努斯的“计算机编程艺术”,第三卷,搜索与分类。在找到频繁关联的情况下,维持各自仅包含有关对象的单独表格且根据活动性范围来确定要使用哪一合成表格可为经济的。
返回图6,解译程序发现“背景”参考名为“foo.jpg”的文件(行3处的脚本M 630),且看到此文件为图像文件(.jpg是图像文件类型扩展名),其将位于x,y参考点0,0处(行4及5处的脚本M 630)及按比例缩放为宽度“w”及高度“h”(行6及7处的脚本M 630)。闭括号“}”(行8处的脚本M 630)终止对象“背景”的描述。
以此方式,主题中的每一脚本块可含有单个个性化组件。所述脚本的范围仅受可用存储器限制,且因为这可与器具用于维持其基本功能的存储器分开,所以可不对OS或应用程序上造成不利的影响。然而,如果所述脚本致使可配置演示器120采取计算强度较大的动作,那么这可以与任何其它广泛计算成果相同的方式消耗比任一时间可用的资源多的资源。
现在较复杂的主题元素实例可为适当的。考虑序列:
Figure BDA0000152495260000131
所述序列选择图像“背景.png”及接着将其重新定大小为屏幕的大小。所述序列设定填充过程,且接着使其对用户可见(“显示”命令)。接着所述图像移动到原点(其按照惯例位于屏幕的左上角)。接着可为所述图像指派“层值”,其确定当屏幕上存在若干其它元素时所述图像应被放置在何处。将较高值移动到前景中,且较低值位于其下方。以此项技术中已知的方式,这致使所述图像遮掩其下面的图像,且因此看起来像纸堆。所述功能在返回值“真”之后终止,以指示已实现了成功的结果。主题可由许多此类元素组成,特别是针对较复杂的情形,例如设定所需背景及为一个或一个以上其它特征强加插入背景,举例来说:
Figure BDA0000152495260000141
当定义数据库130含有产生多个有关对象的多个元素时,可通过允许对象组合或扩展来实现进一步的优势。举例来说,在一个实施方案中,在一些情况下,若干对象可合并以产生一个单一输出,且在其它情况下,若干对象可展示为单独的个别对象。
如上所述,本发明的界面控制系统可为事件驱动的,且事件可在应用程序代码中产生召回。许多非平凡程序使用召回或以某一方式使用其等效物。召回可因多种原因而产生。一些召回可与应用程序中的其它事件同步,其它召回可从用户事件中产生,而其它召回可为网络或其它活动的结果。召回在C编程语言中是常见的结构,且是此项技术中众所周知的。
定时器及I/O看守文件描述符通常为最常见的事件,其从用户界面控制系统115产生响应。然而,此处许多其它事件可从系统产生活动,包含工作、动画、信号及闲频信号(idler)。
定时器可为所述系统中最常见的召回之一。简单动画、转变、暂停、计数器及许多其它效果可使用定时器来实施。重复的事件在许多程序中为频繁的要求。大体上,当以重复的方式使用时,可针对每一呼叫存储某一种类的状态,以跟踪正发生的情况。一旦目标已实现,所述定时器就可删除其自身及其数据。
如上文所论述,另一可导致系统操纵用户界面的极其常见的事件为输入或输出信号。
图8说明利用用户界面控制系统115来显示图像的实例的屏幕截图的说明。本发明的最有力工具之一是其显示及修改色彩、文本及图像的能力。图8中的实例以其自然大小显示图像。与此动作相关联的脚本可包含:
Figure BDA0000152495260000151
因此,将所述图像设定为“puppy.jpg”,其为可辨认的图像文件。在所述脚本的行2处,确定了图像文件的自然高度及宽度。接着将所显示的图像重新定大小为与其自然大小相同的“w”及“h”。接着可所述图像定位到水平位置“20”及垂直位置“10”。所述脚本的最后一行可接着通过将数据发送到驱动器140而在视觉界面上显示所述图像。
图像对象在图形界面内具有其对象宽度及对象高度,而来自文件的图像也具有其图像宽度及图像高度。如果将在所述界面上显示的图像对象的大小大于图像文件的宽度及高度,那么将在屏幕上显示按比例放大的图像。同样地,如果图像对象的大小较小,那么将显示按比例缩小的所述图像。在上面图8的实例中已进行的是已在显示器中将所述图像重新定大小为图像文件尺寸的相同大小。
继续所述实例,图9以填充及平铺的方式显示相同图像。函数evas_object_image_fill_set使用户能够指定待平铺的区。因此,对于图9中的图像1,合适的脚本可包含:
evas_object_image_fill_set(image 1,0,0,w,h);
其用对象大小的宽度及高度设置对象(0,0)的填充区。因此所述对象内仅显示一个图像,另一方面,图像2可包含行:
evas_object_image_fill_set(image2,0,0,w/2,h/2);
其用对象一半大小的宽度及高度设置对象(0,0)的填充区。图像现在平铺在该区上。由于该区为对象的一半大小,所以所述图像在所述图像对象内呈现为四倍。最后,可利用此脚本行产生图像3:
evas_object_image_fill_set(image3,32,32,w/2,h/2);
其用对象一半大小的宽度及高度设置对象(32,32)的填充区。所呈现的图像大小与图像2相同。然而,填充区矩形现在为(32,32)。因此,图像3类似图像2,但所有部分现在向右且向底部移位了32个像素、。
继续观察图10,对于无法或不应任意缩放的图像,施加边界属性不太常见。比如图像侧边上的斜角或突出部分。此区被称作“边界”。可利用以下脚本调用来控制边界:
void evas_object_image_border_set(Evas_Object*image,int l,int r,int t,int b);
边界的使用本质上将图像分成九个区,一个中心区、四个隅角区及四个边缘区。如图10所示。图中的字母指示由evas_object_image_border_set的四个参数控制的区,其中4个隅角区由各自的两个相邻边缘区控制。
图11提供使用图像边界性质的脚本的实例。左边的第一图像为处于其自然大小的源图像。第二图像为按比例缩放到200个像素且所有4个边的边界设定为5个像素的图像,因此当图像的中心已按比例缩放时,边界保持原状。最终图像是设定在两侧上的边界而并非最终的两侧,因此产生较大的顶部及左边界。
额外的图像操纵是可能的。举例来说,图像旋转可通过例如以下的脚本轻松完成:
fp_rotate_async(Evas_Object*src,int angle,uint32_t fill,
enum fp_rotate_algorithm alg,
void(*donecb)(void*data,Evas_Object*dst,Evas_Object*src),
void*data);
第一参数(src)是源图像,其可为标准图像对象。这是待旋转的源图像。所述源图像本身将不受旋转影响。Angel(角)确定旋转角;其可从X轴以正方向(逆时针方向)以度数测量。用此项技术中已知的方法来一致地处理负角及大于360度的角。所述功能可经配置以挑出最优化选项,因此举例来说,具有是90度的倍数的角,旋转的外观可简单地通过复制而非通过计算来实现,从而显著提高性能。
在一些实施例中,所产生的图像可为矩形,且因此经旋转的图像具有与源图像相同的大小或大于源图像。因此,在目的图像中的一些像素可不在源图像中表示。这些“新”像素的色彩及透明度可使用填充参数来设定。图12的实例中的填充参数是单个32位ARGB像素值。对于大多数情况来说,可使用透明的背景,且这由值0x00表示。对于90度的偶倍数,优选不应使用此值,因为源图像及目的图像中存在图像的一一对应关系。在图12中,原始图像可在左上角看到。所述图像还显示为旋转33度、45度(具有填充)及90度。
与旋转相似,利用以下脚本,图像的按比例缩放轻松为可能的:
实例按比例缩放脚本提供一种从异步加载的图像产生新的经比例缩放图像的方法,从而避免重复的耗费资源的按比例缩放例程。一个实施方案提供两种用于按比例缩放的算法、用于高质量分辨率的平滑按比例缩放例程及用于最大速度的子取样方法。
所述脚本的第一参数是待按比例缩放的对象。接下来的两个参数确定用于其自身按比例缩放的参数。第一参数为按比例缩放例程,且第二参数为确定按比例缩小所述图像的量的比率。最后两个参数是完成时将调用的召回,及用户数据指针。此按比例缩放例程的输出可见于图13中。
最后,图14及15说明分层脚本的输出。一般来说,在所述界面的一些实施例中,每一层可被指派一ID,其为带正负号的整数。层可以一者在另一者顶部的方式定位——最高(顶部)层离用户最近,而最低(底部)层离用户最远。
举例来说,层10上的图像将被绘制于层20上的文本下面。图14用“Hello World(你好世界)”文本下面的树图像来说明这一点。将所述图像的层彻底地改变为层30(比所述文本高10层)改变了输出,如图15中所看到。重要的是要注意,这可为任何大于20的层。层21、32、499或2034214上将已产生相同的图像。另外,使所述文本降低到层3将有相同的效果(将其置于图像下面)。
另外,层可为负的,因此图15的图像可能已用层12上的图像、层-29932上的文本及层-300000处的背景产生。可使用调用来控制对象层:
void evas_object_layer_set(Evas_Object*obj,int layer);
因为多个层可能混淆,所以在一个实施方案中,可使用以下来查询对象的层ID:
int evas_object_layer_get(Evas_Object*obj);
除层之外,对象可作为同一层内的堆叠而存在。一般来说,当添加对象时,将对其放置在所述层的顶部。操纵对象的堆叠顺序可以此项技术中众所周知的许多方式来进行。举例来说:
void evas_object_raise(Evas_Object*obj);
void evas_object_lower(Evas_Object*obj);
升高对象会将其移动到所述层的对象堆叠的顶部,从而将同一层上的所有其它对象向下推。将对象向下移动到底部,从而将堆叠中的其余对象向上推。对于较精细粒度的控制,可使用:
void evas_object_stack_above(Evas_Object*obj,Evas_Object*target);
void evas_object_stack_below(Evas_Object*obj,Evas_Object*target);Ff
继续实例屏幕截图,图16A到16K及图17A到17G提供由用户界面控制系统的一些实施例产生的两个移动界面主题的各种屏幕截图。如图16A到16K所说明,第一主题可为年轻女性用户所特别需要的。如图17A至17G所说明,第二所显示主题可为较一般的受众设计。这些实例主题之间的共同点是它们可利用同一后端OS或核心在同一电子装置上显示。然而,由于本发明的灵活性,所述界面的外观及感觉可依据用户定制而显著地改变。
在图16A中,第一主题呈现在蜂窝式电话的用户主页的个性化中。为了清晰起见,此第一主题在下文中将被称为“演示主题”。此实例主页中的多个项目可为动画的,包含太阳、云朵、人物及动物。虽然未说明,天空及显示器的背光可同样为动画的。在一些实施例中,天空可依据日时或光传感器而改变色彩。因此,在傍晚时间,天空可为橙色,且太阳图标可地平线上较低。
继续实例,随着傍晚继续,太阳图标可落山及由月亮图标替代。天空色彩可变暗且可配上星星。在一些实施例中,当将所述装置重新定位于不同时区时,界面可同样地记录白天时间的此移位,及相应地补偿界面显示。可看到时间及日期显示于此实例的右上角。
额外图标可指示位置、新文本消息、话音邮件、蜂窝式信号强度及电池状态。除对显示的视觉修改之外,本发明同样还可同样定制音频及触觉界面组件。因此,人物在屏幕上的动画可伴有声音及触觉输出,例如振动。
图16B说明用于演示主题的视觉输出,其指示相对信号强度。强蜂窝式信号可对应于盛开的雏菊状花朵。低信号可对应于幼苗。在此实例主题中,中等信号可表示为生长了一半的花朵。
同样地,图16C说明用于演示主题的视觉输出,其指示移动装置的电池量。此处,随着电量减小,郁金香花枯萎。
图16D及16E分别说明是否存在新的文本消息及新的话音邮件消息。16B到16E的这些视觉组件中的每一者可在图16A的主页中清晰地看到。
继续,图16F说明具有演示主题的装置的实例菜单页。再次,特定对象、人物及动物可为动画的。其它页的链接以池塘中的青蛙的形式提供。电池、信号强度及消息指示符可清晰地看到。选择“联系人”链接可致使显示变成图16G所说明的联系人主页屏幕截图。再次,屏幕截图的部分可为动画的,提供装置状态的指示符且存在导航链接。
在图16H处,用户已选择邮箱图标(将用户链接到SMS收件箱)。此显示还包括动画。在此实例中,联系人可以气泡显示。一旦选择了联系人,继续图标就可变为可供用户用于创作消息给选定联系人。用户还具有取消选择权,从而返回到图16G的联系人主页。
如果用户打开接收到的消息,那么装置可以带主题显示来显示所述消息,如图16I中所看到的。再次,可呈现对演示主题来说常见的常见动画及装置状态指示符。消息及寄件人信息也可呈现。用户具有删除(忽视)消息或回复消息的选择权。如果用户回复,那么可提供例如图16J所说明的屏幕。在此屏幕截图中,向用户提供与触摸屏结合的键盘,其可实现进一步的用户输入。在创作回复信息之后,可在给定时间增量内显示实例所发送图像,如图16K中所看到的。
类似于演示主题,图17A到17G提供由用户界面控制系统的一些实施例产生的移动界面主题的各种屏幕截图。此第二主题此后为了清晰将被称为“霓虹主题(neontheme)”。霓虹主题中显示的信息可大致类似于先前主题的信息,然而整体外观可因潜在系统对正发送到输出驱动器的数据的拦截及操纵而彻底地改变。
在图17A中,可看到供装置运行霓虹主题脚本的主页。此处,信号强度、电池量及导航链接在霓虹框内以数字形式说明。主题外观暗示霓虹元素在暗背景上反射。特定“反射”为真实镜像图像;然而,这些“反射”中的一些反射包括标签或相关信息。举例来说,信号强度在霓虹框中指示为95%,且下面的“反射”指示此百分比为信号值。
虽然在本发明的图中未说明,但在一些实施例中,霓虹框可包含色彩定义的信息。举例来说,例如时间、日期、信号强度及电池等所有装置状态指示符可由绿色霓虹灯说明。紧急消息,例如未接来电或新文本可为红色。链接可为蓝色,且屏幕标题可为灰色。另外,此实例的一些实施例也可包含唯一一组触觉及音频界面。
图17B可说明带霓虹主题的显示的菜单页的一个实例。再次,大部分用户相关材料保留在屏幕上。在给定较大霓虹框阵列的情况下,色彩译码可在此屏幕中具有特定用途。
图17C可随后说明霓虹主题的联系人主页的一个实例,且同样地,图17D可为文本消息收件箱。此处,将个别联系说明为人形图标。符号(例如勾号及感叹号)可指示已响应的联系人或具有新消息的联系人。联系人可由用户来选择。图17E随后说明霓虹主题中的消息显示的实例。此外,如果用户应选择这么做,那么图17F说明文本消息响应页的实例。再次,在此实例中可利用触摸屏键盘。最后,图17G说明霓虹主题的实例“所发送”屏幕。
呈现图16A到16K及17A到17G的目的是为了进一步指示利用本发明的可能用户界面定制的能力及范围。在这两种带主题情况中,可利用运行相同背景应用程序及操作系统的相同装置。在一些实施例中,可根据脚本来拦截及修改驱动器数据。修改的程度及是否完全修改数据可由应用程序自身或装置状态指示。
除了所提供的相对较少的实例之外,本发明可经配置以包含大范围的其它图形、声音及触觉操纵。这可包括文本显示、重新定大小、字体变化及色彩变化;更多的图像效果包含透明度、覆盖、布局、移动及裁剪;对各种警报及通知的声音响应;触觉输出;媒体输出,以及输出的组合。此外,合成输出是可能的,藉此合成物是具有主题的抽象动画对象。因此,在此应用程序中,可用输出的全面范围使提供包含性实例列表是不切实际的。此外,从添加额外实例中获得的益处此时对于理解本发明是没有必要的。
总而言之,提供在电子装置上用于用户界面控制及个性化的系统及方法。此系统提供对用户界面的控制,所述用户界面通常由制造商预定义及限制。所述系统的一些实施例通过利用体现于虚拟机中的解释性元件以高效方式实现对用户界面内容的近运行时修改。
虽然已用功能术语描述了系统及方法,但本发明的实施例可包含全硬件、全软件或两者的某一组合。此外,本发明考虑所揭示方法的任何部分的手动性能。
虽然已依据若干优选实施例描述了本发明,但存在属于本发明的范围内的更改、置换、修改及各种替代等效物。还应注意,存在许多实施本发明的方法及系统的替代方式。因此希望将所附权利要求书解释为包含属于本发明的精神及范围内的所有此些更改、置换、修改及各种替代等效物。

Claims (24)

1.一种用于为消费型电子装置的用户界面换肤的方法,所述方法包括:
拦截应用程序与消费型电子装置的输入及输出驱动器之间的数据,所述输入及输出驱动器控制视频、音频及触觉界面的至少一项;
确定是否存在受限功能性指示符,所述受限功能性指示符取决于所述消费型电子装置的状态及所述数据内的内容的至少一项,如果存在所述受限功能性指示符,那么:
根据受限主题修改所述数据,所述受限主题包含多个受限脚本,并且将已修改的数据输出到原始目的地;以及
如果不存在所述受限功能性指示符,那么根据首选主题修改所述数据,所述首选主题包含多个首选脚本,并且将已修改的数据输出到原始目的地。
2.根据权利要求1所述的方法,其特征在于,它还包括:
确定是否存在透明度提示,所述透明度提示包含所述消费型电子装置的状态以及所述数据内的内容的至少一项,且所述透明度提示规定所述数据应保持未修改,以及如果存在所述透明度提示,那么将所述数据转发到其原始目的地。
3.根据权利要求2所述的方法,其特征在于,所述透明度提示包含多个事件的任一项,且所述多个事件包含低电力状态、显示大小、应用程序相关动作及输出数据信号的至少一项。
4.根据权利要求3所述的方法,其特征在于,所述透明度提示的所述多个事件是用户定义的。
5.根据权利要求1所述的方法,其特征在于,所述首选主题及所述受限主题存储在可配置数据库内。
6.根据权利要求5所述的方法,其特征在于,所述可配置数据库由用户配置,且所述可配置数据库的所述配置包含由所述用户产生伪码。
7.根据权利要求5所述的方法,其特征在于,所述可配置数据库由解译程序读取。
8.根据权利要求5所述的方法,其特征在于,所述可配置数据库被编译为字节码。
9.根据权利要求5所述的方法,其特征在于,所述可配置数据库同时并入所述受限及首选脚本的当前及先前版本,且所述脚本之一的所述当前版本中的错误致使还原到所述脚本的所述先前版本。
10.根据权利要求1所述的方法,其特征在于,所述首选及受限脚本包含描述已修改数据的格式、布局或内容的信息。
11.根据权利要求10所述的方法,其特征在于,所述首选及受限脚本参考缩放、偏斜、变换、动画及更改信息的至少一项。
12.根据权利要求1所述的方法,其特征在于,它还包括拦截操作系统与所述消费型电子装置的所述输入及输出驱动器之间的数据。
13.一种用于为消费型电子装置的用户界面换肤的设备,所述设备包括:
应用程序界面,配置成拦截应用程序与所述消费型电子装置的输入及输出驱动器之间的数据,所述输入及输出驱动器控制视频、音频及触觉界面的至少一项;
配置引擎,配置成确定是否存在受限功能性指示符,所述受限功能性指示符取决于所述消费型电子装置的状态及所述数据内的内容的至少一项,如果存在所述受限功能性指示符,那么所述配置引擎还可配置成:
根据受限主题修改所述数据,所述受限主题包含多个受限脚本,并且将已修改的数据输出到原始目的地;以及
如果不存在所述受限功能性指示符,那么根据首选主题修改所述数据,所述首选主题包含多个首选脚本,并且将已修改的数据输出到原始目的地。
14.根据权利要求13所述的设备,其特征在于,所述配置引擎还可配置成确定是否存在透明度提示,所述透明度提示包含所述消费型电子装置的状态及所述数据内的内容的至少一项,且所述透明度提示规定所述数据应保持未修改,以及如果存在所述透明度提示,那么所述配置引擎还可配置成将所述数据转发到其原始目的地。
15.根据权利要求14所述的设备,其特征在于,所述透明度提示包含多个事件的任一项,且所述多个事件包含低电力状态、显示大小、应用程序相关动作及输出数据信号的至少一项。
16.根据权利要求15所述的设备,其特征在于,所述透明度提示的所述多个事件是用户定义的。
17.根据权利要求13所述的设备,其特征在于,所述首选主题及所述受限主题存储在可由所述配置引擎存取的可配置数据库内。
18.根据权利要求17所述的设备,其特征在于,所述可配置数据库由用户配置,且所述可配置数据库的所述配置包含由所述用户产生伪码。
19.根据权利要求17所述的设备,其特征在于,所述可配置数据库由解译程序读取。
20.根据权利要求17所述的设备,其特征在于,所述可配置数据库被编译为字节码。
21.根据权利要求17所述的设备,其特征在于,所述可配置数据库同时并入所述受限及首选脚本的当前及先前版本,且所述脚本之一的所述当前版本中的错误致使还原到所述脚本的所述先前版本。
22.根据权利要求13所述的设备,其特征在于,所述首选及受限脚本包含描述已修改数据的格式、布局或内容的信息。
23.根据权利要求22所述的设备,其特征在于,所述首选及受限脚本参考缩放、偏斜、变换、动画及更改信息的至少一项。
24.根据权利要求13中所述的设备,其特征在于,所述应用程序界面配置成拦截操作系统与所述消费型电子装置的所述输入及输出驱动器之间的数据。
CN201080045931.3A 2009-09-17 2010-09-16 用于运行时可配置的用户界面控制器的系统及方法 Active CN102687105B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/561,930 US10248438B2 (en) 2009-09-17 2009-09-17 System and methods for a run time configurable user interface controller
US12/561,930 2009-09-17
PCT/IB2010/002417 WO2011033385A2 (en) 2009-09-17 2010-09-16 System and methods for a run time configurable user interface controller

Publications (2)

Publication Number Publication Date
CN102687105A true CN102687105A (zh) 2012-09-19
CN102687105B CN102687105B (zh) 2016-05-25

Family

ID=43731692

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080045931.3A Active CN102687105B (zh) 2009-09-17 2010-09-16 用于运行时可配置的用户界面控制器的系统及方法

Country Status (7)

Country Link
US (2) US10248438B2 (zh)
EP (1) EP2478430B1 (zh)
KR (1) KR101767229B1 (zh)
CN (1) CN102687105B (zh)
BR (1) BR112012006020A2 (zh)
HK (1) HK1176135A1 (zh)
WO (1) WO2011033385A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111708476A (zh) * 2020-05-25 2020-09-25 北京百度网讯科技有限公司 虚拟键盘的展示方法、虚拟键盘以及展示装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110034858A (ko) * 2009-09-29 2011-04-06 주식회사 넥슨모바일 게임 운영을 제어하기 위한 사용자 인터페이스 제공 방법
WO2011150870A2 (zh) * 2011-06-09 2011-12-08 华为终端有限公司 一种主题显示方法以及相关装置
US9836213B2 (en) 2012-07-27 2017-12-05 Symbol Technologies, Llc Enhanced user interface for pressure sensitive touch screen
US20150278388A1 (en) * 2012-11-15 2015-10-01 Titus Inc. Dynamically re-skinning a web user interface
US9996998B2 (en) 2014-12-05 2018-06-12 HomeAway.com, Inc. Adaptive advisory engine and methods to predict preferential activities available at a region associated with lodging
US9927954B2 (en) * 2014-12-05 2018-03-27 HomeAway.com. Inc. Dynamic interface to present customized information contextually in relation to access to a property
US9866070B2 (en) 2015-08-31 2018-01-09 International Business Machines Corporation Secure wireless power access protocol suited for implementing levels of service in public and private environments
US20180210619A1 (en) * 2017-01-26 2018-07-26 Microsoft Technology Licensing, Llc Automated user interface design improvement
US10698744B2 (en) * 2017-04-14 2020-06-30 Facebook, Inc. Enabling third parties to add effects to an application
CN110785982B (zh) * 2017-04-14 2022-05-13 元平台公司 用于使第三方能够将效果添加到应用的方法、介质和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867153A (en) * 1996-10-30 1999-02-02 Transaction Technology, Inc. Method and system for automatically harmonizing access to a software application program via different access devices
CN1517859A (zh) * 2003-01-17 2004-08-04 英业达股份有限公司 应用程序的图形界面开发方法
US6880014B2 (en) * 2001-09-24 2005-04-12 International Business Machines Corporation Method and system of use of transcode directives for distributed control of transcoding servers
US20060200817A1 (en) * 2005-03-04 2006-09-07 Microsoft Corporation Versioning support for drivers frameworks
CN101106571A (zh) * 2007-08-30 2008-01-16 腾讯科技(深圳)有限公司 一种动态换肤方法与装置
CN101356494A (zh) * 2006-05-16 2009-01-28 捷讯研究有限公司 对主题进行换肤的系统和方法
CN101388178A (zh) * 2007-09-11 2009-03-18 奇景光电股份有限公司 电子装置中动态背光控制的元件及方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209009B1 (en) * 1998-04-07 2001-03-27 Phone.Com, Inc. Method for displaying selectable and non-selectable elements on a small screen
US7055101B2 (en) * 1998-12-18 2006-05-30 Tangis Corporation Thematic response to a computer user's context, such as by a wearable personal computer
US6886135B2 (en) * 2000-04-07 2005-04-26 Microsoft Corp. Extensible schema for defining the visual appearance of computer system components
US6717593B1 (en) * 2000-09-12 2004-04-06 Avaya Technology Corp. Mark-up language implementation of graphical or non-graphical user interfaces
US7190976B2 (en) * 2000-10-02 2007-03-13 Microsoft Corporation Customizing the display of a mobile computing device
US6791581B2 (en) * 2001-01-31 2004-09-14 Microsoft Corporation Methods and systems for synchronizing skin properties
US7073130B2 (en) * 2001-01-31 2006-07-04 Microsoft Corporation Methods and systems for creating skins
GB2373085B (en) * 2001-03-08 2004-10-06 Ibm Method, computer program and system for style sheet generation
US7565605B2 (en) * 2001-05-08 2009-07-21 Nokia, Inc. Reorganizing content of an electronic document
US20030063120A1 (en) * 2001-09-28 2003-04-03 Wong Hoi Lee Candy Scalable graphical user interface architecture
US20040155903A1 (en) * 2002-12-16 2004-08-12 Schneeberg Brian D. Methods and systems for visualizing categorized information
US7500198B2 (en) * 2003-04-25 2009-03-03 Motorola, Inc. Method and apparatus for modifying skin and theme screens on a communication product
EP1719253B1 (en) 2004-02-20 2014-08-20 Nuance Communications, Inc. Call intercept methods, such as for customer self-support on a mobile device
EP1569096A1 (en) * 2004-02-27 2005-08-31 Research In Motion Limited System and method for executing wireless applications using common UI components from a UI repository
US20060026527A1 (en) * 2004-07-30 2006-02-02 Research In Motion Limited Method for customizing the visual attributes of a user interface
US8706515B2 (en) 2005-10-20 2014-04-22 Mckesson Information Solutions Llc Methods, systems, and apparatus for providing a notification of a message in a health care environment
US20070143324A1 (en) 2005-12-16 2007-06-21 Sap Ag Graphical user interface icon for documents with status indicator
EP1798632A1 (en) 2005-12-19 2007-06-20 Research In Motion Limited Computing device and method of indicating status of application program
US8849980B2 (en) 2006-02-06 2014-09-30 International Business Machines Corporation Apparatus, system, and method for monitoring computer system components
US8010094B2 (en) * 2006-06-06 2011-08-30 Turner Broadcasting System, Inc. Mobile device with themed multimedia effects
US8515397B2 (en) * 2007-12-24 2013-08-20 Qualcomm Incorporation Time and location based theme of mobile telephones
US20090313550A1 (en) * 2008-06-17 2009-12-17 Microsoft Corporation Theme Based Content Interaction

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867153A (en) * 1996-10-30 1999-02-02 Transaction Technology, Inc. Method and system for automatically harmonizing access to a software application program via different access devices
US6880014B2 (en) * 2001-09-24 2005-04-12 International Business Machines Corporation Method and system of use of transcode directives for distributed control of transcoding servers
CN1517859A (zh) * 2003-01-17 2004-08-04 英业达股份有限公司 应用程序的图形界面开发方法
US20060200817A1 (en) * 2005-03-04 2006-09-07 Microsoft Corporation Versioning support for drivers frameworks
CN101356494A (zh) * 2006-05-16 2009-01-28 捷讯研究有限公司 对主题进行换肤的系统和方法
CN101106571A (zh) * 2007-08-30 2008-01-16 腾讯科技(深圳)有限公司 一种动态换肤方法与装置
CN101388178A (zh) * 2007-09-11 2009-03-18 奇景光电股份有限公司 电子装置中动态背光控制的元件及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
W.KEITH EDWARDS等: "Systematic Output Modification in a 2D User Interface Toolkit", 《PROCEEDINGS OF THE 10TH ANNUAL ACM SYMPOSIUM ON USER INTERFACE SOFTWARE AND TECHNOLOGY》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111708476A (zh) * 2020-05-25 2020-09-25 北京百度网讯科技有限公司 虚拟键盘的展示方法、虚拟键盘以及展示装置
CN111708476B (zh) * 2020-05-25 2022-03-25 北京百度网讯科技有限公司 虚拟键盘的展示方法、虚拟键盘以及展示装置
US11635892B2 (en) 2020-05-25 2023-04-25 Beijing Baidu Netcom Science And Technology Co., Ltd. Method for displaying virtual keyboard, virtual keyboard and display device

Also Published As

Publication number Publication date
WO2011033385A2 (en) 2011-03-24
US10248438B2 (en) 2019-04-02
KR101767229B1 (ko) 2017-08-10
EP2478430B1 (en) 2019-11-06
WO2011033385A3 (en) 2011-08-18
US20190324777A1 (en) 2019-10-24
BR112012006020A2 (pt) 2020-08-25
EP2478430A4 (en) 2014-04-23
EP2478430A2 (en) 2012-07-25
CN102687105B (zh) 2016-05-25
KR20120093218A (ko) 2012-08-22
US20110066962A1 (en) 2011-03-17
HK1176135A1 (zh) 2013-07-19

Similar Documents

Publication Publication Date Title
CN102687105B (zh) 用于运行时可配置的用户界面控制器的系统及方法
CN105531660B (zh) 用于支持用户交互的用户终端设备及其方法
US7725419B2 (en) Proactive user interface including emotional agent
US20070183381A1 (en) Screen image presentation apparatus and method for mobile phone
EP1522920B1 (en) Proactive user interface including emotional agent
CN109300181A (zh) 用户界面和内容项的计算机生成显示组件的动画
CN107870690A (zh) 用于生成触觉输出的设备、方法和图形用户界面
CN109691073A (zh) 包括多个显示器的电子设备及其操作方法
US20080059896A1 (en) Mobile Device User Interface
US20060150104A1 (en) Display of user selected digital artworks as embellishments of a graphical user interface
WO2006092647A1 (en) Offering menu items to a user
CN101336123A (zh) 游戏装置、游戏装置的控制方法及信息存储介质
CN103135888A (zh) 用于显示补充窗口的方法和移动装置
CN101336122B (zh) 游戏装置及游戏装置的控制方法
CN106873851A (zh) 在交互界面中创建3D视效的Widget的方法、装置及终端
CN104636361B (zh) 基于时间轴的文件管理方法和终端设备
JP2006033220A (ja) 携帯端末装置
CN108496149A (zh) 主题数据
CN101902525A (zh) 一种手机组装方法
CA2536233C (en) Proactive user interface including evolving agent
JP4480047B2 (ja) 携帯端末装置
KR101351014B1 (ko) 통신 단말기 및 통신 단말기의 데이터 표시 방법
Marcus Mobile user-experience design trends
CN112214126A (zh) 操作面板及其显示方法、设备
Huang et al. Interactive expression design of multimedia maps based on flash

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1176135

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1176135

Country of ref document: HK