用于集成的推荐的系统和方法_5

文档序号:9332653阅读:来源:国知局
引擎层可以以类似于其中web浏览器的渲染引擎促进web应用的执行的方式解释跨平台应用。实际上,本发明的许多实施例利用为在web浏览器中使用而开发的渲染引擎的修改版本。例如,根据本发明的实施例,WebKit或WebKit2渲染引擎的修改版本可以用来实现渲染引擎层。在多个实施例中,应用平台应用包括脚本语言的指令,其使得在远程推荐服务器上托管的推荐客户端被下载或者在本地高速缓存的推荐服务器被加载到存储器中。在几个实施例中,推荐客户端包括用可以在应用平台应用的渲染引擎进程内被执行的脚本语言实现的逻辑。在几个实施例中,推荐客户端从推荐服务器中检索推荐数据并利用以上所述的任何技术过滤推荐数据。推荐数据然后可以提供给应用平台应用,应用平台应用可以将数据格式化到用户界面模板中以供被渲染引擎进程在计算设备的计算环境内呈现。在许多实施例,以跨平台方式实现推荐客户端允许推荐客户端从应用平台应用内、跨平台应用内和/或由web浏览器应用渲染的网页内进行加载。下面将进一步讨论跨平台应用和其中跨平台应用可以结合对推荐客户端的调用的方式。
[0058]不以web应用通常局限于特定web浏览器实例的方式限制跨平台应用。集成层有助于跨平台应用与计算环境的集成和与原生实现的进程的通信,以提供包括(但不限于)桌面启动点和基于由跨平台应用从远程服务器推送的数据在计算环境内提醒的功能。在许多实施例中,集成层用于允许利用web技术开发的跨平台应用在计算环境内表现为就好像它是常规的桌面应用一样。在几个实施例中,集成层暴露了多个可以被跨平台应用调用以对计算环境做出修改的API,包括允许跨平台应用向应用平台应用提供应用平台应用可用来呈现提醒的信息的API。在几个实施例中,集成层API是JavaScript API,其可以被运行在由应用平台应用创建的应用运行时环境内的各种跨平台应用调用。响应于API调用,集成层可以与操作系统和/或原生实现的进程通信以从计算环境中检索信息和修改计算环境。在几个实施例中,操作系统提供有助于本地文件系统搜索和/或浏览的API。
[0059]在许多实施例中,应用平台应用通过暴露多个可以被调用的API允许将跨平台应用集成到用户设备的计算环境中,以对计算环境做出修改和/或与操作系统进程(或其它原生进程)通信。在个人计算机的情况下,计算环境可以包括在个人计算机上安装的、允许跨平台应用修改桌面计算环境的应用平台应用。应用平台应用也可以被实现用于安装在其它种类的设备上,诸如(但不限于)移动电话、平板计算机、游戏控制台、连接到互联网的电视机和/或不使用桌面计算环境的消费电子设备。
[0060]在许多实施例中,每个跨平台应用都是连续活动的(例如,运行在计算环境的后台中)并且当应用平台应用在运行时可以自动地(即按需)经由诸如互联网的网络与远程服务器通信以获得用于提醒的附加信息。利用与由应用平台应用提供的计算环境的集成,跨平台应用可以基于从远程服务器检索到的信息和/或利用与跨平台应用集成的推荐客户端的推荐连续地提供提醒。以这种方式,跨平台应用可以用来将web应用和web服务扩展到计算环境。此外,跨平台应用可以包括脚本语言的指令,其使得在由应用平台应用创建的运行时环境内执行推荐客户端。在许多实施例中,跨平台应用内的指令使得从远程推荐服务器中下载推荐客户端或者将推荐客户端从计算设备上维护的高速缓存中加载到存储器中。推荐客户端本身可以利用与用来实现跨平台应用相同的脚本语言来实现。
[0061]桌面计算环境通常包括桌面快捷方式、收藏夹、任务栏图标和/或开始菜单,其有助于,包括但不限于,桌面应用的启动和由桌面应用提供提醒的功能。在许多实施例中,应用平台应用允许跨平台应用在计算环境内表现为就好像它是常规原生实现的桌面应用一样。例如,应用平台应用可以为跨平台应用提供要包括在计算环境的任务栏和/或开始菜单中的图标。应用平台应用也可以向图标应用徽标或提醒。在许多实施例中,应用平台应用还允许跨平台应用创建桌面快捷方式来启动跨平台应用、利用集成的应用客户端呈现推荐和可以为提供跨平台应用的跨平台应用或与跨平台应用相关联的、要与特定文件类型相关联的web应用提供壳(shell)支持。在几个实施例中,由于应用平台应用提供通过其跨平台应用可以与操作系统和/或其它原生实现的进程通信的机制,因此跨平台应用能够表现为就好像它是常规原生实现的桌面应用一样。如上所述,应用平台应用还可以在由应用平台应用生成的用户界面内为原生实现的应用提供启动点。
[0062]在各种实施例中,当跨平台应用利用与用来实现web应用相同的技术来实现时,跨平台应用可以利用包含跨平台应用所有逻辑的背景页来实现。如同常规的网页,背景页是文本文件(相对于二进制可执行文件),其可以包括应用平台应用的渲染引擎层解析以实现其中包含的逻辑的HTML、JavaScript和/或CSS。在各种实施例中,该过程执行的方式类似于其中当在用户设备上渲染web应用时web浏览器应用的渲染引擎解析常规网页的方式。在某些实施例中,发起执行推荐客户端的指令可以在跨平台应用的背景页内提供以在跨平台应用的执行过程中向用户提供推荐。
[0063]除了背景页之外,跨平台应用还可以包括一个或多个弹出页,其类似于常规网页并且可以被呈现给用户来实现提醒和/或用户界面。在许多实施例中,跨平台应用包括存储在计算设备上的背景页和至少一个弹出页。应用平台应用实现在背景页内包含的逻辑并且可以经各种弹出页提供用户界面和/或提醒。在几个实施例中,背景页从远程服务器系统检索信息并且响应于检索到的信息通过对应用平台应用的API调用生成提醒。在许多实施例中,跨平台应用向应用平台应用提供的内容包括(但不限于)音频、视频、图像和/或文本,应用平台应用使用该内容来生成提醒弹出页。在几个实施例中,跨平台应用提供应用平台应用使用以确定其中用户可以与提醒弹出页交互的方式的诸如(但不限于)JavaScript的脚本语言的指令。在各种实施例中,虽然用户交互包括响应鼠标悬停和/或选择,但是可以使用适于本发明特定实施例要求的任何用户交互。在几个实施例中,本地存储的弹出页和/或根据从远程服务器检索到的内容检索或得出的弹出页内的脚本语言指令可以用来发起推荐客户端的执行并在由弹出页创建的用户界面内显示推荐。在许多实施例中,指令使得从推荐服务器下载推荐客户端或从本地存储的高速缓存中将推荐客户端加载到存储器中。由应用平台应用暴露的API在背景页和/或弹出页内呈现逻辑,以修改和响应与启动点的交互,启动点诸如(但不限于)在计算环境内的图标。例如,这些API可以允许与跨平台应用相关联的任何页通过响应来自用户在跨平台应用的图标上的悬停或点击的提醒请求而通过呈现与那个跨平台应用相关联的最近提醒或跨所有应用的特定提醒来提供提醒。类似地,这些API可以允许与跨平台应用相关联的任何页通过响应来自用户在用于接受或安装推荐的图标上的悬停或点击的交互来履行呈现的推荐。
[0064]虽然与跨平台应用相关联的每个页面都被应用平台应用独立地进行处理并且不一定共享文档对象模型(DOM)或JavaScript上下文,但是这些页可以利用包括在应用平台应用API中的远程过程调用(RPC)方法彼此通信并利用统一的本地存储共享数据。这使得减少了重复的数据传送和处理,并且可以用来通过高速缓存数据增强跨平台应用的性能。
[0065]虽然以上讨论了支持跨平台推荐客户端的执行以识别用于经计算设备的计算环境内的用户界面显示的相关推荐数据的应用平台应用的特定实现,但是应用平台应用可以以适于本发明实施例中特定应用的任何方式进行配置。
[0066]虽然本发明已在某些特定方面进行了描述,但是对本领域技术人员来说,许多其它的修改和变化将是显而易见的。因此,应当理解,在不背离本发明范围和精神的情况下,本发明可以以不同于特定描述的方式来实践。因此,本发明的实施例在所有方面都应当被认为是说明性的而不是限制性的。因此,本发明的范围不应当由图示的实施例来确定,而是由所附权利要求及其等效物来确定。
【主权项】
1.一种用于呈现推荐应用的方法,包括: 利用推荐客户端发送应用推荐请求数据,其中应用推荐请求数据包括描述对应于推荐客户端的计算设备的种类的元数据; 利用推荐客户端基于所发送的应用推荐请求数据获得应用推荐数据,其中应用推荐数据包括对至少一个被托管应用的引用; 利用推荐客户端在由推荐客户端的操作系统生成的计算环境内呈现应用推荐数据,其中推荐客户端被配置为利用包含集成层和渲染层的应用平台应用呈现应用数据; 利用推荐客户端接收交互数据,所述交互数据指示与应用推荐数据的至少一个交互; 利用推荐客户端基于接收到的交互数据记录结果信息;及 利用推荐客户端发送记录的结果信息。
【专利摘要】本发明公开涉及用于集成的推荐的系统和方法。示出了用于在计算设备上利用推荐客户端呈现推荐的系统和方法,其中推荐客户端可以在由应用平台应用提供的运行时环境内和/或在web浏览器应用内非原生地执行。在一种实施例中,用于呈现推荐应用的方法包括利用推荐客户端发送应用推荐请求数据,基于发送的应用推荐请求数据利用推荐客户端获得应用推荐数据,在由推荐客户端的操作系统生成的计算环境内呈现应用推荐数据,利用推荐客户端接收指示与应用推荐数据的至少一个交互的交互数据,基于接收到的交互数据利用推荐客户端记录结果信息,及利用推荐客户端发送记录的结果信息。
【IPC分类】G06F9/445
【公开号】CN105051686
【申请号】CN201480017347
【发明人】A·鲍尔克, B·麦查多
【申请人】甜蜜实验室股份有限公司
【公开日】2015年11月11日
【申请日】2014年2月21日
【公告号】US20140236756, WO2014130875A1
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1