跨客户端设备上的多个应用的用户交互关联转让专利

申请号 : CN201480080436.4

文献号 : CN106471543B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 霍利·马里·奥姆塞思丹尼尔·金马修·迈克尔·威利斯耶德·尤阿维克尼克库尔陈晨肖恩·埃利奥特·狄谢恩·迈克尔·斯威尼

申请人 : 脸谱公司

摘要 :

在线系统将源自第三方系统的第三方内容传输至客户端设备。该第三方内容包括指向与第三方系统相关的第三方应用的指针。当客户端设备接收到来自客户端设备的用户与第三方内容的交互时,客户端设备执行第三方应用并且生成属性标识符,从该属性标识符,不能够确定用户的身份。该属性标识符被传输至在线系统。随后,客户端设备确定描述用户与第三方应用的交互的信息,该信息与属性标识符一起被传输至第三方系统。第三方系统将属性标识符以及描述与第三方应用的交互的信息传输至在线系统,该在线系统匹配属性标识符以便将与第三方内容的交互以及与第三方应用的交互相关联。

权利要求 :

1.一种方法,包括:

从在线系统将源自第三方系统的第三方内容传输至客户端设备,所述第三方内容用于呈现在与所述在线系统相关联的客户端应用中并且所述第三方内容包括指向与所述第三方系统相关联的第三方应用的指针;

获得所述客户端设备的用户经由所述客户端应用与所述第三方内容的交互以及属性标识符,所述属性标识符响应于所述交互而生成,并且所述交互使得所述客户端设备使用所述指针执行所述第三方应用,其中,所述交互包括选择所述第三方内容,通过使用描述所述交互的数据作为输入的散列函数生成所述属性标识符;

从所述第三方系统接收属性标识符以及描述所述用户与所述第三方应用的交互的信息;

由处理器判定从所述客户端设备获得的属性标识符是否与从所述第三方系统接收的属性标识符相匹配;以及响应于判定从所述客户端设备获得的属性标识符与从所述第三方系统接收的属性标识符相匹配,将描述所述用户与所述第三方应用的交互的信息以及所述客户端设备的所述用户经由所述客户端应用与所述第三方内容的交互进行关联。

2.根据权利要求1所述的方法,进一步包括:

响应于判定从所述客户端设备获得的属性标识符与从所述第三方系统接收的属性标识符相匹配,将描述所述用户与所述第三方应用的交互的信息以及由所述在线系统保持的所述客户端设备的所述用户的用户简档进行关联。

3.根据权利要求1所述的方法,其中,将源自所述第三方系统的所述第三方内容从所述在线系统传输至所述客户端设备包括:生成包括所述第三方内容以及指向所述第三方应用的所述指针的故事;以及至少部分基于所述用户与所述第三方内容之间的亲和度,选择用于包括在新鲜事中以供呈现至所述用户的所述故事。

4.根据权利要求1所述的方法,其中,从所述第三方系统接收所述属性标识符以及描述所述用户与所述第三方应用的交互的所述信息包括:接收描述选自如下各项组成的组的交互的信息:经由所述第三方应用与所述第三方内容的交互、经由所述第三方应用与额外第三方内容的交互、所述用户与所述第三方应用的注册过程的交互、及其任意组合。

5.根据权利要求1所述的方法,其中,从所述第三方系统接收所述属性标识符以及描述所述用户与所述第三方应用的交互的所述信息包括:接收有关所述用户与所述第三方应用的一个或多个交互的度量,所述度量选自如下各项组成的组:所述用户与所述第三方应用交互所花费的时间、与所述第三方应用中的广告相关的收入、所述用户与所述第三方应用中的额外第三方内容的大量交互、及其任意组合。

6.根据权利要求1所述的方法,其中,从所述第三方系统接收所述属性标识符以及描述所述用户与所述第三方应用的交互的所述信息包括:接收由所述第三方应用生成的执行标识符,所述执行标识符是响应于与所述第三方内容的交互使得所述客户端设备执行所述第三方应用所生成的;以及接收描述所述用户与所述第三方应用的交互的所述信息,所述第三方应用与所接收的执行标识符相关。

7.根据权利要求1所述的方法,其中,从所述第三方系统接收的所述属性标识符是通过对数据进行加密散列所生成的,所述数据包括选自如下各项组成的组中的至少一项:所述客户端设备的标识符、由所述在线系统保持的所述用户的标识符、所述客户端设备的操作系统的标识符、所述在线系统中的所述第三方内容的标识符、所述第三方应用是否安装在所述客户端设备上的指示、及其任意组合。

8.根据权利要求1所述的方法,其中,获得所述客户端设备的用户经由所述客户端应用与所述第三方内容的交互以及所述属性标识符包括:接收包括选自如下各项组成的组中的至少一项的数据:所述客户端设备的标识符、所述在线系统的所述用户的标识符、所述客户端设备的操作系统的标识符、所述在线系统中的所述第三方内容的标识符、以及所述第三方应用是否安装在所述客户端设备上的指示;

通过对所接收的数据进行加密散列来生成标识符;以及

将所述标识符从所述在线系统传输至所述客户端设备。

9.一种方法,包括:

在客户端设备处接收来自在线系统的第三方内容项,所述第三方内容项源自第三方系统并且包括指向与所述第三方系统相关联的第三方应用的指针;

在所述客户端设备处接收用户与通过在所述客户端设备上执行的客户端应用所呈现的所述第三方内容项的交互;

获得与所述客户端设备和所述第三方内容项相对应的属性标识符,所述属性标识符是响应于所述交互生成的,其中,所述交互包括选择所述第三方内容,通过使用描述所述交互的数据作为输入的散列函数生成所述属性标识符;

将所述属性标识符以及描述所述交互的信息从移动设备传输至所述在线系统;

在所述客户端设备的能够由所述第三方应用访问的存储位置中存储所述属性标识符;

在所述客户端设备处执行所述第三方应用以响应于接收到所述交互来呈现所述第三方内容项;

确定描述用户与所述第三方应用的交互的信息;以及

将描述所述用户与所述第三方应用的交互的所述信息关联于所述第三方应用从所述存储位置检索的所述属性标识符从所述移动设备传输至所述第三方系统。

10.根据权利要求9所述的方法,其中,执行所述第三方应用以呈现所述第三方内容项包括:判定所述第三方应用是否安装在所述客户端设备上;以及

响应于判定所述第三方应用未安装在所述客户端设备上,提示所述客户端设备的所述用户下载所述第三方应用。

11.根据权利要求9所述的方法,其中,确定描述所述用户与所述第三方应用的交互的所述信息包括:存储描述选自如下各项组成的组的交互的信息:经由所述第三方应用与所述第三方内容项的交互、经由所述第三方应用与额外第三方内容项的交互、所述用户与所述第三方应用的注册过程的交互、及其任意组合。

12.根据权利要求9所述的方法,其中,确定描述所述用户与所述第三方应用的交互的所述信息包括:确定有关所述用户与所述第三方应用的一个或多个交互的度量,所述度量选自如下各项组成的组:所述用户与所述第三方应用交互所花费的时间、与所述第三方应用中的广告相关的收入、所述用户与所述第三方应用中的额外第三方内容项的大量交互、及其任意组合。

13.根据权利要求9所述的方法,其中,确定描述所述用户与所述第三方应用的交互的所述信息包括:响应于执行所述第三方应用生成执行标识符;以及

将描述所述用户与所述第三方应用的交互的所述信息与所述执行标识符关联。

14.根据权利要求9所述的方法,其中,执行所述第三方应用以呈现所述第三方内容项包括:提示所述用户通过将数据提供至所述第三方应用向所述第三方系统注册。

15.根据权利要求9所述的方法,其中,获得所述属性标识符包括:

通过向数据应用加密散列函数生成所述属性标识符,所述数据包括选自如下各项组成的组中的至少一项:所述客户端设备的标识符、由所述在线系统保持的所述用户的标识符、所述客户端设备的操作系统的标识符、所述在线系统中的所述第三方内容项的标识符、所述第三方应用是否安装在所述客户端设备上的指示、及其任意组合。

16.根据权利要求9所述的方法,其中,获得所述属性标识符包括;

将包括选自如下各项组成的组中的至少一项的数据从所述移动设备传输至所述在线系统:所述客户端设备的标识符、所述在线系统的所述用户的标识符、所述客户端设备的操作系统的标识符、所述在线系统中的所述第三方内容项的标识符、以及所述第三方应用是否安装在所述客户端设备上的指示;以及从所述在线系统接收所述属性标识符,由所述在线系统通过向所传输的数据应用加密散列函数生成所述属性标识符。

17.一种计算机可读存储介质,所述计算机可读存储介质具有编码在所述计算机可读存储介质上的指令,当由处理器执行所述指令时,使得所述处理器:将源自第三方系统的第三方内容项从在线系统传输至客户端设备,所述第三方内容项用于呈现在与所述在线系统相关联的客户端应用中并且包括指向与所述第三方系统相关联的第三方应用的指针;

获得所述客户端设备的用户经由所述客户端应用与所述第三方内容项的交互以及属性标识符,所述属性标识符响应于所述交互而生成,并且所述交互使得所述客户端设备使用所述指针执行所述第三方应用,其中,所述交互包括选择所述第三方内容,通过使用描述所述交互的数据作为输入的散列函数生成所述属性标识符;

从所述第三方系统接收属性标识符以及描述所述用户与所述第三方应用的交互的信息;

判定从所述客户端设备获得的属性标识符是否与从所述第三方系统接收的属性标识符匹配;以及响应于判定从所述客户端设备获得的属性标识符与从所述第三方系统接收的属性标识符匹配,将描述所述用户与所述第三方应用的交互的所述信息与所述客户端设备的所述用户经由所述客户端应用与所述第三方内容项的交互相关联。

18.根据权利要求17所述的计算机可读存储介质,其中,从所述第三方系统接收所述属性标识符以及描述所述用户与所述第三方应用的交互的所述信息包括:接收描述选自如下各项组成的组中的交互的信息:经由所述第三方应用与所述第三方内容项的交互、经由所述第三方应用与额外第三方内容项的交互、所述用户与所述第三方应用的注册过程的交互、及其任意组合。

19.根据权利要求17所述的计算机可读存储介质,其中,从所述第三方系统接收所述属性标识符以及描述所述用户与所述第三方应用的交互的所述信息包括:接收由所述第三方应用生成的执行标识符,所述执行标识符响应于与所述第三方内容项的交互使得所述客户端设备执行所述第三方应用而生成;以及接收描述所述用户与所述第三方应用的交互的所述信息,所述第三方应用与所接收的执行标识符相关联。

20.根据权利要求17所述的计算机可读存储介质,其中,从所述第三方系统接收的属性标识符是通过对数据进行加密散列而生成的,所述数据包括选自从如下各项组成的组中的至少一项:所述客户端设备的标识符、由所述在线系统保持的所述用户的标识符、所述客户端设备的操作系统的标识符、所述在线系统中的所述第三方内容项的标识符、所述第三方应用是否安装在所述客户端设备上的指示、及其任意组合。

说明书 :

跨客户端设备上的多个应用的用户交互关联

背景技术

[0001] 社交网络系统或在线系统允许其用户连接至其他社交网络系统用户并与之通信。用户可在社交网络系统上创建绑定至他们的身份并且包括关于该用户的信息(诸如兴趣和人口统计信息)的简档。用户可以是个体或者是诸如公司或慈善机构的实体。由于社交网络系统的日益普及以及由社交网络系统保持的用户特定信息量的增加,所以社交网络系统为广告商提供理想论坛以便通过将广告呈现至社交网络系统用户来提高关于产品或服务的认知。
[0002] 社交网络系统或其他在线系统的用户逐渐使用诸如智能电话或平板电脑的移动设备来访问社交网络系统或其他在线系统。通常,在移动设备上执行的应用与社交网络系统或在线系统交换信息以便向用户提供内容。然而,应用通常与具体在线系统有关,所以用户经常访问多个应用以便从各种在线系统或其他来源检索内容。因为为了访问不同内容而访问多个应用是耗时的,所以用户可能不经常与某些应用交互,这使得用户忽略由不经常访问的应用呈现的高度相关或感兴趣的内容。

发明内容

[0003] 诸如社交网络系统的在线系统促进客户端设备(诸如,移动设备)的用户之间的通信(例如,共享来自在线系统外部的来源的内容)。在线系统可通过在客户端设备上执行的应用将内容(例如,社交网络内容、图像、视频、音频、其他媒体、广告)传递至在线系统的用户。内容可包括指定在客户端设备上执行的第三方应用的指针,其中,指针标识用于由第三方应用呈现的内容。当用户与包括这种指针的内容交互时,客户端设备发起第三方应用,该第三方应用呈现由指针标识的内容。如果由指针指定的第三方应用未安装在用户的客户端设备上,可提示用户安装由指针指定的第三方应用。
[0004] 当用户经由在客户端设备上执行的且与在线系统相关联的应用与包括指定第三方应用的指针的内容交互时,与在线系统相关联的应用将关于交互的信息通信至在线系统,生成与与包括指针的内容的交互相关联的属性标识符,并且将该属性标识符存储在客户端设备的存储器中,该存储器能够被客户端设备上执行的多个应用访问。从该属性标识符并不能确认与包括指针的内容进行交互的用户的身份。与在线系统相关联的应用将该属性标识符以及与第三方应用的交互有关的其他信息通信至在线系统。
[0005] 由标识符指定的第三方应用执行并显示由来自在线系统(用户与该在线系统交互)的内容中的指针所标识的内容。此外,第三方应用生成与第三方应用的执行相对应的执行标识符。该执行标识符可用作用于未创建与第三方应用相关联的第三方系统的帐户或者未登录与第三方应用相关联的第三方系统的自身帐户的用户的临时用户标识符。当用户与第三方应用交互时,第三方应用存储描述用户与第三方应用的交互的信息(例如,向用户呈现内容、在第三方应用上创建帐户的注册过程),将用户与第三方应用的交互与生成的执行标识符相关联,并且将这些交互通信至与第三方应用相关联的第三方系统。在一些实施方式中,第三方系统将属性标识符以及描述用户与第三方应用(该第三方应用与执行标识符相关联)的交互的信息发送至在线系统,该在线系统基于执行标识符标识用户并且将与第三方应用的交互与关于在线系统的用户的信息相关联。

附图说明

[0006] 图1A是根据实施方式的用于在线系统的系统环境的框图。
[0007] 图1B是示出根据实施方式的通过系统环境的部件与第三方内容交互的交互图。
[0008] 图2是根据实施方式的在线系统的框图。
[0009] 图3是根据实施方式的用于将跨客户端设备上执行的应用的用户交互相关联的过程的流程图。
[0010] 图4是根据实施方式的用于报告跨客户端设备上执行的应用的用户交互的过程的流程图。
[0011] 图5A、图5B和图5C示出根据实施方式的客户端应用和第三方应用的示例性用户界面。
[0012] 图6A、图6B和图6C示出根据实施方式的客户端应用和第三方应用的额外示例性用户界面。
[0013] 图仅为了说明的目的而描述本发明的各个实施方式。本领域技术人员从下列讨论中容易认识到,在不背离本文所描述的本发明的原理的情况下,可采用本文示出的结构和方法的替代实施方式。

具体实施方式

[0014] 系统架构
[0015] 图1A是用于在线系统120的系统环境的高级框图。图1A所示的系统环境包括客户端设备100、在线系统120、一个或多个第三方系统130以及网络140。客户端设备100包括客户端应用105、共享存储器110以及第三方应用115。在替代配置中,不同和/或其他部件可被包括在系统环境中。本文描述的实施方式可被适配至并非在线系统120的在线系统。
[0016] 客户端设备100是能够接收用户输入、显示内容以及经由网络140发送和/或接收数据的一个或多个计算设备。在一个实施方式中,客户端设备100可以是诸如个人数字助理(PDA)、移动电话、智能电话或另一合适设备的具有计算机功能的设备。可选地或另外地,客户端设备100是诸如台式电脑或膝上型电脑的常规计算机系统。客户端设备100被配置为经由网络140通信。
[0017] 在一个实施方式中,客户端设备100执行客户端应用105,该客户端应用允许客户端设备100的用户与在线系统120交互。例如,客户端设备100执行浏览器应用,以便能够经由网络140进行客户端设备100与在线系统120之间的交互。客户端设备100也执行第三方应用115,该第三方应用允许客户端设备100的用户与第三方系统130交互。客户端设备100可通过在客户端设备100的本地操作系统(诸如, 或ANDROIDTM)上运行的应用编程接口(API)与在线系统120或第三方系统130交互。
[0018] 除了客户端应用105和第三方应用115以外,客户端设备100还包括由客户端设备100上执行的多个应用(诸如,客户端应用105和第三方应用115)可访问的共享存储器110。
在一个实施方式中,共享存储器110允许应用临时或永久存储数据以供该应用或一个或多个额外应用的以后访问。例如,客户端应用105在共享存储器110中存储数据(例如,数值数据、数据串),并且第三方应用115检索所存储的数据。共享存储器110可实现为队列、堆栈、阵列或任意其他合适的数据结构,并且可选地可包括关于存储在共享存储器110中的数据的数据存储量或持续时间的约束。
[0019] 在线系统120促进用户之间的通信,包括内容的共享。例如,在线系统120是社交网络系统。在线系统120包括描述在线系统120的用户的信息(诸如,由用户作为用户简档的一部分提供至在线系统120的特征)。在线系统120可通过客户端应用105将诸如媒体(例如,图像、视频、音频、动画)或社交网络内容(例如,贴子、故事、状态更新、媒体、广告)的内容传递至在线系统120的用户。通过与客户端应用105交互,用户可查看来自在线系统120的内容或与之交互或者将内容通信至在线系统120。在一个实施方式中,由在线系统120提供的内容包括标识第三方应用115的指针。指针包括诸如统一资源定位符(URL)、文件地址或位置、统一资源名称(URN)的参考。指针也可标识通过第三方系统130保持的第三方内容的位置或者客户端设备100可从其下载第三方应用115的位置。
[0020] 一个或多个第三方系统130可耦接至网络140以用于与移动设备110或与在线系统120通信,这结合图2进一步描述。在一个实施方式中,第三方系统130是将描述第三方应用
115的信息通信至客户端设备100或者将数据通信至客户端设备以供第三方应用115使用的应用提供商。在其他实施方式中,第三方系统130提供第三方内容或其他信息以用于经由客户端设备100呈现。第三方网站130也可将信息(诸如广告、第三方内容或关于第三方应用
115的信息)通信至在线系统120。第三方应用115向用户提供一界面,用于将内容上传至第三方系统130或者访问由第三方系统130保持的内容或与该内容交互。示例性第三方应用
115提供用于媒体分享、媒体获取、通过用户友好(user-friendly,人性化)效果的媒体编辑、发消息、社交联网、组织、电子邮件、行程、事件规划、播放或检索音乐、新闻发布、访问体育内容、电子商务、旅游、导航和评价餐馆的功能。第三方内容包括关于第三方系统130的功能的任意内容,并且可包括由第三方系统130接收的诸如广告的额外内容(或者针对第三方系统130或第三方应用115的广告)。
[0021] 客户端设备100被配置为经由网络140通信,该网络可包括使用有线和/或无线通信系统的局域网和/或广域网的任意组合。在一个实施方式中,网络140使用标准通信技术和/或协议。例如,网络140包括使用诸如以太网、802.11、微波存取全球互通(WiMAX)、3G、4G、码分多址(CDMA)、数字用户线路(DSL)等技术的通信链路。用于经由网络140进行通信的网络协议的实例包括多协议标签交换(MPLS)、传输控制协议/因特网协议(TCP/IP)、超文本传输协议(HTTP)、简单邮件传输协议(SMTP)以及文件传输协议(FTP)。可使用诸如超文本标记语言(HTML)或可扩展标记语言(XML)的任意合适格式来表示通过网络140交换的数据。在一些实施方式中,网络140的通信链路中的所有或一些可使用任意合适技术或多种技术进行加密。
[0022] 图1B是示出根据实施方式的经由包含在客户端应用105呈现的内容中的指针与第三方应用115的交互的交互图,该客户端应用经由第三方应用115与在线系统120内容相关联。第三方系统130存储150从附属于第三方系统130的用户授权的另一第三方系统130接收的或经由任意其他合适方法获得的第三方内容(该第三方内容可经由在客户端设备100上执行的第三方应用115接收)。例如,第三方内容是由第三方系统130的用户捕获的图像。第三方内容包括标识第三方应用115的指针。例如,指针包括与第三方应用115有关的应用标识符或标识第三方应用115的其他合适信息。指针也可标识针对第三方应用115的地址或其他信息以便从第三方系统130或另一来源检索第三方内容。第三方系统130将包括指针的第三方内容发送152至在线系统120,该在线系统可存储第三方内容。
[0023] 在线系统120将包括指针的第三方内容发送154至客户端设备100上执行的客户端应用105以用于呈现给在线系统120的用户。例如,在线系统120选择包括指针的第三方内容以用于呈现至用户(并且可连同包括指针的第三方内容一起发送用于呈现的额外内容),或者客户端设备100的用户从在线系统120请求包括指针的第三方内容。客户端应用105呈现156包括指针的第三方内容,并且接收158与包括指针的第三方内容的交互。例如,用户请求使用第三方应用115查看第三方内容。作为另一实例,用户请求查看与包括指针的第三方内容的相同实体有关的额外第三方内容。
[0024] 响应于接收到的与包括指针的第三方内容的交互,客户端应用105从指针标识第三方应用115,并且将指令发送160至第三方应用115以发起第三方应用115。在一个实施方式中,第三方应用115从第三方系统130检索162第三方内容以用于呈现至用户。除了将指令通信至第三方应用115以执行第三方应用115以外,客户端应用105还生成164与所接收的与第三方内容的交互相对应的属性标识符。通过不可逆向获得用户身份的过程生成属性标识符。例如,使用与客户端设备100有关的标识符的散列生成属性标识符。客户端应用105将属性标识符连同所接收的交互的记录一起发送166至在线系统120,并且将属性标识符存储168在客户端设备100的共享存储器110中。
[0025] 在第三方应用115从客户端应用105接收到指令之后,第三方应用115从共享存储器110检索170属性标识符。第三方应用115也记录描述用户与第三方应用115的交互的信息。例如,第三方应用115记录用户通过第三方应用115查看的额外内容项。第三方应用115将属性标识符与描述用户与第三方应用115的交互的信息一起发送172至第三方系统130。
[0026] 第三方系统130接收属性标识符以及描述与第三方应用115的交互的信息,并且将属性标识符以及描述与第三方应用115的交互的信息发送174至在线系统120。在线系统120判定从第三方系统130接收的属性标识符是否与从客户端应用105接收的属性标识符相匹配。如果从第三方系统130接收的属性标识符与从客户端应用105接收的属性标识符相匹配,则在线系统120将连同属性标识符一起从客户端应用105接收的交互与连同从第三方系统130接收的属性标识符一起从第三方系统130接收的描述与第三方应用115的交互的信息相关联。因此,在线系统120使用从客户端应用105接收的以及从第三方系统130接收的属性标识符来将经由客户端应用105接收的交互与经由第三方应用115接收的后续的交互相关联。
[0027] 在线系统
[0028] 图2是在线系统120的架构的框图。图2所示的在线系统120包括用户简档存储205、内容存储210、动作记录器215、动作日志220、边线存储225、新鲜事管理器230、授权服务器235以及网络服务器240。在其他实施方式中,在线系统120可包括用于各种应用的额外的、更少的或不同的部件。为了不使该系统架构的细节变得模糊,未示出诸如网络接口、安全功能、负载平衡器、故障转移服务器、管理和网络操作平台等的常规部件。
[0029] 在线系统120的每个用户与存储在用户简档存储205中的用户简档相关。用户简档包括关于该用户的由用户明确分享的声明性信息,并且还可包括由在线系统120推断的简档信息。在一个实施方式中,用户简档包括多个数据字段,每个数据字段描述对应社交网络系统用户的一个或多个属性。存储在用户简档中的信息的实例包括传记的、人口统计的以及其他类型的描述性信息,诸如工作经历、受教育史、性别、业余爱好或喜好、地址等。用户简档还可存储由用户提供的其他信息,例如,图像或视频。在某些实施方式中,用户的图像可标记有标识在图像中显示的社交网络系统用户的信息。用户简档存储205中的用户简档也可保存对于由相应用户对内容存储210中的内容项执行的并被存储在动作日志220中的动作的参考。
[0030] 虽然用户简档存储205中的用户简档常常与个体相关,从而允许个体经由在线系统120彼此交互,但是也可为诸如商业或组织的实体存储用户简档。这允许实体于在线系统120上创建存在以用于连接其他在线系统用户并与之交换内容。实体可张贴关于其本身、关于其产品的信息或者向使用与实体的用户简档相关的品牌页面的在线系统的用户提供其他信息。在线系统的其他用户可连接到该品牌页面以接收张贴至品牌页面的信息或接收来自品牌页面的信息。与品牌页面有关的用户简档可包括关于实体本身的信息,该信息向用户提供关于实体的背景或信息数据。
[0031] 内容存储210存储表示各种类型内容的对象。由对象表示的内容的实例包括:页面帖子、状态更新、照片、视频、链接、共享内容项、游戏应用成就、本地商业的签到事项、品牌页面或任意其他类型的内容。在线系统用户可创建由内容存储210存储的对象,诸如状态更新、由用户标记以便与在线系统中的其他对象相关联的照片、事件、组或应用。在一些实施方式中,从独立于在线系统120的移动应用105或第三方应用115接收对象。本文中,从第三方系统130或从第三方应用115接收的对象被称为“第三方内容”。在一个实施方式中,内容存储210中的对象表示单个内容块或内容“项”。因此,在线系统用户被鼓励通过各种通信渠道发布各种类型媒体的文本和内容项而进行彼此通信。这增加了用户彼此的交互的量,并且增加了用户在在线系统120内交互的频率。
[0032] 动作记录器215接收关于在线系统120内部和/或外部的用户动作的通信,利用关于用户动作的信息填充动作日志220。动作的实例包括:添加至另一用户的连接、向另一用户发送消息、上传图像、读取来自另一用户的消息、查看与另一用户相关的内容、以及参加由另一用户发布的事件等。此外,大量动作可涉及对象和一个或多个具体用户,所以这些动作也与那些用户有关并且被存储在动作日志220中。
[0033] 动作日志220可由在线系统120使用以便跟踪在线系统120上的用户动作以及向在线系统120通信信息的第三方系统130上的动作。用户可与在线系统120上的各种对象交互,并且描述这些交互的信息被存储在动作日志220中。与对象的交互的实例包括:在帖子上评论、共享链接、经由移动设备在物理位置签到、访问内容项以及任意其他合适交互。包括在动作日志220中的与在线系统120上的对象的交互的其他示例包括:对相册进行评论、与用户通信、与对象建立连接、加入事件、加入群、创建事件、授权应用、使用应用、表示对于对象的喜好(“点赞”该对象)以及参与交易。此外,动作日志220可记录用户与在线系统120上的广告以及与在在线系统120上运行的其他应用的交互。在一些实施方式中,来自动作日志220的数据用于推断用户的兴趣或喜好,加强用户的用户简档中所包括的兴趣以及允许更完整地了解用户偏好。
[0034] 动作日志220也可存储在第三方系统130(诸如,外部网站)上采取的用户动作,并且向在线系统120通信。这些动作可包括与在客户端设备100上执行的并且与第三方系统130有关的第三方应用115的交互。例如,电子商务网站可通过使得电子商务网站能够识别在线系统120的用户的社交插件来认识在线系统120的用户。因为在线系统120的用户是唯一可标识的,诸如前述实例的电子商务网站可向在线系统120通信关于在线系统120的外部的用户动作的信息以用于与用户相关联。因此,动作日志220可记录关于用户在第三方系统
130上执行的动作的信息,包括网页查看历史、参与的广告、完成的购买以及来自购物和购买的其他模式。
[0035] 动作记录器215也可将与第三方应用的交互与由在线系统120保持的用户简档相关联。虽然第三方系统130可能不能够标识由在线系统120保持的与通过第三方应用115接收的交互有关的用户简档,但是第三方系统130可向在线系统120通信数据,该数据允许在线系统120推断通过保持与通过与第三方系统130有关的第三方应用接收的交互有关的在线系统120保持的用户简档。在一个实施方式中,当用户执行与客户端应用105的交互使得客户端应用105将发起第三方应用115的指令通信至第三方应用115时,在线系统120从客户端应用105接收属性标识符。与属性标识符一起,客户端应用105报告引起属性标识符的创建的交互。如以上结合图1B描述的,通过不可逆向单独从属性标识符确定用户身份的过程生成属性标识符。第三方应用115将属性标识符通信至第三方系统130,该第三方系统随后将属性标识符以及描述与第三方系统130相关的第三方应用115进行交互的信息发送至在线系统120。例如,描述与第三方应用115的交互的信息标识通过第三方应用115查看的内容以及访问第三方应用115所花费的时间。动作记录器215将从第三方系统130接收的与第三方应用115的交互的信息与匹配从客户端应用105接收的属性标识符的属性标识符相关联,并且将描述与第三方应用115的交互的信息与对应于从客户端应用105接收的属性标识符的用户相关的用户简档相关联。除了匹配属性标识符以外,动作记录器215可执行额外动作以便将与第三方应用115的交互与在线系统120中的用户简档相关联(例如,当比较属性标识符时,说明从客户端应用105接收属性标识符的时间以及何时从第三方系统130接收属性标识符)。
[0036] 在一个实施方式中,边线存储225将描述在线系统120上的用户与其他对象之间的连接的信息存储为边线。一些边线可由用户定义,允许用户指定他们与其他用户的关系。例如,用户可生成与其他用户的、平行于用户现实生活关系(诸如,朋友、同事、伙伴等)的边线。当用户与在线系统120中的对象交互时,诸如,表达对在线系统120上的页面的兴趣、与在线系统120中的其他用户分享链接以及对在线系统120中的其他用户发布的帖子做出评论,生成其他边线。
[0037] 在一个实施方式中,边线可包括均表示用户之间的交互、用户与对象之间的交互或对象之间的交互的特性的各种特征。例如,包括在边线中的特征描述两个用户之间的交互的比率、两个用户最近怎样彼此交互、由一个用户检索的关于对象的比率或信息量,或者用户发布的关于对象的评论的数量和类型。特征也可表示描述具体对象或用户的信息。例如,特征可表示用户对具体主题的兴趣的水平、用户登入在线系统120的比率或者描述关于用户的人口统计信息的信息。每个特征可与源对象或用户、目标对象或用户以及特征值有关。特征可被指定为基于描述源对象或用户、目标对象或用户或者源对象或用户与目标对象或用户之间的交互的值的表达;因此,边线可表示为一个或多个特征表达式。
[0038] 边线存储225也存储关于边线的信息,诸如,对于对象、兴趣和其他用户的亲和度分数。可基于由用户执行的动作,由在线系统120计算在一定时间内的亲和度分数或“亲和度”以估计用户对在线系统120中的对象或另一用户的兴趣。可基于由用户执行的动作,由在线系统120计算在一定时间内的用户亲和度以估计用户对于在线系统120中的对象、主题或另一用户的兴趣。亲和度的计算进一步描述在:于2010年12月23日提交的美国专利申请第12/978,265号、于2012年11月30日提交的美国专利申请第13/690,254号、于2012年11月30日提交的美国专利申请第13/689,969号以及于2012年11月30日提交的美国专利申请第
13/690,088号,其中的每一个通过引证完全结合于此。在一个实施方式中,用户与特定对象之间的多个交互可被存储为边线存储225中的单一边线。替换地,用户与特定对象之间的每个交互被存储为单独边线。在一些实施方式中,用户之间的连接可被存储在用户简档存储
205中,或者用户简档存储205可访问边线存储225以确定用户之间的连接。
[0039] 在一个实施方式中,在线系统120通过呈现至用户的“新鲜事”来识别用户可能感兴趣的故事。呈现至用户的故事描述由连接至用户的额外用户所采取的动作,并且标识该额外用户。在一些实施方式中,描述由用户执行的动作的故事可由未连接至执行该动作的该用户的用户可访问。新鲜事管理器230可基于动作日志220以及边线存储225中的信息生成用于呈现至用户的故事,或者可选择包括在内容存储210中的候选故事。故事可结合从第三方系统130接收的第三方内容。在一些实施方式中,结合第三方内容的故事可包括被包括在源自第三方系统130的故事中的内容或者故事中的内容与第三方应用115相关联的明确指示。包括与第三方应用115有关的内容或者包括从第三方系统130接收的内容的故事也可包括指向第三方应用115的指针,允许在线系统120的用户经由第三方应用115查看从第三方系统130接收的内容或者与第三方应用115有关的内容。通过新鲜事管理器230选择候选故事中的一个或多个并将其呈现至用户。
[0040] 例如,新鲜事管理器230接收向在线系统用户呈现一个或多个故事的请求。新鲜事管理器230访问用户简档存储205、内容存储210、动作日志220以及边线存储225中的一个或多个以检索关于所标识用户的信息。例如,检索与连接至所标识用户的用户有关的故事或其他数据。由新鲜事管理器230分析所检索的故事或其他数据以识别与所标识用户可能相关的内容。例如,与未连接至所标识用户的用户有关的故事或者与所标识用户针对其具有小于阈值亲和度的用户有关的故事被丢弃作为候选故事。基于各种标准,新鲜事管理器230选择候选故事中的一个或多个以用于呈现至所标识用户。
[0041] 在各种实施方式中,新鲜事管理器230通过新鲜事向用户呈现故事,该新鲜事包括被选择为用于呈现至用户的多个故事。新鲜事可包括有限数量的故事,或者可包括候选故事的完整集。包括在新鲜事中的故事的数量可通过包括在用户简档存储205中的用户偏好来部分地确定。新鲜事管理器230也可确定所选择的故事经由新鲜事呈现的顺序。例如,新鲜事管理器230确定用户对于特定用户具有最高亲和度,并且增加新鲜事中的与该特定用户有关的故事的数量或者修改新鲜事中的与特定用户有关的故事所呈现的位置。
[0042] 新鲜事管理器230也可说明用户表示对于故事类型的偏好的动作,并且选择具有与新鲜事中所包括的相同或相似类型的故事。此外,新鲜事管理器230可分析通过在线系统120从各种用户接收的故事,以便从分析的故事中获得关于用户偏好或动作的信息。该信息可用于细化用于呈现至各种用户的新鲜事的故事的后续选择。
[0043] 授权服务器235施加在线系统120的用户的一种或多种隐私设置。用户的隐私设置确定与用户有关的具体信息可被如何共享,并且可被存储在用户简档存储205中的用户的用户简档中或者被存储在授权服务器235中并且与用户简档相关。在一个实施方式中,隐私设置规定与用户有关的具体信息,并且标识指定信息可与其共享的实体或多个实体。可与其分享信息的实体的实例可包括其他用户、应用、第三方系统130或可潜在访问该信息的任何实体。用户可分享的信息的实例包括类似简档照片的用户简档信息、与用户相关联的电话号码、用户的连接、由用户采取的诸如添加连接、更改用户简档信息的动作等。
[0044] 可以不同粒度级别提供隐私设置说明。在一个实施方式中,隐私设置可标识与其他用户分享的特定信息。例如,隐私设置标识工作电话号码或特定组的相关信息,诸如,包括简档照片、家庭电话号码以及状态的个人信息。可替代地,隐私设置可应用于与用户相关联的所有信息。还可以各种粒度级别指定可访问特定信息的实体集的说明。可与其共享信息的各种实体集可包括例如,连接至用户的所有用户、连接至用户的一组用户、连接至该用户所连接的用户的额外用户、所有应用、所有第三方系统130、特定第三方系统130或所有外部系统。
[0045] 一个实施方式使用实体的列举来指定允许访问所标识信息的实体或者标识呈现至不同实体的信息的类型。例如,用户可指定通信至其他用户或通信至指定组的用户的动作的类型。替换地,用户可指定未公布或呈现至其他用户的动作或其他信息的类型。
[0046] 授权服务器235包括判定用户的好友、第三方系统130和/或其他应用以及实体是否可访问与用户相关联的特定信息的逻辑。例如,尝试访问用户关于与第三方系统130有关的统一资源定位符(URL)的评论的第三方系统130必须从授权服务器235获得授权以访问与用户有关的信息。授权服务器235基于用户的隐私设置来判定是否允许另一用户、第三方系统130、应用或另一实体访问与该用户相关联的信息,包括有关用户采取的动作的信息。例如,授权服务器235使用用户的隐私设置来判定用户关于与第三方系统130有关的URL的评论是否可呈现至第三方系统130或者可呈现至另一用户。这使用户的隐私设置能够指定允许哪些其他用户或其他实体接收有关用户动作的数据或者与用户相关联的其他数据。
[0047] 在一些实施方式中,授权服务器235可包括用户许可,其管控与用户有关的且由在线系统120保持的用户简档与第三方应用115的交互的关联。这些用户许可可用于判定是否将描述用户与第三方应用的交互的信息与在线系统140的用户有关的用户简档相关联。此外,这些用户许可允许用户指定与用户有关的用户简档中的信息可用于个性化第三方应用115的一个或多个界面的程度,该第三方应用与关于由在线系统120保持的用户的用户简档的一个或多个交互相关联。
[0048] 网络服务器240经由网络140将在线系统120链接至一个或多个客户端设备100以及一个或多个第三方系统130。网络服务器120服务于网页以及其他网络相关的内容,诸如,XML等。网络服务器240可接收并路由在线系统120与客户端设备100之间的消息,例如,即时消息、队列消息(例如,电子邮件)、文本消息、短消息服务(SMS)消息或使用任意其他合适消息技术发送的消息。用户可向网络服务器240发送请求以上传存储在内容存储210中的信息(例如,图像或视频)。此外,网络服务器240可提供应用编程接口(API)功能以直接向本地移动设备操作系统(诸如, ANDROIDTM、 或
BlackberryOS)发送数据。
[0049] 跨应用的用户交互关联
[0050] 图3是用于将跨客户端设备100上执行的应用的用户交互相关联的过程的一个实施方式的流程图。结合图3描述的过程的步骤可以结合图3描述的顺序的不同顺序执行。例如,描述为同时的步骤可按顺序或部分并行执行。在一些实施方式中,可执行与结合图3描述的那些步骤不同和/或额外的步骤。
[0051] 在线系统120接收310源自第三方系统130的第三方内容,该第三方内容包括指向与第三方系统130有关的第三方应用115的指针。与第三方系统130有关的用户创建第三方内容,或者第三方系统130可生成第三方内容。例如,第三方内容包括图像以及指向第三方应用115的指针,允许使用第三方应用115查看图像。第三方内容也可包括第三方系统130中的第三方内容的唯一标识符或者用于从第三方系统130检索第三方内容的其他合适信息。在线系统120可将其自身唯一标识符分配至第三方内容或使用第三方系统130中的第三方内容的标识符。
[0052] 在线系统120将第三方内容传输320至客户端设备100以用于呈现在与在线系统120有关的客户端应用105中。在一个实施方式中,在线系统120将第三方内容并入由在线系统120生成的故事,包括第三方内容以及指向第三方应用115的指针。例如,在线系统120基于用户与包含第三方内容的故事之间的亲和度,来选择用于包括在用于用户的新鲜事中的故事。例如,如果用户具有对于故事所标识的用户的高亲和度或者如果用户针对包括相似于第三方内容的内容的先前呈现的故事向在线系统120给出正面反馈,则用户具有对于故事的高亲和度。在一些实施方式中,如果第三方系统130对于呈现故事补偿在线系统120或者如果由在线系统120从当前时间的阈值时间间隔内接收310到第三方内容,则在线系统
120修改用户对于包括第三方内容的故事的亲和度。可选地或除了使用亲和度以外,在线系统120使用由用户的偏好所指定的一个或多个确定性规则来基于故事的特性过滤用于呈现至用户的故事。故事的用于过滤的示例性特征包括:故事所标识的用户、生成故事的用户、包括在故事中的第三方内容的类型、包括在故事中的内容的来源(例如,第三方系统130)、包括在故事中的第三方内容的来源应用(例如,第三方应用115)或者与第三方内容相关联的位置。可选地或除了在线系统120选择用于呈现至客户端设备100的用户的第三方内容以外,用户可请求查看第三方内容。例如,客户端设备100的用户请求查看与有关第三方内容的指定用户相关联的内容。
[0053] 在客户端设备100上执行的客户端应用105呈现客户端设备100从在线系统120接收的第三方内容。如果客户端设备100的用户与由客户端应用105呈现的第三方内容交互,则在线系统120获得330属性标识符以及经由客户端应用105与第三方内容的交互的记录。交互的记录描述与第三方内容的交互。交互的示例性记录包括第三方内容(或第三方内容的标识符)、客户端设备100的标识符、与客户端应用105相关联的用户简档的标识符、交互的时间或其他合适信息。在各种实施方式中,交互的记录包括客户端设备100的标识符、客户端应用105的标识符、客户端设备100的操作系统的标识符或客户端设备100的另一软件或硬件部件的标识符中的一个或多个。交互数据的记录也可表示客户端设备100的状态,诸如,由包括在第三方内容中的指针标识的第三方应用115是否安装在客户端设备100上的指示。
[0054] 在线系统120响应于交互(其使得客户端设备100发起由包括在第三方内容中的指针所标识的第三方应用115)而从客户端应用105接收330属性标识符。在一个实施方式中,客户端设备100通过将输入映射至输出的散列函数生成属性标识符。散列函数使用描述交互的数据作为输入,并且决定性地从该输入生成属性标识符,使得不可以确定性或计算可行的方式确定原始输入。在一些实施方式中,为了确保不能从属性标识符确定执行交互的用户的身份,客户端设备100可使用加密散列函数。可选地或除了使用散列函数以外,客户端设备100可随机生成属性标识符。属性标识符可包括额外数据以便将属性标识符与客户端应用105相关联。例如,属性标识符包括标准前缀或后缀。替换接收属性标识符,在线系统120从客户端设备100接收描述与第三方内容的交互的数据,通过交互数据的散列生成属性标识符,并且将生成的属性标识符传输至客户端设备100。
[0055] 随后,在线系统120从第三方系统130接收340属性标识符以及描述与第三方系统130有关的第三方应用115的交互的信息。第三方系统130从第三方应用115接收属性标识符以及描述交互的信息。在一个实施方式中,描述与第三方系统130的交互的信息与由第三方应用115生成的执行标识符相关联。执行标识符标识与来自客户端应用105的第三方应用
115的执行或发起相对应的交互。对于未注册或登入第三方系统130的用户,执行标识符可用作临时用户标识符。在线系统120可从第三方系统130实时(例如,在由第三方应用115检索第三方内容之前,当动作被记录在第三方应用115时)或者作为批处理(例如,周期性地或者响应于接收到描述交互的信息以及相关联的标识符)接收340属性标识符。
[0056] 描述与第三方应用115的交互的信息可指定与第三方内容的交互的属性(例如,交互的持续时间、响应于交互而执行的动作的描述)。与第三方应用的示例性交互包括查看文本或图像的不同部分的导航命令、通过音频或视频数据的导航命令或者诸如表示赞成或不赞成的评论或动作的社交交互。由信息描述的交互也可包括与其他第三方内容的交互。在一个实施方式中,第三方应用115在呈现第三方内容之前,向用户呈现注册界面,或者第三方内容是注册界面。在这种情况下,所描述的交互包括与注册过程的交互,并且交互的描述表示通过注册界面的字段的进展(例如,在注册界面的不同字段或视图上所花费的时间、成功提交、不规则或不正确提交、与无需注册即可访问的预览内容的交互)。描述与第三方应用115的交互的信息可包括与第三方应用115的交互相关联的度量。示例性度量是访问第三方应用115所花费的时间或者与第三方内容的交互的数量。另一示例性度量是用户与其交互的广告相关联的收入。在一个实施方式中,从客户端设备100获得330的属性标识符和/或从第三方系统130接收340的属性标识符不包括由在线系统120使用或者由第三方系统130使用的用户标识符以保护用户隐私。
[0057] 在线系统120确定350从客户端设备100获得330的属性标识符是否与从第三方系统130接收的属性标识符340相匹配。在线系统120将属性规则应用至从客户端设备100获得330的属性标识符以及从第三方系统130接收340的属性标识符以及描述与第三方应用115的交互的信息作为属性模型的一部分。在一个实施方式中,在线系统120将从第三方系统
130接收340的属性标识符与从客户端设备100获得330的属性标识符相匹配。如果从第三方系统130接收340的属性标识符与从客户端设备100获得330的属性标识符相匹配,则在线系统120将从第三方系统130接收的与第三方应用115的交互与有关从客户端设备100获得330的属性标识符的用户简档相匹配。
[0058] 属性模型推断与从第三方系统130接收340的属性标识符相关联的用户与第三方应用115的交互与经由客户端应用105与包括指向第三方内容的指针的内容的交互相对应。如果用户经由客户端应用105与包括指向第三方内容的指针的内容进行多次交互,则在线系统120接收描述与第三方应用115的各种交互的信息,各个交互均与对应于第三方应用
115的执行的不同属性标识符相关联。通过经由客户端应用105与包括指向第三方应用115的指针的内容交互,属性模型将用于匹配第三方应用115的执行的规则提供至描述与第三方应用115的交互的对应信息。响应于在阈值时间间隔内从第三方系统130的接收340的与包括指针的第三方内容交互,一个示例性规则将描述与第三方应用115的交互的信息以及从客户端设备100获得330的属性标识符与属性标识符以及描述与第三方应用115的交互的信息相匹配。其他示例性属性规则在接收340描述与第三方应用115的交互的信息之前的阈值时间段内,在来自与不同第三方内容的交互中,将描述与第三方应用115的交互的信息与从客户端设备100获得330的每个属性标识符相关联。
[0059] 响应于确定从客户端设备100获得330的属性标识符与从第三方应用115接收340的属性标识符相匹配,在线系统120将描述与第三方应用115的交互的信息与客户端应用105的交互相关联360。在线系统120可进一步将描述与第三方应用115的交互的信息与由在线系统120保持的用户的用户简档相关联。在一个实施方式中,将描述与第三方应用115的交互的信息与客户端应用105的交互进行匹配,为评估包括在内容中的广告的有效性提供更好的度量。例如,广告商向在线系统120支付一金额以用于对用户形成广告印象,支付更高金额以用于与广告的交互(其使得执行第三方应用115),并且支付甚至更高金额以用于与广告的交互以引起第三方应用115中的有价值动作(例如,参与商业交易、利用第三方系统130注册用户帐户或以另外方式与第三方内容交互)。将用户与客户端应用105以及与第三方应用115的交互相关联也增加对指向第三方内容的指针如何影响在线系统120的使用的了解。例如,该关联数据可表示通过向广告提供向第三方应用115的链接所带来的收入增长是否被在线系统120交互所花费的较少时间所带来的收入损失所抵消。
[0060] 在一个实施方式中,将与第三方应用115的交互与客户端应用105的一个或多个交互相关联可增强有关第三方应用115的用户体验。例如,如果用户不具有第三方系统130的用户帐户,则第三方应用115基于由在线系统120针对该用户所保持的用户简档向用户呈现由第三方应用115创建的预配置简档。作为另一实例,第三方应用115基于通过在线系统120与用户相关联的信息(例如,基于用户兴趣的内容,与连接至在线系统120中的该用户的用户的用户简档相关联的公开可用内容)使用可能会吸引用户的内容,来个性化注册界面。在另一实例中,即使用户未登入由第三方系统130针对该用户所保持的帐户,也基于由在线系统120保持的其用户简档,来个性化用于用户的第三方内容。因此,即使第三方系统130不维持用于用户的帐户,将用户与第三方应用115的交互与在线系统120中的用户简档相关联也允许经由第三方系统130呈现至用户的广告或推荐的个性化。
[0061] 图4是根据实施方式的用于跨客户端设备100上执行的应用报告用户的交互的过程的流程图。客户端设备100从在线系统120接收410第三方内容。第三方内容源自第三方系统130。例如,在线系统120向客户端设备100推送第三方内容。作为另一实例,客户端设备100请求与第三方系统130相关联或者与在线系统120的各种用户相关联的内容。
[0062] 客户端设备100通过客户端应用105呈现420第三方内容。例如,客户端应用105使用第三方内容中的指针检索来自在线系统120或来自第三方系统130的媒体。例如,第三方内容是低分辨率或部分模糊的图像,其中,伴随有说明可在第三方应用115中查看完整的、高质量图像的文本。第三方内容也可包括源自第三方系统130中的第三方内容的图形或文本指示。在一个实施方式中,客户端设备100确定第三方应用115是否安装在客户端设备100上,并且显示选择的指示是否将打开第三方应用115或者将发起第三方应用115的下载的指示。
[0063] 客户端设备100接收430与通过在客户端设备100上执行的客户端应用105呈现的第三方内容的交互。与第三方内容的交互的实例包括选择第三方内容以扩大客户端应用105内的第三方内容的预览或者指向第三方内容的指针的图形表示的选择。交互可以是与第三方内容源自第三方系统130的图形指示的交互,或者与标识第三方系统130的授权第三方内容的用户的信息的交互。与第三方内容的交互的额外实例包括向客户端设备100的用户呈现第三方内容(即,内容的印象)或者如果第三方应用115未安装在客户端设备100上,则选择指针以安装第三方应用。
[0064] 客户端设备100获得440与客户端应用105以及第三方内容相对应的属性标识符。在一个实施方式中,客户端应用105获取描述所接收的交互的数据(例如,第三方内容的标识符、描述与第三方内容的交互的标识符、与在线系统120的用户相关联的标识符)并生成属性标识符(例如,以散列函数)。客户端设备100在共享存储器110中存储450生成的属性标识符。在一个可替换实施方式中,客户端应用105将描述与第三方内容的交互的数据传输至生成属性标识符的在线系统120。客户端设备100从在线系统120接收生成的属性标识符,并且将生成的属性标识符存储450在共享存储器110中。
[0065] 客户端设备100经由客户端应用105将属性标识符以及接收的与第三方内容的交互的描述传输455至在线系统120。在接收430交互之后,客户端应用105可基本实时地传输455交互的描述以及与交互相关联的一个或多个标识符(例如,客户端设备标识符、执行交互的用户的标识符等)。替换地,客户端设备100周期性地或响应于状况(关闭、终止或最小化第三方应用115或客户端应用105)传输455属性标识符以及所接收的交互的描述。在其中在线系统120生成属性标识符的可替换实施方式中,属性标识符不被发送至在线系统120,该在线系统在属性标识符生成之后存储该属性标识符。
[0066] 响应于接收通过客户端应用105与第三方内容的交互,客户端设备100执行460第三方应用115。在一个实施方式中,当执行460第三方应用115时,第三方应用115基于包括在第三方内容中的指针的信息以具体状态操作。例如,执行460第三方应用115以呈现显示第三方内容的状态或显示关于与第三方内容相关的用户的内容的状态。例如,基于指针中的信息,第三方应用115检索来自第三方系统130的第三方内容,并且当第三方应用被执行460时,呈现第三方内容。执行第三方应用115可包括通过提供由第三方应用115呈现的一个或多个字段中的用户数据来提示用户注册或登入第三方系统130。
[0067] 执行第三方应用115可包括在客户端设备100上安装第三方应用115。例如,客户端设备100确定第三方应用115是否被安装在客户端设备100上(或者第三方应用115的至少阈值版本是否被安装以保证将第三方应用更新为更新的版本)。响应于确定第三方应用115未被安装在客户端设备100上,在接收430与由客户端应用105呈现的第三方内容的交互之后,客户端设备100提示用户下载第三方应用115。为了安装第三方应用115,客户端设备100检索来自第三方系统130或来自一不同实体(例如,承载可用应用以供购买或自由下载的服务器)的第三方应用115,并且安装第三方应用115。在安装之后,客户端设备100在第三方应用115中呈现第三方内容(或提示用户注册或登入第三方系统130)。
[0068] 基于指向第三方内容的指针,第三方应用115检索来自第三方系统130(或来自任意其他合适来源)的第三方内容,并且呈现第三方内容。第三方内容可包括在由客户端应用105呈现了的第三方内容中呈现的元素。例如,第三方内容是通过客户端应用105呈现作为第三方内容的更高质量版本的图像。在一个实施方式中,第三方内容可以是用于创建第三方系统130的帐户的注册界面,或者用于以另外方式初始化用户与第三方系统130的交互。
[0069] 客户端设备100确定470描述客户端设备100的用户与第三方应用115的交互的信息。例如,第三方应用115捕获标识用户与第三方内容的交互、标识用户与额外第三方内容的交互或者标识用户与广告的交互的数据。经由第三方应用115与内容的示例性交互包括:内容的印象或客户端设备100经由第三方应用115呈现(例如,视觉或听觉)内容所花费的时间的量。如果第三方应用115向用户呈现注册(或登入)过程,则第三方应用115确定470描述与注册的交互的信息,诸如输入的数据以及通过注册过程的累积进度。可选地或另外地,客户端设备100可确定对应于与第三方应用115的交互的度量(例如,交互的数量、交互的时间、相关收入)。
[0070] 在一个实施方式中,第三方应用115检索480来自共享存储器110的属性标识符并且生成执行标识符,该执行标识符标识第三方应用115的执行并且在执行第三方应用115之后与第三方应用115的交互相关联。例如,用户关闭第三方应用115,重新执行客户端应用105,并且再次选择指向第三方应用115的指针。在该实例中,第三方应用115再次执行,检索来自共享存储器110的另一属性标识符,并且生成另一执行标识符以便关联用户与第三方应用115的后续交互。可使用各种确定性或随机技术生成执行标识符。例如,通过将散列函数应用至描述与客户端应用105的交互输入,来生成执行标识符。在一个实施方式中,第三方应用115将散列函数应用至从共享存储器110检索的属性标识符或其他可用信息(例如,设备标识符、第三方系统130中的用户的标识符)。与第三方应用115的交互与生成的执行标识符相关联。
[0071] 客户端设备100将描述与第三方应用115的交互的信息传输490至与属性标识符相关联的第三方系统130。客户端设备100可将额外信息(诸如,生成的执行标识符、设备标识符、第三方内容标识符、第三方用户标识符或与第三方应用115的执行相关联的其他信息)传输490至第三方系统130。当用户与第三方应用115交互时,描述与第三方应用115的交互的信息以及属性标识符可被实时传输490,可以周期性间隔被传输490,或者可响应于一个或多个交互(例如,关闭、终止或最小化第三方应用115)而被传输490。
[0072] 示例性用户界面
[0073] 图5A、图5B和图5C示出客户端应用105和第三方应用115的示例性用户界面。图5A示出呈现在客户端应用105的界面中的包括指向第三方内容的指针的第三方内容。第三方内容包括用户名字505、第三方应用名称510、第三方内容的预览515以及表示指向第三方应用115的指针的图标520。用户名字505表示与在线系统120的用户相关联的用户名字,并且与通过在线系统120针对用户所保持的用户简档相关联。第三方应用名称510表示通过第三方系统130生成第三方内容,并且该内容包括指向第三方应用115的指针。图5A的实例中的第三方内容的预览515是图像。图标520表示第三方应用115,并且可通过用户选择(交互)以在第三方应用115中查看第三方内容。
[0074] 图5B和图5C示出第三方应用115的界面中的第三方内容。第三方内容包括第三方应用用户名字525和第三方内容530。第三方用户名字525是与第三方系统130的用户相关联的用户名字,并且可不同于用户的第三方用户标识符。在图5B的实例中,第三方内容530是图像。在该实例中,预览515中的图像基本上不会不同于第三方内容530,但是预览515也可能更小、更模糊或者是例如以另外方式修改的第三方内容530的视图。
[0075] 在一个实施方式中,第三方应用115根据是否用户选择公共可用的第三方内容还是另一用户已选出的对用户可用的隐私第三方内容,来使用不同用户界面呈现第三方内容530。在此实施方式中,图5B对应于公共可用的第三方内容,并且图5C对应于由与客户端应用105交互的用户可访问的私人可用的第三方内容。在图5C中,第三方内容530的缩略图显示作为张贴第三方内容530的用户的用户简档页面535的一部分。该用户简档页面535包括关于张贴第三方内容530的描述性信息以及通过张贴第三方内容530的用户上传的其他第三方内容。
[0076] 图6A、图6B和图6C示出客户端应用105和第三方应用115的额外示例性用户界面。图6A和图6B示出呈现在客户端应用105的界面中的包括指向第三方应用115的指针的第三方内容。第三方内容包括用户名字605、第三方应用名称610、第三方内容的预览615以及表示指向第三方应用115的指针的图标620。用户名字605是与在线系统120的用户相关联的用户名字,并且与有关在线系统120的用户的用户简档相关联。第三方应用名称610表示通过第三方系统130生成的内容,并且该内容包括指向第三方应用115的指针。图6A的实例中的第三方内容的预览615是图像。图标620表示第三方应用115,并且可通过用户选择(交互)以在第三方应用115中查看第三方内容。在示出的界面中,图标620呈现与第三方内容相关联的第三方应用115是否安装在客户端设备100上的确定。图6A示出如果第三方应用115未安装在客户端设备100上所呈现的图标620A。图标620A表示图标620A的选择发起第三方应用
115的安装。图6B示出如果第三方应用115安装在客户端设备上所呈现的图标620B,并且表示图标620B的选择执行第三方应用115以显示第三方内容。
[0077] 图6C示出第三方应用115的界面中的第三方内容。第三方内容包括第三方应用用户名字625和第三方内容630。第三方用户名字625表示与第三方系统130的用户相关联的用户名字,并且可不同于用户的第三方用户标识符。示例性第三方内容630是图像。在该实例中,预览615中的图像基本上不会不同于第三方内容630,但是它们的预览615也可更小、更模糊或者例如以另外方式修改的第三方内容630的视图。
[0078] 概括
[0079] 本发明的实施方式的上述描述仅出于说明的目的而呈现,并且不旨在穷尽或者将本发明局限于所公开的确切形式。相关领域技术人员应理解,根据上述公开内容,能够有多种修改和变化。
[0080] 该描述的某些部分根据算法和有关信息的操作的符号表示描述了本发明的实施方式。这些算法描述和表示通常由数据处理领域的技术人员使用,以便将他们的工作实质有效传达给本领域的其他技术人员。这些运算,当被描述为功能性、计算性或逻辑性时,被理解为由计算机程序或等同电路、微码等实现。此外,有时,把这些运算的安排称为模块也是方便的,并且不失其一般性。所描述的运算及其关联模块可具体化为软件、固件、硬件或其任意组合。
[0081] 本文描述的任何步骤、操作或流程可利用一个或多个硬件或软件模块单独或与其他设备组合执行或实现。在一个实施方式中,软件模块利用计算机程序产品实现,该计算机程序产品包括包含计算机程序代码的计算机可读介质,该程序代码可由用于执行所描述的任何或所有步骤、操作或过程的计算机处理器执行。
[0082] 本文中,本发明的实施方式还可涉及用于执行操作的装置。该装置可针对需要目的而具体构造和/或该装置可包括由存储在计算机中的计算机程序选择性激活或重新配置的通用计算设备。这种计算机程序可被存储在非易失性、有形计算机可读存储介质中,或者适用于存储电子指令的可耦接至计算机系统总线的任何类型的介质。而且,本说明书中提及的任何计算系统可包括单一处理器或者可以是采用多处理器设计的架构,以提高计算能力。
[0083] 本发明的实施方式还可涉及通过本文描述的计算过程生产的产品。这种产品可包括从计算处理得到的信息,其中,信息存储在非易失性、有形计算机可读存储介质中,并且可包括本文中描述的计算机程序产品或其他数据组合的任意实施方式。
[0084] 最后,原则上出于可读性和说明性之目的来选择本说明书中使用的语言,并且所使用的语言并不被选择来划定或者限制本发明的主题。因此,其旨在本发明的范围不由该详细实施方式限定,而是由对基于本文的申请提出的任何权利要求来限定。因此,本发明的实施方式的公开内容旨在说明而非限制在以下权利要求中阐述的本发明的范围。