透明实现具有自适应用户接口的软件应用的方法和系统技术方案

技术编号:11152941 阅读:55 留言:0更新日期:2015-03-18 09:28
本发明专利技术提供了透明实现具有自适应用户接口的软件应用的方法和系统。一种方法包括:由插装到可由计算设备执行的应用中的库接收消息,该消息指示应该对能够由所述应用呈现在计算设备的显示器上的用户接口组件执行的修改。修改用户接口组件以创建修改后的用户接口组件。使修改后的用户接口组件被呈现在显示器上。另一方法包括:访问可在计算设备上执行的应用的用户接口组件的描述,其中用户接口组件能够被所述应用呈现在计算设备的显示器上。允许开发者修改有关用户接口组件的信息。形成消息以允许修改以及对应的用户接口组件被确定,并且将该消息发送给具有该应用的计算设备。公开了设备、软件和计算机程序产品。

【技术实现步骤摘要】
透明实现具有自适应用户接口的软件应用的方法和系统
本专利技术通常涉及在计算机系统上执行的应用,并且更具体地涉及透明地适配针对那些应用的用户接口(UI)。
技术介绍
本节旨在提供在下文中公开的本专利技术的背景或上下文。此处的描述可以包括若干概念,这些概念可能被追求,但是不一定是以前所构思、实施或描述的概念。因此,除非在此另行明确指出,本节所述不是本申请中的描述的现有技术并且不被承认是本节包含的现有技术。 移动应用和移动应用市场为开发者提供了在全球市场中快速发布软件的机会。在应用被投入使用之后,通过软件的应用生命周期对其进行管理的挑战也随之而来。一旦投入使用,对应用的管理和更新对于开发者和产品拥有者来说就是一个持续的挑战。 为了缓和该挑战,移动应用开发已经迅速地采用了网络技术作为直接解决该发布后管理问题的尝试,例如通过在服务器上驻留客户端代码。这允许以移动设备为目标的应用快速更新和部署新的应用布局、以及利用“一次写入,到处运行”。 称作混合(Hybrid)的另一类应用程序更进一步地利用了该途径。一般来说,混合应用通过使用本地容器与网络视图(Web view)来提供呈现而构建应用。该混合应用让应用也访问本地软件开发工具包(SDK),以获得诸如摄像机、全球定位系统(GPS)和文件存储之类的功能。 这两种针对移动开发的途径覆盖了大多数使用情况。然而,它们有提供低保真的用户体验的缺点。 另一方面,本地应用提供了针对设备的适当的用户体验。典型地,移动平台提供本地应用编程接口(API)用于开发目标在于在该平台上运行的应用。该API定义了该平台的观感以及应用被允许访问的操作服务。其他基于网络的途径仅通过使用标记语言最大限度地接近这种观感,最终结果一般不是非常好。 因此,改善应用的观感同时使应用的管理和更新变得容易将是有益的。
技术实现思路
本节具有示例性实施例的可能实施的示例。本节不是意在进行限制。 在一个示例性实施例中,方法包括:由插装到可由计算设备执行的应用中的库接收消息,该消息指出一个或多个修改应该对应用的能够在计算设备的显示器上呈现的一个或多个用户接口组件执行。该方法包括:根据一个或多个修改来修改一个或多个用户接口组件,以创建一个或多个修改后的用户接口组件。该方法还包括:使一个或多个修改后的用户接口组件被呈现在计算设备的显示器上。还公开了对应于该方法的装置和程序产品。 在另一个示例性实施例中,方法包括:访问用于可在计算设备上执行的应用的多个用户接口组件的描述,其中所述多个用户接口组件能够通过该应用被呈现在计算设备的显示器上。该方法包括:允许开发者修改有关所述多个用户接口组件中的一个或多个的信息。该方法还包括:响应于开发者对信息做出的一个或多个修改,形成一个或多个消息以允许一个或多个修改以及对应的一个或多个用户接口组件被确定。该方法还包括:向一个或多个具有该应用的计算设备发送一个或多个消息。还公开了对应于该方法的装置和程序产品O 【附图说明】 图1是根据本专利技术的示例性实施例的经由网络通信的计算设备和服务器的框图; 图2描绘根据本专利技术示例性实施例的联网环境; 图3是控制面板的表示以及应用UI的表示的示图; 图4A是设计成从基于网络的控制面板提供动态UI更新的示例性系统的示图; 图4B是根据示例性实施例的针对基于图4A的操作系统、应用和自适应Π交互的逻辑流程图,并且示出示例性方法的操作,包含在计算机可读存储器上的计算机程序指令的执行结果,和/或由以硬件实施的逻辑执行的功能; 图5A示出与图4的应用模型的一部分相对应的应用UI的视图; 图5B示出用来改变与图5A中所示的视图相对应的应用视图中的对象的示例性协议; 图6A示出类似于图5A视图的应用Π的另一个视图,不同之处在于文本对象已从该视图中清除; 图6B示出用来从图5A的视图中擦除文本对象以创建图6A中的视图的示例性协议; 图6C示出用来从图5A的视图中擦除文本对象以创建图6A中的视图的示例性协议,其中该擦除是根据策略执行的; 图7A示出使用类别和重组(swizzling)来插装(instrumenting) 1S应用的示例; 图7B示出使用类别加载来插装安卓应用的示例; 图8是根据示例性实施例的由计算机系统/服务器12执行用于透明地实现具有自适应用户接口的软件应用的逻辑流程图,并且示出示例性方法的操作,包含在计算机可读存储器上的计算机程序指令的执行结果,和/或由以硬件实施的逻辑执行的功能;并且 包括图9A和9B的图9是根据示例性实施例的由计算设备112执行用于透明地实现具有自适应用户接口的软件应用的逻辑流程图,并且示出示例性方法的操作,包含在计算机可读存储器上的计算机程序指令的执行结果,和/或由以硬件实施的逻辑执行的功倉泛。 【具体实施方式】 示例性实施例描述用于透明地实现具有自适应用户接口的软件应用的系统、方法、装置和程序产品。 自适应用户接口(UI)和Π更新对本地用户接口的应用交付有直接影响,并且以低开销更新机制给予应用拥有者以优势,即提供高保真UI,同时还提供在控制当运行这些应用时在设备上显示的数据的过程中的安全级别。 自适应Π允许后部署系统中的更新和修改。对于在将移动应用发布到“野生”状态之后提供最新的用户体验、安全性和应用管理来说,这是需要的。 该方法可以允许应用管理推出应用更新而无需修改或检查应用的源代码。下面描述其他示例性的益处。 尽管主要重点在下面放在移动应用上,然而许多不同类型的应用也具有能够从此处的示例性实施例中受益的用户接口。例如,许多汽车内具有交互显示器,而这类交互显示器是使用来自应用的用户接口(UI)来设计和定义的。因此,该示例性实施例具有广阔的适用性,并且图1和2示出这样的广阔适用性。 现参考图1,其根据本专利技术的示例性实施例示出经由网络通信的计算设备和服务器的框图。图1被用于提供可以在其中使用示例性实施例的系统的概览,并且被用于提供某些示例性实施例的概览。在图1中,存在计算机系统/服务器12,其可以用很多其他通用或专用计算系统环境或配置来操作。熟知的适合用于计算机系统/服务器12的计算系统、环境、和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户端、胖客户端、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费性电子装置、网络PC、微型计算机系统、大型计算机系统以及包括任何上述系统或设备的分布式云计算环境,等等。 如图1所示,计算机系统/服务器12以通用计算设备的形式示出。计算机系统/服务器12的组件可以包括但不限于一个或多个处理单元16 (例如,处理器)、系统存储器28以及将包括系统存储器28在内的各种系统组件耦合到一个或多个处理单元16的总线18。总线18表示一个或多个任意几种类型的总线结构,包括存储器总线或存储器控制器、外设总线、加速图形端口、以及使用各种总线架构中任意一种的处理器或局部总线。举例来说并且并非进行限制,这类架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及外部设备互连(PCI)总线。计算机系统/服务器本文档来自技高网
...
透明实现具有自适应用户接口的软件应用的方法和系统

【技术保护点】
一种方法,包括:由插装到能够由计算设备执行的应用中的库接收消息,所述消息指示应该对所述应用的能够在所述计算设备的显示器上呈现的一个或多个用户接口组件执行一个或多个修改;根据所述一个或多个修改来修改所述一个或多个用户接口组件,以创建一个或多个修改后的用户接口组件;以及使所述一个或多个修改后的用户接口组件被呈现在所述计算设备的所述显示器上。

【技术特征摘要】
2013.08.29 US 14/013,6651.一种方法,包括: 由插装到能够由计算设备执行的应用中的库接收消息,所述消息指示应该对所述应用的能够在所述计算设备的显示器上呈现的一个或多个用户接口组件执行一个或多个修改; 根据所述一个或多个修改来修改所述一个或多个用户接口组件,以创建一个或多个修改后的用户接口组件;以及 使所述一个或多个修改后的用户接口组件被呈现在所述计算设备的所述显示器上。2.如权利要求1所述的方法,其中所述一个或多个用户接口组件包括一个或多个对象,以及其中以树结构形成所述消息,其中由所述应用创建的视图在所述树结构中高于所述视图中的对象并且更靠近所述树结构的根,其中所述视图中的对象在所述树结构中高于所述对象的属性,以及其中所述属性是所述树结构的叶子。3.如权利要求1所述的方法,其中所述修改还包括: 由一个或多个重写对象拦截对一个或多个原始对象的一个或多个调用,其中所述一个或多个重写对象重写所述一个或多个原始对象中的对应原始对象; 由所述一个或多个重写对象使所述一个或多个用户接口组件根据所述一个或多个修改而被修改;以及 由所述一个或多个重写对象调用所述一个或多个原始对象。4.如权利要求3所述的方法,其中由于所述一个或多个重写对象控制一个或多个属性,所述一个或多个重写对象能够使所述一个或多个用户接口组件被修改,所述一个或多个属性指示对实现所述一个或多个用户接口组件的修改的一个或多个子系统的对应的一个或多个修改。5.如权利要求1所述的方法,还包括执行发现阶段,所述发现阶段包括:对于所述应用构建用户接口组件的描述,所述描述包括针对那些用户接口组件的布局信息;以及将所述描述的一个或多个指示发送给服务器。6.如权利要求1所述的方法,其中根据一个或多个策略执行修改。7.如权利要求6所述的方法,其中策略包括:实现所述一个或多个修改。8.如权利要求6所述的方法,其中策略包括下述中的一个:使用所述一个或多个用户接口组件阻止用户执行动作,或者使用所述一个或多个用户接口组件允许用户执行动作。9.如权利要求6所述的方法,其中基于所述一个或多个策略且响应于一个或多个标准得到满足,执行所述修改。10.如权利要求9所述的方法,其中所述一个或多个标准包括下述中的一个或多个:所述一个或多个策略是临时性的;所述一个或多个策略在一个或多个时间限制内发生;所述一个或多个策略在一天的一个或多个时间内发生;所述一个或多个策略在一个或多个位置发生;所述一个或多个策略取决于一个或多个针对用户动作的阈值;以及所述一个或多个策略取决于传感器数据。11.如权利要求9所述的方法,其中响应于所述一个或多个标准中的第一标准得到满足而执行所述修改,以及还包括:响应于所述...

【专利技术属性】
技术研发人员:J·W·里加曼M·皮斯托亚J·蓬佐G·托马斯
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1