首页 / 专利库 / 多媒体工具与应用 / 广告媒体 / 用于在应用内访问第三方服务的方法和系统

用于在应用内访问第三方服务的方法和系统

阅读:1089发布:2020-05-23

专利汇可以提供用于在应用内访问第三方服务的方法和系统专利检索,专利查询,专利分析的服务。并且客户端设备在与由 服务器 系统提供的社交网络服务相关联的应用中向用户提供到与第三方服务提供商相关联的页面的链接。第三方服务提供商与社交网络服务不同。响应于对链接的用户选择,在应用内加载页面。页面包括用于调用服务器系统的一个或多个应用编程 接口 (API)的脚本。客户端设备调用一个或多个API以从服务器系统获得与用户相关联的信息。客户端设备在应用内显示页面,并且使用与用户相关联的信息通过页面来与第三方服务提供商进行交易。,下面是用于在应用内访问第三方服务的方法和系统专利的具体信息内容。

1.一种方法,包括:
在具有一个或多个处理器以及存储用于由所述一个或多个处理器执行的指令的存储器的客户端设备处:
在与由服务器系统提供的社交网络服务相关联的应用中,向用户提供到与第三方服务提供商相关联的页面的链接,其中,所述第三方服务提供商与所述社交网络服务不同;
响应于对所述链接的用户选择,在所述应用内加载所述页面,其中,所述页面包括用于调用所述服务器系统的一个或多个应用编程接口(API)的脚本;
调用所述一个或多个API以从所述服务器系统获得与所述用户相关联的信息;
在所述应用内显示所述页面;以及
使用与所述用户相关联的所述信息以通过所述页面来与所述第三方服务提供商进行交易。
2.根据权利要求1所述的方法,其中:
所述信息包括所述社交网络服务中的所述用户的标识符;并且
使用所述信息以进行所述交易包括将所述标识符与所述交易相关联。
3.根据权利要求1所述的方法,其中:
所述信息包括所述社交网络服务中的所述用户的支付信息;并且
使用所述信息以进行所述交易包括使用所述支付信息来支付所述交易。
4.根据权利要求1所述的方法,其中,显示所述页面包括至少部分地基于所述信息显示对所述交易的推荐。
5.根据权利要求4所述的方法,其中:
所述信息包括如所述客户端设备确定的所述用户的位置;并且
所述推荐至少部分地基于所述位置。
6.根据权利要求4所述的方法,其中:
所述信息包括所述社交网络服务中的所述用户的活动的历史;并且
所述推荐至少部分地基于所述历史。
7.根据权利要求4所述的方法,其中:
所述信息包括所述社交网络服务中的所述用户的联系人的活动的历史;并且所述推荐至少部分地基于所述历史。
8.根据权利要求1所述的方法,其中,所述信息包括由所述客户端设备的硬件资源获得的信息。
9.根据权利要求1所述的方法,其中,提供到所述页面的所述链接包括在所述应用内显示所述第三方服务提供商的广告,其中,所述广告链接至所述页面。
10.根据权利要求1所述的方法,还包括:
通过所述应用接收指定搜索查询的用户输入;
将所述搜索查询提供至所述服务器系统;
从所述服务器系统接收所述搜索查询的结果,所述结果包括对链接至所述页面的所述第三方服务提供商的引用;以及
在所述应用内显示搜索结果;
其中,提供到所述页面的所述链接包括在所述搜索结果内显示对所述第三方服务提供商的所述引用。
11.根据权利要求1所述的方法,其中,提供到所述页面的所述链接包括在所述应用内显示关于所述第三方服务提供商的通知,其中,所述通知链接至所述页面。
12.根据权利要求1所述的方法,其中,提供到所述页面的所述链接包括在所述应用内显示由所述用户先前保存的社交媒体帖子,其中,所述社交媒体帖子链接至所述页面。
13.根据权利要求1所述的方法,其中,提供到所述页面的所述链接包括在所述应用的私人消息界面内显示来自所述社交网络服务的其他用户的消息,其中,所述消息链接至所述页面。
14.根据权利要求1所述的方法,还包括:
在进行所述交易之后,停止在所述应用内显示所述页面;
在停止显示所述页面之后,接收关于所述交易的通知,其中,所述通知从所述服务器系统推送至所述客户端设备;以及
在所述应用内显示所述通知。
15.一种方法,包括:
在社交网络服务的具有一个或多个处理器以及存储用于由所述一个或多个处理器执行的指令的存储器的服务器系统处:
从客户端设备接收对与第三方服务提供商相关联的页面的请求,其中,所述第三方服务提供商与所述社交网络服务不同;
将所述页面提供至所述客户端设备,其中,所述页面包括用于调用所述服务器系统的一个或多个应用编程接口(API)的脚本;
从所述脚本接收对所述一个或多个API中的相应API的一个或多个调用;以及响应于所述一个或多个调用,将来自所述社交网络服务的与所述用户相关联的信息提供至所述客户端设备以在所述页面中使用,其中,所述页面至少部分地基于所述信息使得所述用户能够进行与所述第三方服务提供商的交易。
16.根据权利要求15所述的方法,其中,将所述页面提供至所述客户端设备包括:
检索所述页面;
将所述脚本注入到检索到的所述页面中;以及
将具有注入的所述脚本的检索到的所述页面发送至所述客户端设备。
17.根据权利要求16所述的方法,检索所述页面包括:
从与所述第三方服务相关联的第三方服务器获得所述页面;
将所述页面缓存在所述服务器系统处的存储器中;以及
从所述服务器系统处的所述存储器中检索缓存的所述页面。
18.根据权利要求15所述的方法,其中,所述信息包括所述社交网络服务中的所述用户的标识符、所述社交网络服务中的所述用户的支付信息、所述社交网络服务中的所述用户的活动的历史、所述社交网络服务中的所述用户的联系人的活动的历史和来自所述客户端设备的硬件资源的信息中的至少一项。
19.根据权利要求15所述的方法,其中,所述页面包括至少部分地基于所述信息的对所述交易的推荐。
20.一种非暂时性计算机可读存储介质,存储用于由用于社交网络服务的服务器系统的一个或多个处理器执行的一个或多个程序,所述一个或多个程序包括用于以下各项的指令:
从客户端设备接收对与第三方服务提供商相关联的页面的请求,其中,所述第三方服务提供商与所述社交网络服务不同;
将所述页面提供至所述客户端设备,其中,所述页面包括用于调用所述服务器系统的一个或多个应用编程接口(API)的脚本;
从所述脚本接收对所述一个或多个API中的相应API的一个或多个调用;以及响应于所述一个或多个调用,将来自所述社交网络服务的与所述用户相关联的信息提供至所述客户端设备以在所述页面中使用,其中,所述页面至少部分地基于所述信息使得所述用户能够进行与所述第三方服务提供商的交易。
21.一种计算机实现的方法,包括:
在具有一个或多个处理器以及存储用于由所述一个或多个处理器执行的指令的存储器的客户端设备处:
在与由服务器系统提供的社交网络服务相关联的应用中,向用户提供到与第三方服务提供商相关联的页面的链接,其中,所述第三方服务提供商与所述社交网络服务不同;
响应于对所述链接的用户选择,在所述应用内加载所述页面,其中,所述页面包括用于调用所述服务器系统的一个或多个应用编程接口(API)的脚本;
调用所述一个或多个API以从所述服务器系统获得与所述用户相关联的信息;
在所述应用内显示所述页面;以及
使用与所述用户相关联的所述信息以通过所述页面来与所述第三方服务提供商进行交易。
22.根据权利要求21所述的方法,其中:
所述信息包括所述社交网络服务中的所述用户的标识符;并且
使用所述信息以进行所述交易包括将所述标识符与所述交易相关联;
和/或
所述信息包括所述社交网络服务中的所述用户的支付信息;并且
使用所述信息以进行所述交易包括使用所述支付信息来支付所述交易。
23.根据权利要求21或22所述的方法,其中,显示所述页面包括至少部分地基于所述信息显示对所述交易的推荐。
24.根据权利要求23所述的方法,其中:
所述信息包括如所述客户端设备确定的所述用户的位置;并且所述推荐至少部分地基于所述位置;
和/或
所述信息包括所述社交网络服务中的所述用户的活动的历史;并且所述推荐至少部分地基于所述历史;
和/或
所述信息包括所述社交网络服务中的所述用户的联系人的活动的历史;并且所述推荐至少部分地基于所述历史。
25.根据权利要求21至24中的一项或多于一项所述的方法,其中,所述信息包括由所述客户端设备的硬件资源获得的信息。
26.根据权利要求21至25中的一项或多于一项所述的方法,其中,提供到所述页面的所述链接包括在所述应用内显示所述第三方服务提供商的广告,其中,所述广告链接至所述页面。
27.根据权利要求21至26中的一项或多于一项所述的方法,还包括:
通过所述应用接收指定搜索查询的用户输入;
将所述搜索查询提供至所述服务器系统;
从所述服务器系统接收所述搜索查询的结果,所述结果包括对链接至所述页面的所述第三方服务提供商的引用;以及
在所述应用内显示搜索结果;
其中,提供到所述页面的所述链接包括在所述搜索结果内显示对所述第三方服务提供商的所述引用。
28.根据权利要求21至27中的一项或多于一项所述的方法,其中,提供到所述页面的所述链接包括以下各项中的至少一项:
在所述应用内显示关于所述第三方服务提供商的通知,其中,所述通知链接至所述页面;
在所述应用内显示由所述用户先前保存的社交媒体帖子,其中,所述社交媒体帖子链接至所述页面;以及
在所述应用的私人消息界面内显示来自所述社交网络服务的其他用户的消息,其中,所述消息链接至所述页面。
29.根据权利要求21至28中的一项或多于一项所述的方法,还包括:
在进行所述交易之后,停止在所述应用内显示所述页面;
在停止显示所述页面之后,接收关于所述交易的通知,其中,所述通知从所述服务器系统推送至所述客户端设备;以及
在所述应用内显示所述通知。
30.一种计算机实现的方法,包括:
在社交网络服务的具有一个或多个处理器以及存储用于由所述一个或多个处理器执行的指令的存储器的服务器系统处:
从客户端设备接收对与第三方服务提供商相关联的页面的请求,其中,所述第三方服务提供商与所述社交网络服务不同;
将所述页面提供至所述客户端设备,其中,所述页面包括用于调用所述服务器系统的一个或多个应用编程接口(API)的脚本;
从所述脚本接收对所述一个或多个API中的相应API的一个或多个调用;以及响应于所述一个或多个调用,将来自所述社交网络服务的与所述用户相关联的信息提供至所述客户端设备以在所述页面中使用,其中,所述页面至少部分地基于所述信息使得所述用户能够与所述第三方服务提供商进行交易。
31.根据权利要求30所述的方法,其中,将所述页面提供至所述客户端设备包括:
检索所述页面;
将所述脚本注入到检索到的所述页面中;以及
将具有注入的所述脚本的检索到的所述页面发送至所述客户端设备,
其中,检索所述页面任选地包括:
从与所述第三方服务相关联的第三方服务器获得所述页面;
将所述页面缓存在所述服务器系统处的存储器中;以及
从所述服务器系统处的所述存储器中检索缓存的所述页面。
32.根据权利要求30或31所述的方法,其中,所述信息包括所述社交网络服务中的所述用户的标识符、所述社交网络服务中的所述用户的支付信息、所述社交网络服务中的所述用户的活动的历史、所述社交网络服务中的所述用户的联系人的活动的历史和来自所述客户端设备的硬件资源的信息中的至少一项。
33.根据权利要求30至32中的一项或多于一项所述的方法,其中,所述页面包括至少部分地基于所述信息的对所述交易的推荐。
34.一种非暂时性计算机可读存储介质,存储用于由一个或多个处理器执行的一个或多个程序,所述一个或多个程序包括指令,当所述指令在所述一个或多个处理器上执行时:
在客户端系统上执行根据权利要求21至29中的一项或多于一项所述的方法,或者在用于社交网络服务的服务器系统上执行根据权利要求30至33中的一项或多于一项所述的方法。

说明书全文

用于在应用内访问第三方服务的方法和系统

技术领域

[0001] 这通常涉及访问在线服务,包括但不限于在与第三方服务提供商不同的服务提供商的应用内访问第三方服务提供商的服务。

背景技术

[0002] 随着移动设备的普及显著增加,在这些设备上对应用的使用和开发也是如此。然而,应用的发现仍然是限制使用或享受应用的人数的主要挑战。特别地,即使用户主动发现新的应用,除了创建账户或提供其他信息之外,用户通常还必须在能够使用应用之前执行许多动作,包括下载、安装和执行应用。发明内容
[0003] 因此,需要用于以简单且有效的方式访问第三方服务提供商的服务的方法、系统和界面。通过在与不同服务提供商相关联的应用中加载与第三方服务提供商相关联的页面,并利用由不同服务提供商先前收集的与用户相关联的信息,用户能够简单地通过加载的页面来与第三方服务提供商进行交易。这绕过了单独加载独立的第三方应用以便访问第三方服务或特征的需要(这一过程通常很麻烦并且阻碍用户利用可用的第三方服务)。有利地,来自用于访问第三方服务的所公开的方法、系统和界面的结果体验对于用户而言更加无缝且本地化。
[0004] 根据一些实施方式,一种方法在具有一个或多个处理器以及存储用于由一个或多个处理器执行的指令的存储器的客户端设备处执行。该方法包括在与由服务器系统提供的社交网络服务相关联的应用中向用户提供到与第三方服务提供商相关联的页面的链接。第三方服务提供商与社交网络服务不同。响应于对链接的用户选择,在应用内加载页面。页面包括用于调用服务器系统的一个或多个应用编程接口(API)的脚本。客户端设备调用一个或多个API以从服务器系统获得与用户相关联的信息。此外,客户端设备在应用内显示页面,并且使用与用户相关联的信息以通过页面来与第三方服务提供商进行交易。
[0005] 根据一些实施方式,客户端设备包括一个或多个处理器、存储器和一个或多个程序;一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行。一个或多个程序包括用于执行上述用于客户端设备的方法的操作的指令。根据一些实施方式,一种非暂时性计算机可读存储介质在其中存储有指令,当由客户端设备执行时,这些指令使得客户端设备执行上述方法的操作。
[0006] 根据一些实施方式,一种方法在社交网络服务的服务器系统处执行。服务器系统具有一个或多个处理器以及存储用于由一个或多个处理器执行的指令的存储器。该方法包括从客户端设备接收对与第三方服务提供商相关联的页面的请求,其中,第三方服务提供商与社交网络服务不同。页面被提供至客户端设备。页面包括用于调用服务器系统的一个或多个应用编程接口(API)的脚本。从脚本接收对一个或多个API中的相应API的一个或多个调用。响应于一个或多个调用,将来自社交网络服务的与用户相关联的信息提供至客户端设备以在页面中使用。页面至少部分地基于信息使得用户能够与第三方服务提供商进行交易。
[0007] 根据一些实施方式,服务器系统包括一个或多个处理器、存储器和一个或多个程序;一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行。一个或多个程序包括用于执行上述服务器侧方法的操作的指令。根据一些实施方式,一种非暂时性计算机可读存储介质在其中存储有指令,当由服务器系统执行时,这些指令使得服务器系统执行上述服务器侧方法的操作。
[0008] 因此,为客户端设备和服务器系统提供了更有效和高效的方法,以用于向用户提供对第三方服务的访问,而不必使用单独的第三方应用。
[0009] 所公开的一些实施方式涉及一种方法和存储介质,其中,一种权利要求类别中提到的任何特征(例如,方法)可以在另一种权利要求类别中被要求保护,并且也可以在系统和计算机程序产品权利要求中被要求保护。在所附权利要求中的相关性或返回引用仅出于形式上的原因来选择。然而,从对任何在前权利要求的有意返回引用所得的任何主题(尤其是多个相关性)也可以被要求保护,以便权利要求及其特征的任何组合被公开并可以要求保护而与在所附权利要求中选择的相关性无关。可以要求的主题不仅包括所附权利要求中阐述的特征的组合,而且还包括权利要求中的特征的任何其他组合,其中,权利要求中提及的每个特征可以与权利要求中的任何其他特征或其他特征的组合相结合。此外,可以在单独的权利要求中和/或在与本文所描述或描绘的任何实施方式或特征或者与所附权利要求的任何特征的任何组合中要求本文描述或描绘的任何实施方式和特征。
[0010] 在一些实施方式中,可以提供一种计算机实现的方法,该方法包括:
[0011] 在具有一个或多个处理器以及存储用于由一个或多个处理器执行的指令的存储器的客户端设备处:
[0012] 在由服务器系统提供的尤其是在客户端设备上运行或安装在客户端设备上并与社交网络服务(尤其是社交网络服务系统)相关联的应用中,向用户(尤其是向应用的用户界面)提供到与第三方服务提供商(尤其是第三方服务提供商系统)相关联的页面(尤其是网页)的链接,其中,第三方服务提供商与社交网络服务不同;
[0013] 响应于对链接的用户选择(尤其是响应于接收到用户选择),在应用内加载页面,其中,页面包括用于调用服务器系统的一个或多个应用编程接口(API)的脚本;
[0014] 调用一个或多个API以从服务器系统获得与用户相关联的信息;
[0015] 在应用内显示页面;以及
[0016] 使用与用户相关联的信息以通过页面来与第三方服务提供商进行交易。
[0017] 在一些实施方式中,信息可以包括社交网络服务中的用户的标识符;并且使用信息以进行交易可以包括将标识符与交易相关联。
[0018] 在一些实施方式中,信息可以包括社交网络服务中的用户的支付信息;并且使用信息以进行交易可以包括使用支付信息来支付交易。
[0019] 在一些实施方式中,显示页面可以包括至少部分地基于信息显示对交易的推荐(尤其是可选择的推荐)。
[0020] 在一些实施方式中,信息可以包括如客户端设备确定的用户的位置;并且推荐可以至少部分地基于位置。
[0021] 在一些实施方式中,信息可以包括社交网络服务中的用户的活动的历史;并且推荐可以至少部分地基于该历史。
[0022] 在一些实施方式中,信息可以包括社交网络服务中的用户的联系人的活动的历史;并且推荐可以至少部分地基于该历史。
[0023] 在一些实施方式中,信息可以包括由客户端设备的硬件资源获得的信息。
[0024] 在一些实施方式中,提供到页面的链接可以包括在应用内显示第三方服务提供商的广告(尤其是广告内容项),其中,广告(尤其是广告内容项)可以链接至页面。
[0025] 在一些实施方式中,该方法还可以包括:
[0026] 通过应用接收指定搜索查询的用户输入;
[0027] 将搜索查询提供至服务器系统;
[0028] 从服务器系统接收搜索查询的结果,该结果包括对链接至页面的第三方服务提供商的引用;以及
[0029] 在应用内显示搜索结果;
[0030] 其中,提供到页面的链接(尤其是可选择的链接)包括在搜索结果内显示对第三方服务提供商的引用。
[0031] 在一些实施方式中,提供到页面的链接可以包括以下各项中的至少一项:
[0032] -在应用内显示关于第三方服务提供商的通知,其中,通知链接至页面;
[0033] -在应用内显示用户先前保存的社交媒体帖子,其中,社交媒体帖子链接至页面;以及
[0034] -在应用的私人消息界面内显示来自社交网络服务的其他用户的消息,其中,消息链接至页面。
[0035] 在一些实施方式中,该方法还可以包括:
[0036] 在进行交易之后,停止在应用内显示页面;
[0037] 在停止显示页面之后,接收关于交易的通知,其中,通知从服务器系统推送至客户端设备;以及
[0038] 在应用内显示通知。
[0039] 在一些实施方式中,可以提供一种计算机实现的方法,该方法包括:
[0040] 在社交网络服务的服务器系统(尤其是社交网络服务系统)处,具有一个或多个处理器以及存储用于由一个或多个处理器执行的指令的存储器的服务器系统:
[0041] 从客户端设备接收与第三方服务提供商(尤其是第三方服务提供商系统)相关联的页面(尤其是网页)的请求,其中,第三方服务提供商与社交网络服务不同;
[0042] 将页面提供至客户端设备,其中,页面包括用于调用服务器系统的一个或多个应用编程接口(API)的脚本;
[0043] 从脚本接收对一个或多个API中的相应API的一个或多个调用;以及
[0044] 响应于一个或多个调用,将来自社交网络服务的与用户相关联的信息提供至客户端设备以在页面中使用,其中,页面至少部分地基于信息使得用户能够与第三方服务提供商进行交易。
[0045] 在服务器系统处执行的方法的一些实施方式中,将页面提供至客户端设备可以包括:
[0046] 检索页面;
[0047] 将脚本注入到检索到的页面中;以及
[0048] 将具有注入的脚本的检索到的页面发送至客户端设备,
[0049] 其中,检索页面可以任选地包括:
[0050] 从与第三方服务相关联的第三方服务器获得页面;
[0051] 将页面缓存在服务器系统处的存储器中;以及
[0052] 从服务器系统处的存储器中检索缓存的页面。
[0053] 在服务器系统处执行的方法的一些实施方式中,信息可以包括社交网络服务中的用户的标识符、社交网络服务中的用户的支付信息、社交网络服务中的用户的活动的历史、社交网络服务中的用户的联系人的活动的历史和来自客户端设备的硬件资源的信息中的至少一项。
[0054] 在服务器系统处执行的方法的一些实施方式中,页面可以包括至少部分地基于信息的对交易的推荐。
[0055] 在一些实施方式中,可以提供一种非暂时性计算机可读存储介质,存储用于由一个或多个处理器执行的一个或多个程序,一个或多个程序包括指令,当指令在一个或多个处理器上执行时:
[0056] 在客户端系统上执行根据如本文中所述的一个或多个实施方式的方法,或者[0057] 在用于社交网络服务的服务器系统上执行根据如本文中所述的一个或多个实施方式的方法。附图说明
[0058] 为了更好地理解描述的各个实施方式,应结合以下附图参考下面的具体实施方式。贯穿附图和描述,相同的参考数字指代对应的部分。
[0059] 图1是示出根据一些实施方式的社交网络的示例性网络架构的框图
[0060] 图2是示出根据一些实施方式的示例性社交网络系统的框图。
[0061] 图3是示出根据一些实施方式的示例性客户端设备的框图。
[0062] 图4A至图4J示出根据一些实施方式的客户端设备上的示例性图形用户界面(GUI),用于在与第三方服务提供商不同的服务提供商的应用内访问第三方服务提供商的服务。
[0063] 图5是示出根据一些实施方式的在不同服务提供商的应用内访问第三方服务提供商的服务的方法的流程图

具体实施方式

[0064] 现在将参考实施方式,其示例在附图中示出。在以下描述中,阐述了许多具体细节以便提供对描述的各个实施方式的理解。然而,对于本领域普通技术人员显而易见的是,可以在没有这些具体细节的情况下实践描述的各个实施方式。在其他情况下,没有详细描述众所周知的方法、过程、组件、电路和网络,以免不必要地模糊实施方式的各方面。
[0065] 还应理解,尽管在某些情况下,术语第一、第二等在本文中用于描述各种元件,但这些元件不应受这些术语的限制。这些术语仅用于将一个元件与另一个元件区分开。例如,在不背离描述的各个实施方式的范围的情况下,第一应用编程接口可以被称为第二应用编程接口,并且类似地,第二应用编程接口可以被称为第一应用编程接口。第一应用编程接口和第二应用编程接口均为应用编程接口,但它们不是同一应用编程接口。
[0066] 在本文中描述的各种实施方式的描述中使用的术语仅用于描述特定实施方式的目的,并非旨在进行限制。如在描述的各个实施方式和所附权利要求的描述中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文另有明确指示。还应理解,本文中所使用的术语“和/或”是指并包含一个或多个所列相关联项目的任何和所有可能的组合。将进一步理解,当在本说明书中使用时,术语“包含”、“含有”、“包括”和/或“具有”指定了陈述的特征、整体、步骤、操作、元件和/或组件的存在,但并不排除存在或附加有一个或多个其他特征、整体、步骤、操作、元件、组件和/或其组合。
[0067] 如本文中所使用的,取决于上下文,术语“如果”任选地被解释为意指“当”或“一旦”或“响应于确定”或“响应于检测到”或“根据确定”。类似地,取决于上下文,短语“如果确定”或“如果检测到[陈述的条件或事件]”任选地被解释为表示“一旦确定”或“响应于确定”或“一旦检测到[陈述的条件或事件]”或“响应于检测到[陈述的条件或事件]”或“根据确定检测到[陈述的条件或事件]”。
[0068] 如本文中所使用的,术语“示例性”在“用作示例、实例或说明”的意义上使用,而不是在“代表同类中最好的”的意义上使用。
[0069] 图1是示出根据一些实施方式的社交网络的示例性网络架构100的框图。网络架构100包括通过一个或多个网络106(例如,互联网、蜂窝电话网络、移动数据网络、其他广域网、局域网、城域网等)可通信地连接至电子社交网络系统108(例如,服务器系统)的多个客户端设备(也被称为“客户端系统”、“客户端计算机”或“客户端”)104-1、104-2、……、104-n。在一些实施方式中,一个或多个网络106包括公共通信网络(例如,互联网和/或蜂窝数据网络)、专用通信网络(例如,专用LAN或租用线路)、或这些通信网络的组合。
[0070] 在一些实施方式中,客户端设备104-1、104-2、……、104-n是计算设备,诸如智能手表个人数字助理、便携式媒体播放器、智能电话、平板电脑、2D游戏设备、3D(例如,虚拟现实)游戏设备、膝上型计算机、台式计算机、其中嵌入或耦接有一个或多个处理器的电视、车载信息系统(例如,提供导航、娱乐和/或其他信息的车载计算机系统)、和/或可以用于与社交网络系统108通信的其他适当的计算设备。在一些实施方式中,社交网络系统108是单个计算设备(诸如计算机服务器),而在其他实施方式中,社交网络系统108是通过多个计算设备一起工作以执行服务器系统的动作(例如,计算)来实现的。
[0071] 用户102-1、102-2、……、102-n使用客户端设备104-1、104-2、……、104-n来访问社交网络系统108并参与由社交网络系统108提供的对应的社交网络服务。例如,客户端设备104-1、104-2、……、104-n中的一个或多个客户端设备执行特定于社交网络服务的软件应用(例如,在智能电话或平板电脑上运行的社交网络“app”,诸如在iPhone、Android或Windows智能手机或平板电脑上运行的Facebook社交网络应用)。在一些实施方式中,社交网络系统108是用于社交网络服务提供商的服务器系统,其为第三方提供商提供到至少一些服务和/或特征的访问。与客户端设备104-1、104-2、……、104-n交互的用户可以通过提供和/或消费(例如,发布、书写、查看、公布、广播、推广、推荐、分享、评论、喜欢)数字内容,诸如文本评论(例如,状态、更新、帖子、公告、回复、位置“签到”、私人/群组消息)、照片、视频、音频文件、链接(例如,到网页、文章、与第三方服务提供商相关联的页面等)、文档、广告和/或其他电子内容,来参与由社交网络系统108提供的社交网络服务。
[0072] 社交网络服务的用户还可以注释由社交网络服务的其他用户发布的信息(例如,支持或“喜欢”另一用户的发布、评论另一用户或公布源的帖子、和/或提供其他类型的用户反馈)。在一些实施方式中,社交网络系统108外部的系统和/或服务可以代表用户发布信息。例如,用户可以将电影的评论发布到电影评论网站,并且在具有适当许可的情况下,网站可以代表用户将评论交叉发布到社交网络系统108。
[0073] 结合使用或参与社交网络服务,可以通过社交网络服务的各种特征或入口点来访问用户可以消费、提供和/或以其他方式与之交互的数字内容。例如,数字内容可以经由用于由社交网络服务维护和在社交网络服务内维护的特定类型的数字内容(例如,用于访问私人消息、访问保存的社交网络内容、搜索社交网络内容等的界面)的一个或多个页面、馈送(例如,用于突出显示数字内容的新/更新的新闻馈送、用户墙、时间线、通知部分等)、应用和/或其他界面来可访问和呈现。如全文所述,可以以各种方式(例如,在馈送中的用户帖子、通知、用户之间的私人消息等内)链接至与第三方提供商相关联的页面。
[0074] 在一些实施方式中,在具有适当许可的情况下,在移动客户端设备上执行的软件应用可以从客户端设备的硬件资源/组件(例如,图像/视频捕获设备324、位置检测设备322、麦克传感器等,图3)获得信息。例如,可以由客户端设备上的软件应用(例如,社交网络客户端模340,图3)访问全球定位系统(GPS)或其他地理定位能(例如,Wi-Fi或混合定位系统),以确定用户的位置并使用用户的位置(例如,“在家”、“在工作中”或“在旧金山加利福尼亚州”)来更新社交网络系统108,和/或利用由用户的位置导出的信息和/或基于用户的位置的信息来更新社交网络系统108。与客户端设备104-1、104-2、……、104-n交互的用户还可以使用由社交网络系统108提供的社交网络服务来定义用户群组。与客户端设备104-1、104-2、……、104-n交互的用户还可以使用由社交网络系统108提供的社交网络服务来彼此通信和协作。
[0075] 在一些实施方式中,网络架构100还包括第三方服务器110-1、110-2、……、110-m。在一些实现方式中,第三方服务器110与向网络的用户(例如,社交网络系统108的用户,图
1)提供服务和/或特征的第三方服务提供商相关联。用户可以通过直接地(例如,经由网络
106)和/或间接地(例如,经由社交网络系统108)与第三方服务器110通信和交换数据来与第三方服务提供商进行交易(例如,金融交易)。
[0076] 例如,在一些实施方式中,给定的第三方服务器110用于直接地或与社交网络系统108结合地托管向客户端设备104提供页面的第三方网站。在一些实施方式中,给定的第三方服务器110用于直接地或与社交网络系统108结合地托管由客户端设备104使用的第三方应用。
[0077] 在一些实施方式中,用户可以通过在与第三方服务提供商不同的服务提供商的应用内加载与第三方服务提供商相关联的页面来访问第三方服务(例如,通过选择在社交网络客户端模块340内提供的链接来访问第三方服务的页面)。页面是一种类型的数字文档,其可以包括其他网络文档的一些共同元素(例如,文档包括标记语言,诸如超文本标记语言(HTML)、可扩展标记语言(XML)、Java等)。
[0078] 页面还可以包括用于调用用于社交网络服务的服务器系统的一个或多个应用编程接口(API)(例如,社交网络系统108的一个或多个API,图1)的脚本(例如,一个或多个不同的脚本)(例如,由社交网络系统108插入到页面中的JavaScript),以获得用户信息(例如,与使用社交网络服务相关地收集和存储的位置信息、支付凭证、配置文件信息等)。可以在用户与加载的页面交互期间的某个时间(例如,当加载页面时、响应于在加载的页面内检测到的交互等)执行脚本。
[0079] 脚本允许在用户与第三方服务提供商之间进行的交易中利用由社交网络服务维护的用户信息。这些实现方式提供了对经由独立的第三方应用(例如,与社交网络客户端模块340不同的其他客户端应用模块342,图3)访问第三方服务和特征的更有效、集成且无缝的替代方案,同时任选地利用与网络中的其他服务提供商(例如,由社交网络系统108提供的社交网络服务)相关地维护的用户信息。
[0080] 示例性第三方服务(例如,由第三方服务提供商提供的)包括但不限于用于以下各项或与以下各项相关的服务、产品和/或应用:书籍、商业、通信、竞赛、电子商务(例如,用于从在线零售商处购买商品或服务的页面)、教育、娱乐、时尚、金融、食品和饮料、游戏、健康和健身、生活方式、本地信息(例如,用于实时查看公共交通时刻表的页面)、电影(例如,用于电影评论、购买电影票等的页面)、电视、音乐和音频、新闻、照片、视频、生产力、参考资料、安全性、购物、体育、旅行、公用事业等。在一些实施方式中,给定的第三方服务器110用于直接地或与社交网络系统108结合地托管由客户端设备104使用的企业系统。在一些实施方式中,给定的第三方服务器110用于提供第三方内容(例如,新闻文章、评论、消息馈送等)。
[0081] 在一些实施方式中,给定的第三方服务器110是单个计算设备(诸如,服务器计算机),而在其他实施方式中,给定的第三方服务器110是通过多个计算设备一起工作以执行服务器系统的动作(例如,云计算)来实现的。
[0082] 图2是示出根据一些实施方式的示例性社交网络系统108的框图。社交网络系统108典型地包括一个或多个处理单元(处理器或核)202、一个或多个网络或其他通信接口
204、存储器206、以及用于使这些组件互连的一个或多个通信总线208。通信总线208任选地包括使系统组件互连并控制系统组件之间的通信的电路(有时称为芯片组)。社交网络系统
108任选地包括用户界面(未示出)。如果提供的话,用户界面可以包括显示设备,并且任选地包括诸如键盘鼠标、触控板和/或输入按钮的输入端。可选地或另外地,显示设备包括触敏表面,在这种情况下,显示器是触敏显示器。
[0083] 存储器206包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、或其他随机存取固态存储器设备;并且可以包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备和/或其他非易失性固态存储设备。存储器206可以任选地包括远离处理器202定位的一个或多个存储设备。存储器206(或者可选地,存储器206内的非易失性存储器设备)包括非暂时性计算机可读存储介质。在一些实施方式中,存储器206或存储器206的计算机可读存储介质存储以下程序、模块和数据结构、或其子集或超集:
[0084] ·操作系统210,包括用于处理各种基本系统服务和用于执行硬件相关任务的过程;
[0085] ·网络通信模块212,用于经由一个或多个通信网络接口204(有线或无线)和一个或多个通信网络(例如,一个或多个网络106)将社交网络系统108连接至其他计算机;
[0086] ·社交网络数据库214,用于存储与社交网络服务相关联的数据,诸如:
[0087] o实体信息216,诸如用户信息218;
[0088] o连接信息220;以及
[0089] o内容222,诸如:
[0090] 用户内容224;和/或
[0091] 新闻文章226;
[0092] ·社交网络服务器模块228,用于提供社交网络服务和相关的特征(例如,结合客户端设备104上的社交网络客户端模块340,图3),其包括:
[0093] o登录模块230,用于使客户端104处的用户102登录到社交网络系统108中;
[0094] o内容馈送管理器232,用于提供要发送给客户端104以供显示的内容,其包括:
[0095] 内容生成器模块234,用于将对象添加到社交网络数据库214,诸如图像、视频、音频文件、评论、状态消息、链接、应用和/或其他实体信息216、连接信息220或内容222;以及[0096] 内容选择器模块236,用于选择要发送给客户端104以供显示的信息/内容;以及[0097] o第三方服务模块238,用于使用用于社交网络服务(例如,由社交网络系统108提供)的应用(例如,社交网络模块340,图3)向用户提供对第三方服务提供商的服务的访问,其包括:
[0098] 页面模块240,用于检索与第三方服务提供商(例如,来自第三方服务器110)相关联的请求页面、将脚本注入页面、和/或提供页面(例如,向客户端设备104);
[0099] 应用编程接口(API)242,用于接收API调用(例如,从页面中的脚本)以获得与(例如,社交网络服务的)用户相关联的信息,并且作为响应,(例如,从社交网络数据库214)检索并(例如,向客户端设备104)提供所请求的信息;以及
[0100] 可选的页面缓存器244,存储与第三方服务提供商相关联的页面(例如,从第三方服务器110获得);以及
[0101] ·搜索模块246,用于使社交网络系统的用户能够搜索社交网络中的内容和其他用户。
[0102] 社交网络数据库214将与社交网络相关联的数据存储在一种或多种类型的数据库中,诸如图形、维度、平面、分层、网络、面向对象、关系和/或XML数据库。
[0103] 在一些实施方式中,社交网络数据库214包括图形数据库,其中实体信息216表示为图形数据库中的节点,并且连接信息220表示为图形数据库中的边线。图形数据库包括多个节点,以及定义对应节点之间的连接的多个边线。在一些实施方式中,节点和/或边线本身是数据对象,数据对象包括其对应实体的标识符、属性和信息。在一些实施方式中,节点还包括对其他对象、数据结构或资源的指针或引用,用于结合对应于客户端104处的相应节点的页面的渲染来呈现内容。
[0104] 实体信息216包括用户信息218,诸如用户资料、登录信息、支付凭证(例如,用于通过社交网络服务进行金融交易的信用卡或借记卡信息、行信息等)、隐私和其他偏好、传记数据等。在一些实施方式中,对于给定用户,用户信息218包括用户的姓名、资料图片、联系信息、出生日期、性别、婚姻状况、家庭状况、就业、教育背景、偏好、兴趣和/或其他人口统计信息。
[0105] 在一些实施方式中,实体信息216包括关于物理位置(例如,餐馆、剧院、地标、城市、州或国家)、不动产或知识产权(例如,雕塑、绘画、电影、游戏、歌曲、理念/概念、照片或书面作品)、商业、人群和/或商业群组的信息。在一些实施方式中,实体信息216包括关于资源的信息,诸如音频文件、视频文件、数字照片、文本文件、结构化文档(例如,网页)或应用。在一些实施方式中,资源位于社交网络系统108中(例如,在内容222中)或位于外部服务器(诸如第三方服务器110)上。
[0106] 在一些实施方式中,连接信息220包括关于社交网络数据库214中的实体之间的关系的信息。在一些实施方式中,连接信息220包括关于连接图形数据库中的节点对的边线的信息。在一些实施方式中,连接一对节点的边线表示该对节点之间的关系。
[0107] 在一些实施方式中,边线包括或表示对应于一对节点之间的关系的一个或多个数据对象或属性。例如,当第一用户指示第二用户是第一用户的“朋友”时,社交网络系统108向第二用户发送“朋友请求”。如果第二用户确认“朋友请求”,则社交网络系统108在图形数据库中创建并存储连接第一用户的用户节点和第二用户的用户节点的边线,作为指示第一用户和第二用户是朋友的连接信息220。在一些实施方式中,连接信息220表示朋友关系、家庭关系、商业或雇佣关系、粉丝关系、关注者关系、访客关系、订户关系、上级/下级关系、互惠关系、非互惠关系、另一种合适的关系、或两种或多种此类关系。
[0108] 在一些实施方式中,用户节点与另一实体节点之间的边线表示关于由用户节点的用户朝向另一实体节点执行的特定动作或活动的连接信息。例如,用户可以“喜欢”或已“参与”、“播放”、“收听”、“烹饪”、“工作在”或“观看”另一节点处的实体。社交网络服务中对应于另一节点处的实体的页面可以包括例如可选择的“喜欢”、“签到”或“添加到收藏夹”图标。在用户点击这些图标之一之后,社交网络系统108可以响应于对应的用户动作来创建“喜欢”边线、“签到”边线或“收藏夹”边线。作为另一示例,用户可以使用特定应用(例如,在线音乐应用)来收听特定歌曲。在这种情况下,社交网络系统108可以相应地在对应于用户的用户节点和对应于歌曲和应用的实体节点之间创建“收听”边线和“使用”边线,以指示用户收听了歌曲并使用了应用。另外,社交网络系统108可以在对应于歌曲和应用的实体节点之间创建“播放”边线,以指示特定应用播放了特定歌曲。
[0109] 在一些实施方式中,内容222包括文本(例如,ASCII、SGML、HTML)、图像(例如,jpeg、tif和gif)、图形(例如,基于矢量或位图)、音频、视频(例如,mpeg)、其他多媒体和/或其组合。在一些实施方式中,内容222包括可执行代码(例如,用于API调用的脚本)、播客、链接等。
[0110] 在一些实施方式中,社交网络服务器模块228包括网络或超文本传输协议(HTTP)服务器、文件传输协议(FTP)服务器、以及使用公共网关接口(CGI)脚本实现的网页和应用、PHP超文本预处理器(PHP)、动态服务器网页(ASP)、超文本标记语言(HTML)、可扩展标记语言(XML)、Java、JavaScript、异步JavaScript和XML(AJAX)、XHP、Javelin、无线通用资源文件(WURFL)等。
[0111] 在一些实现方式中,第三方服务器110(图1)包括如上在图2中所述的用于社交网络系统108的相同组件、模块和子模块中的一些或全部。
[0112] 图3是示出根据一些实施方式的示例性客户端设备104的框图。客户端设备104典型地包括一个或多个处理单元(处理器或核)302、一个或多个网络或其他通信接口304、存储器306、以及用于使这些组件互连的一个或多个通信总线308。通信总线308任选地包括使系统组件互连并控制系统组件之间的通信的电路(有时称为芯片组)。客户端设备104包括用户界面310。用户界面310典型地包括显示设备312。在一些实施方式中,客户端设备104包括诸如键盘、鼠标和/或其他输入按钮316的输入端。可选地或另外地,在一些实施方式中,显示设备312包括触敏表面314,在这种情况下,显示设备312是触敏显示器。在一些实施方式中,触敏表面314被配置为检测各种滑动手势(例如,垂直和/或平方向上的连续手势)和/或其他手势(例如,单击/双击)。在具有触敏显示器312的客户端设备中,物理键盘是可选的(例如,当需要键盘输入时可以显示软键盘)。用户界面310还包括音频输出设备318,诸如扬声器或连接至扬声器、机或头戴式耳机的音频输出连接。此外,一些客户端设备104使用麦克风和语音识别来补充或代替键盘。任选地,客户端设备104包括音频输入设备320(例如,麦克风)以捕获音频(例如,来自用户的语音)。任选地,客户端设备104包括用于确定客户端设备104的位置的位置检测设备322,诸如GPS(全球定位卫星)或其他地理位置接收器。客户端设备104还任选地包括图像/视频捕获设备324,诸如相机或网络摄像头
[0113] 在一些实施方式中,客户端设备104包括一个或多个可选传感器323(例如,陀螺仪加速计),用于检测客户端设备的运动和/或方位的变化。在一些实施方式中,检测到的客户端设备104的运动和/或方位(例如,与客户端设备的用户产生的用户输入相对应的运动/方位变化)被用于操纵客户端设备104上显示的界面(或者界面内的内容)。
[0114] 存储器306包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、或其他随机存取固态存储器设备;并且可以包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备或其他非易失性固态存储设备。存储器306可以任选地包括远离处理器302定位的一个或多个存储设备。存储器306(或者可选地,存储器306内的非易失性存储器设备)包括非暂时性计算机可读存储介质。在一些实施方式中,存储器306或存储器306的计算机可读存储介质存储以下程序、模块和数据结构、或其子集或超集:
[0115] ·操作系统326,包括用于处理各种基本系统服务和用于执行硬件相关任务的过程;
[0116] ·网络通信模块328,用于经由一个或多个通信网络接口304(有线或无线)和一个或多个通信网络(例如互联网、蜂窝电话网络、移动数据网络、其他广域网、局域网、城域网等)将客户端设备104连接至其他计算机;
[0117] ·图像/视频捕获模块330(例如,相机模块),用于处理由图像/视频捕获设备324捕获的相应图像或视频,其中可以将相应的图像或视频(例如,通过客户端应用模块336)发送或流传输到社交网络系统108;
[0118] ·音频输入模块332(例如,麦克风模块),用于处理由音频输入设备320捕获的音频,其中可以将相应的音频(例如,通过客户端应用模块336)发送或流传输到社交网络系统108;
[0119] ·位置检测模块334(例如,GPS、Wi-Fi或混合定位模块),用于确定客户端设备104的位置(例如,使用位置检测设备322)并提供该位置信息以用于各种应用(例如,社交网络客户端模块340);以及
[0120] ·一个或多个客户端应用模块336,包括以下模块(或指令集)、或其子集或超集:
[0121] o网络浏览器模块338(例如,Microsoft的Internet Explorer、Mozilla的Firefox、Apple的Safari、或Google的Chrome),用于访问、查看和与网站交互;
[0122] o社交网络模块340,用于向社交网络服务(例如,社交网络系统108提供的社交网络服务)和相关特征提供界面,并用于加载(例如,在社交网络模块340的界面内)与第三方服务提供商相关联的页面(例如,以与第三方服务提供商进行交易);和/或
[0123] o可选的客户端应用模块342,诸如用于文字处理、日历、地图、天气、股票、计时、虚拟数字助理、呈现、数字运算(电子表格)、绘图、即时消息、电子邮件、电话、视频会议、照片管理、视频管理、数字音乐播放器、数字视频播放器、2D游戏、3D(例如,虚拟现实)游戏、电子书阅读器和/或锻炼支持的应用。
[0124] 以上标识的模块和应用中的每一者对应于用于执行如上所述和/或本申请中描述的方法(例如,本文中描述的计算机实现的方法和其他信息处理方法)中的一个或多个功能的一组可执行指令。这些模块(即,指令集)不需要实现为单独的软件程序、过程或模块,并且因此这些模块的各种子集任选地在各种实施方式中组合或以其他方式重新布置。在一些实施方式中,存储器206和/或306存储上面标识的模块和数据结构的子集。此外,存储器206和/或306任选地存储上面未描述的附加模块和数据结构。
[0125] 现在将注意力转向可以在客户端设备(例如,图3中的客户端设备104)上实现的图形用户界面(“GUI”)和相关联的过程的实施方式。
[0126] 图4A至图4J示出根据一些实施方式的客户端设备104上的示例性GUI,用于访问与第三方服务提供商不同的服务提供商(例如,社交网络系统108的提供商,图1)的应用内的第三方服务提供商的服务。例如,图4A至图4J中所示的GUI可以由社交网络服务的应用(例如,社交网络模块340,图3)提供。这些图中的GUI用于说明以下描述的过程,包括方法500(图5)。虽然图4A至图4J示出了GUI的示例,但是在其他实施方式中,一个或多个GUI以与图4A至图4J的实施方式不同的布置显示用户界面元素。
[0127] 图4A示出了用于显示社交网络服务(例如,由服务器系统社交网络系统108(图1)提供)的内容并与之交互的GUI。社交网络内容(例如,文本评论、媒体等)是针对社交网络服务的特定用户显示(例如,在馈送,用户时间线等中)的。在一些情况下,社交网络内容包括到与第三方服务提供商(例如,第三方服务器110,图1)相关联的页面的链接。贯穿图4A至图4J和方法500(图5),描述了可以通过其来选择链接和访问相关联页面的社交网络服务的各个方面。
[0128] 图4A中的GUI显示社交网络内容的馈送。馈送包括用户“约翰·多伊”的分享到与第三方服务提供商相关联的页面的链接402的帖子400。对链接402的用户选择(例如,使用触摸输入)加载对应的页面,允许用户访问第三方服务提供商的服务。在该示例中,第三方服务提供商是在线电影票券商家“票券商店”,并且对链接402的选择加载使用户能够购买电影“海底总动员2(Finding Dory)”的票券的对应页面(未示出)。可选标记404可以叠加在链接402上以表示链接是与第三方服务提供商相关联的页面,并且选择该链接以在执行的应用内加载页面(例如,为社交网络服务提供接口的社交网络客户端模块340)。因此可以在不切换到另一个应用的情况下加载页面。
[0129] 图4A中的GUI还显示用于允许用户搜索社交网络或其他内容的搜索框406。在该示例中,在搜索框406中检测到的触摸手势408使得GUI(图4B)用于输入搜索查询并查看要显示的搜索结果。(图4B的GUI可以包括用于输入搜索查询的软键盘,未示出。)如图4B中所示,将“原力觉醒(the force awakens)”的搜索查询输入搜索框406。作为响应,显示搜索结果410-1到410-3。这里,搜索结果410-2是到与第三方服务提供商“票券商店”(与图4A中的链接402相关联的同一在线电影票券商家)相关联的页面的链接。
[0130] 响应于在搜索结果410-2上检测到触摸手势412(图4B),加载第三方服务提供商的对应页面414(图4C)并将其显示在执行的应用内。通过显示的页面414,用户可以与第三方服务提供商进行交易,并且任选地访问其他服务和特征。如图4C中所示,显示与“票券商店”相关联的页面,提供用户可以通过其来购买图4C中搜索的电影(“星球大战:原力觉醒(Star Wars:The Force Awakens)”)的票券的界面。用户还可以查看相关的媒体内容(“视频”)或信息(“演员和信息(CAST&INFO)”)。
[0131] 如下所述,可以执行页面414中的用于调用服务器系统(例如,用于社交网络服务)的应用编程接口(API)的脚本,以便获得与用户(例如,客户端设备104-1的用户、登录到客户端设备104-1上的社交网络服务的用户等)相关联的信息。然后可以使用获得的用户信息通过页面414来与第三方服务提供商进行交易。在该示例中,获得的信息包括位置信息416(例如,邮政编码),其至少部分地用于提供对交易的推荐,诸如,放映所要求的电影的附近(例如,在指定区域或距离内)电影院(“AMC范内斯14影院(AMC Van Ness 14)”,距离获得的邮政编码0.6英里)。对于方法500(图5)描述了可以检索的用户信息的其他示例,以及它们在与第三方服务提供商进行交易中的使用。
[0132] 在图4C中检测到向上滑动的手势418,使得显示页面414的附加部分(图4D)。这里,GUI显示对应于可用放映时间的用户界面可供件420-1到420-7,其选择允许用户发起购买对应放映时间的票券的交易。
[0133] 在可供件420-3上检测到触摸手势422(图4D),并且作为响应,显示完成交易的GUI(图4E)。这里,用户可以指定交易的细节,诸如要购买的票券的数量。
[0134] 响应于检测到向上滑动的手势424(图4E),显示用于指定支付细节的页面414的一部分(图4F)。这里,在与第三方服务提供商进行金融交易时,可以从社交网络服务检索用户的支付凭证(例如,通过调用社交网络系统108的API 242,图2)。在该示例中,不从社交网络服务检索支付凭证,直到用户明确授权。例如,响应于在可供件428上检测到触摸手势426,显示支付确认界面430(图4G),要求用户提供对用户的电子邮件地址和支付凭证的一次性使用的授权。这里,从社交网络服务检索支付凭证和电子邮件地址(例如,通过调用API 242,图2)并且用于响应于在可供件434(图4G)上检测到触摸手势432来完成交易。此后显示确认消息436(图4H),其任选地向用户提供到第三方服务的附加特征的访问(例如,“查看票券”)。可选地,在没有用户输入的情况下(例如,响应于加载页面)检索支付凭证。
[0135] 在一些实施方式中,可以在社交网络服务的通知界面中提供到与第三方服务提供商相关联的页面的链接。响应于在可供件442上检测到触摸手势440(图4I),显示用于查看来自社交网络服务的通知的通知界面438(图4J)。如图4J中所示,通知444-1和444-2包括到与第三方服务提供商相关联的页面的链接,并且选择通知使得在执行的应用内加载对应的页面,而不切换到其他应用。例如,选择通知444-1使得与“票券商店”相关联的页面被加载,允许用户查看最近购买的电影票券的细节(关于图4B至图4H描述的)。作为另一示例,通知444-2包含与“票券商店”相关联的页面的相同链接402(图4A),允许用户购买“海底总动员
2”的票券。
[0136] 图5是示出根据一些实施方式的在与第三方服务提供商不同的另一服务提供商的应用内访问第三方服务提供商的服务的方法500的流程图。
[0137] 方法500的步骤可以由客户端设备502(例如,客户端设备104,图1、图3、图4A至图4J)、服务器系统504(例如,社交网络系统108,图1和图2)和/或第三方服务器506(例如,第三方服务器110,图1)的任何组合来执行。图5对应于存储在计算机存储器(例如,客户端设备104的存储器306,图3;社交网络系统108的存储器206,图2;第三方服务器110的存储器,图1(未示出))或另一计算机可读存储介质中的指令。为了帮助描述方法500,将参考图4A至图4J中所示的示例性GUI来描述图5。
[0138] 在执行方法500时,客户端设备502在与由服务器系统504提供的社交网络服务相关联的应用中向用户提供(508)到与第三方服务提供商相关联的页面的链接(例如,在社交网络客户端模块340的GUI中显示搜索结果410-2(图4B),其是到第三方服务提供商“票券商店”的页面414(图4C)的链接)。与第三方服务器506相关联的第三方服务提供商不同于社交网络服务。如下所述,可以通过社交网络服务的各种(有时是两个或更多个不同的)入口点或特征来访问到与第三方服务提供商相关联的页面的链接。
[0139] 例如,在一些实施方式中,提供(508)到页面的链接包括在应用内显示第三方服务提供商的广告,其中,广告链接至页面。
[0140] 在一些实施方式中,客户端设备502通过应用接收指定搜索查询的用户输入(例如,搜索框406中的“原力觉醒”搜索查询,图4B)。将搜索查询提供给服务器系统504。然后,客户端设备502从服务器系统504接收搜索查询的结果。结果包括对链接至页面的第三方服务提供商的引用(例如,搜索结果410-2(图4B)链接至图4C中的页面414)。搜索结果被显示在应用内(例如,图4B中的GUI),其中,提供(508)到页面的链接包括在搜索结果内显示对第三方服务提供商的引用。
[0141] 在一些实施方式中,提供(508)到页面的链接包括在应用内显示关于第三方服务提供商的通知,其中,通知链接至页面(例如,通知444-2,图4J)。
[0142] 在一些实施方式中,提供(508)到页面的链接包括在应用内显示用户先前保存(例如,使用应用的保存特征)的社交媒体帖子(例如,分享链接),其中,社交媒体帖子链接至页面。
[0143] 在一些实施方式中,提供(508)到页面的链接包括在应用的私人消息界面内显示来自社交网络服务的其他用户的消息,其中,消息链接至页面。私人消息界面可以是社交网络服务的界面,用于查看仅用户可访问的消息(例如,与可以由用户的朋友查看的对用户配置文件时间线做出的帖子相反)。
[0144] 客户端设备502向服务器系统504发送(510)(并且服务器系统504从客户端设备502接收)对与第三方服务提供商相关联的页面的请求。在一些实施方式中,响应于对链接的用户选择(例如,触摸手势412,图4B),客户端设备502发送请求。
[0145] 服务器系统504向客户端设备502提供(514)(并且客户端设备502从服务器系统504接收)页面。该页面包括用于调用服务器系统504的一个或多个应用编程接口(API)的脚本(或多个脚本)(例如,执行该脚本使得客户端设备104的社交网络客户端模块340调用社交网络系统108的API 242)。
[0146] 在一些实施方式中,在从服务器系统504接收到页面之后,客户端设备502将页面缓存在客户端设备处的存储器(例如,存储器306,图3)中。因此,当客户端设备稍后访问该页面时(例如,当客户端设备停止在应用内显示(522)页面之后和/或在已经进行交易(524)之后,用户返回页面时),可以从客户端设备处的存储器中检索缓存的页面,而不是将对页面的请求发送到服务器系统504(或第三方服务器506)。
[0147] 在一些实施方式中,向客户端设备502提供(514)页面包括检索(512)页面。服务器系统504将脚本注入到检索到的页面中(例如,社交网络系统108将代码添加到从第三方服务器110-1(图1)检索到的网络文档),并将具有注入的脚本的检索到的页面发送到客户端设备502。在一些实施方式中,注入的脚本包括便于在检索到的页面(或与检索到的页面相关联并与第三方服务提供商相关联的其他页面)内导航或与之交互的脚本(例如,注入的脚本致使在客户端设备上显示导航用户界面元素,以允许用户访问页面的站点地图)。
[0148] 在一些实施方式中,检索(512)页面包括从第三方服务器506获取页面,将页面缓存在服务器系统504处的存储器中(例如,页面缓存器244,图2),并从服务器系统504处的存储器中检索缓存的页面。可选地,页面从第三方服务器506获得并被提供给客户端设备502而不在服务器系统504处缓存。在一些实施方式中,脚本被注入到从第三方服务器获得的页面中,并且缓存的页面是包括注入的脚本的获得的页面。在一些实施方式中,缓存的页面是从第三方服务器获得的页面,并且在检索缓存的页面之后并且在向客户端设备发送具有注入的脚本的缓存的页面之前将脚本注入到缓存的页面中。
[0149] 在一些实施方式中,在向用户提供链接(步骤508)和/或发送对页面的请求(步骤510)之前执行检索(512)页面、缓存页面和/或将脚本注入到检索到的页面中。换句话说,在从客户端设备接收任何页面请求之前,可以检索、缓存和/或修改(例如,使用注入的脚本)与第三方提供者相关联的页面。
[0150] 响应于对链接的用户选择,客户端设备502在应用内加载(516)页面(例如,在图4C中,响应于触摸手势412(图4B)来加载页面414)。
[0151] 客户端设备502执行脚本并调用(518)一个或多个API(例如,API242,图2)(并且服务器系统504从脚本接收对一个或多个API中的相应API的一个或多个调用),以从服务器系统504获得与用户相关联的信息。响应于一个或多个调用,服务器系统504向客户端设备提供(520)(并且客户端设备从服务器系统接收)与社交网络服务的用户相关联的信息以供在页面中使用。
[0152] 客户端设备502在应用内显示(522)页面(例如,在用于社交网络客户端模块340的GUI内显示页面414,图4C)。该页面使得用户能够至少部分地基于服务器系统504响应于一个或多个调用提供的信息来与第三方服务提供商(即,与第三方服务器506)进行交易。客户端设备502使用(524)与用户相关联的信息以通过页面来与第三方服务提供商进行交易。
[0153] 在一些实施方式中,与用户相关联的信息包括由客户端设备的硬件资源获得的信息(例如,使用图像/视频捕获设备324(图3)捕获的媒体、由位置检测设备322生成的位置信息、由音频输入设备320捕获的音频等)。
[0154] 在一些实施方式中,与用户相关联的信息包括社交网络服务中的用户的标识符(例如,用户ID或电子邮件地址)(例如,用户信息218,图2),并且使用(524)信息以进行交易包括将标识符与交易相关联。
[0155] 在一些实施方式中,与用户相关联的信息包括社交网络服务中的用户的支付信息,并且使用(524)信息以进行交易包括使用支付信息来支付交易(例如,使用从社交网络服务中检索到的支付凭证,图4F至图4H)。
[0156] 在一些实施方式中,显示(522)页面包括至少部分地基于与用户相关联的信息显示对交易的推荐。例如,在一些实现方式中,与用户相关联的信息包括由客户端设备502确定的用户的位置,并且推荐是至少部分地基于位置(例如,在图4C中,页面414显示基于由客户端设备104的位置检测设备322确定的位置信息416的对附近电影院“AMC范内斯14影院”的推荐)。
[0157] 在一些实施方式中,与用户相关联的信息包括社交网络服务中的用户的活动的历史(例如,关于图2中的连接信息220详细描述的由社交网络服务的用户执行的动作或活动,诸如“喜欢”),并且该推荐至少部分地基于该历史(例如,基于先前通过社交网络服务购买的产品的历史来推荐用于购买的产品)。
[0158] 在一些实施方式中,与用户相关联的信息包括社交网络服务中的用户的联系人的活动的历史(例如,由社交网络服务中的用户的朋友执行的动作或活动),并且该推荐至少部分地基于该历史(例如,选择图4A中的链接402来加载页面(未示出),该页面基于用户“约翰·多伊”分享链接402的帖子400来显示用于购买“海底总动员2”的票券的推荐)。
[0159] 可以通过调用一个或多个API从服务器系统检索的与用户相关联的信息的其他示例包括例如存储在社交网络数据库214(图2)中的任何数据或信息。
[0160] 在一些实施方式中,加载(516)页面包括执行脚本,并且响应于执行脚本来执行调用(518)一个或多个API(以及向客户端设备提供(520)所获得的信息)(例如,在检测到对链接的用户选择时调用一个或多个API)。在一些实施方式中,响应于检测到与加载的页面相关的用户交互来执行调用(518)一个或多个API(以及向客户端设备提供(520)所获得的信息)(例如,在检测到授予检索和使用位置信息的许可的用户输入、图4G中的授权使用由社交网络服务维护的支付凭证的触摸手势432等时,调用一个或多个API)。在一些实施方式中,一个或多个API包括多个API,并且调用(518)多个API包括响应于加载(516)页面来至少调用多个API中的第一API,并且响应于检测到与加载的页面相关的用户交互来至少调用多个API中的第二API(不同于第一API)。
[0161] 在一些实施方式中,使用(524)与用户相关联的信息包括将信息从客户端设备502直接发送到第三方服务提供商的第三方服务器506。另外地和/或可选地,使用(524)与用户相关联的信息包括客户端设备502向服务器系统504提供指令以将信息从服务器系统504发送到第三方服务器506(例如,图4G中提供的用户授权使得用户的支付凭证从社交网络服务直接发送到第三方服务提供商)。
[0162] 在一些实施方式中,在进行交易之后,客户端设备502停止在应用内显示页面。在停止显示页面之后,客户端设备502接收关于交易的通知。例如,通知从服务器系统504推送至客户端设备502。客户端设备502在应用内显示通知(例如,在完成票券交易之后,图4J中的通知444-1被推送到客户端设备)。
[0163] 在一些实施方式中,在向用户提供链接(508)之后,客户端设备502向第三方服务器506发送(并且第三方服务器从客户端设备接收)对与第三方服务提供商相关联的页面的请求。作为响应,第三方服务器506向客户端设备502提供(并且客户端设备从第三方服务器接收)该页面,并且客户端设备将该页面缓存在客户端设备处的存储器中(例如,存储器306,图3)。客户端设备502将脚本注入检索到的页面(或任选地,缓存的页面),并加载(例如,步骤516)并且在应用内显示(例如,步骤522)具有注入的脚本的页面(或缓存的页面)。
客户端设备调用一个或多个API(例如,步骤518)、接收信息(例如,步骤520)、并使用与用户相关联的信息通过页面来与第三方服务提供商进行交易(例如,步骤524)。在稍后的时间(例如,在客户端设备停止在应用内显示页面之后和/或在进行交易之后),客户端设备502从存储器中检索具有注入的脚本的缓存的页面,并在客户端设备上的应用内加载缓存的页面(或者任选地,客户端设备检索没有注入脚本的缓存的页面、将脚本注入缓存的页面、并加载具有注入的脚本的缓存的页面)。因此,客户端设备可以缓存页面(具有注入的脚本)以使后续页面加载更快且更有效。
[0164] 对于上面讨论的系统收集关于用户的信息的情况,可以向用户提供选择加入/退出可以收集个人信息的程序或特征的机会(例如,关于用户的偏好或用户对社交内容提供商的贡献的信息)。
[0165] 尽管各个附图中的一些以特定顺序示出了多个逻辑阶段,但是不依赖于顺序的阶段可以重新排序,并且可以组合或分解其他阶段。虽然具体提到了一些重新排序或其他分组,但是其他分组对于本领域普通技术人员来说是显而易见的,因此本文中给出的排序和分组不是可选的详尽列表。此外,应该认识到,这些阶段可以在硬件、固件、软件或其任何组合中实现。
[0166] 出于说明的目的,已经参考具体实施方式描述了前述描述。然而,上面的说明性讨论并非旨在穷举或将权利要求的范围限制为所公开的精确形式。鉴于上述教导,许多修改和变化都是可能的。选择这些实施方式是为了最好地解释权利要求及其实际应用的基本原理,从而使得本领域的其他技术人员能够最好地使用具有适合于设想的特定用途的各种修改的实施方式。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈