CN113383336A - 第三方应用管理 - Google Patents

第三方应用管理 Download PDF

Info

Publication number
CN113383336A
CN113383336A CN201980086279.0A CN201980086279A CN113383336A CN 113383336 A CN113383336 A CN 113383336A CN 201980086279 A CN201980086279 A CN 201980086279A CN 113383336 A CN113383336 A CN 113383336A
Authority
CN
China
Prior art keywords
user
user interface
web
display
application
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.)
Pending
Application number
CN201980086279.0A
Other languages
English (en)
Inventor
J·詹森
D·S·艾林伯格
A·R·奥斯本
W·吴
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.)
Snap Inc
Original Assignee
Snap Inc
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 Snap Inc filed Critical Snap Inc
Publication of CN113383336A publication Critical patent/CN113383336A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00501Tailoring a user interface [UI] to specific requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • 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/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72436User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for text messaging, e.g. short messaging services [SMS] or e-mails

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

公开了用于运行网页视图应用的安全应用的方法和系统。在一些方面,用户数据可以在第一安全域内得到保护,其对于在第二应用内运行的网页视图应用是不可访问的。当从网页视图应用接收到显示用户界面的请求时,第二应用经由第二安全域访问该用户数据。第二应用然后至少部分地基于该用户数据显示该用户界面。

Description

第三方应用管理
优先权要求
本申请是2018年12月28日提交的美国专利申请号16/236,088的延续并要求其优先权,该申请的全部内容通过引用并入本文。
技术领域
本公开大体上涉及虚拟货币的技术领域。特别地,所公开的实施例提供社交网络内的虚拟货币。
背景技术
社交网络应用支持广泛的功能,而且这些功能还在不断扩展。其中一些功能包括将第三方应用集成到社交网络框架中的能力。虽然第三方应用可以通过重要方式增强社交网络功能,但用户数据细分通常非常重要。
附图说明
在不一定按比例绘制的附图中,相似的标号可以在不同的视图中描述相似的部件。具有不同字母后缀的相似数字可以表示相似部件的不同实例。在附图的图中,通过示例而非限制的方式示出了一些实施例。
图1是示出了根据一些实施例的用于通过网络交换数据(例如,消息和相关联的内容)的示例消息传递系统的框图;
图2是示出了根据一些实施例的关于消息传递系统的进一步细节的框图;
图3是示出了根据一些实施例的可以存储在消息传递系统的数据库中的数据的示意图;
图4是示出了根据一些示例实施例的形成消息传递系统的一部分的馈送显示系统的功能部件的框图;
图5示出了消息传递客户端应用104的各个部件之间的消息流的概览图;
图6示出了可由一个或多个所公开的实施例维护的示例数据结构;
图7A是一种用于响应于来自在网页视图中运行的应用的请求而显示用户界面的方法的流程图;
图7B是一种用于通过不具有对用户数据的访问的网页视图来显示用户界面的方法的流程图;
图8是一种用于标识要显示的用户界面的方法的流程图;
图9示出了一种可以在至少一些公开的实施例中实现的示例用户界面结构;
图10示出了可以在所公开的实施例中的至少一些实施例中实施的两个消息的示例;
图11示出了可以在所公开的实施例中的一个或多个实施例中实施的用户界面的示例;
图12示出了可以在所公开的实施例中的一个或多个实施例中实施的用户界面的示例;
图13示出了可以在所公开的实施例中的一个或多个实施例中实施的示例用户界面;
图14示出了可以在所公开的实施例中的一个或多个实施例中实施的示例用户界面;
图15示出了可以在所公开的实施例中的一个或多个实施例中实施的示例用户界面;
图16是说明代表性软件架构的框图,其可与本文所述的各种硬件架构结合使用;以及
图17是示出根据一些示例性实施例的能够从机器可读介质(例如,机器可读存储介质)读取指令并执行本文中讨论的任何一种或多种方法的机器的部件的框图。
具体实施方式
以下描述包括实施本公开的说明性实施例的系统、方法、技术、指令序列和计算机程序产品。在以下描述中,为了解释的目的,阐述了许多具体细节以提供对本发明主题的各种实施例的理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节的情况下实践本发明主题的实施例。一般来说,众所周知的指令实例、协议、结构和技术不一定详细显示。
公开了提供在网页视图(web view)内启动和运行第三方应用的实施例。网页视图可以经由嵌入在社交网络应用中的浏览器应用来实现。为了限制对社交网络应用可用的用户数据的访问,网页视图可以被运行在与社交网络应用本身分离的安全域中。在一些方面,网页视图应用被捆绑在移动设备应用内。使用网页视图应用可以允许使用基于网页的技术,诸如HTML、JavaScript、CSS等中的一种或多种,来构建移动应用。网页视图应用可以捆绑在在移动装置操作系统上本机运行的应用中。
某些用户界面可能只能从社交网络应用访问,而不能经由网页视图访问。例如,如果用户界面需要访问用户数据以执行其功能,它将无法从网页视图执行此操作,并且可能需要依靠社交网络应用来代表其显示此用户界面。在一些实施例中,网页视图还可以被配置在安全域中,该安全域阻止访问金融信息,诸如虚拟货币余额信息(例如代币余额)、提供销售或购买虚拟货币的商店(代币商店)。此外,确认金融交易的对话框也可能对网页视图应用不可用。因此,社交网络应用可以在代表网页视图应用执行任何金融交易之前显示确认对话框。
为了促进这一点,网页视图应用可以生成显示用户界面的请求。该请求被提供给社交网络应用。该请求可以指示用于选择合适的用户界面来显示的一个或多个参数。例如,该请求可以指定要显示的用户界面的特定类型和其他标准。另一个标准可以涉及例如要显示的用户界面的特征。例如,该请求可以指示应该显示视频、图像或其他类型的内容。
然后社交网络应用在需要时访问用户数据以完成该请求。例如,选择要显示的用户界面可以包括将要显示的可用用户界面与将向其显示用户界面的用户的一个或多个特征进行匹配。选择用户界面还可以包括选择根据由网页视图应用提供的参数的用户界面。
在显示用户界面时,监测用户界面所接收到的输入。例如,可以监测用户界面以确定用户是否与用户界面互动、用户界面是否被取消、用户界面的部分是否被用户跳过、用户界面是否被制作为背景窗口、或在显示时失去焦点,或用户与用户界面互动的其他指示。
用户界面的显示可以确定虚拟货币如何分配给用户账户。例如,可用于显示的每个用户界面可以与可以记入显示用户界面的账户的特定数量的虚拟货币相关联。根据用户界面的显示结果,可以记入特定金额的一部分或全部。例如,如果用户观看了40%的视频,则可用虚拟货币的40%可能会记入用户的帐户。
因此,通过将用户界面的显示委托给社交网络应用,可以使用限制对用户数据的访问的安全域来维护在网页视图内运行的基于网页的应用。这提供了更安全的计算环境,尤其是当那些基于网页的应用由第三方开发时,无法保证第三方的技术技能和/或动机来确保所述用户数据的安全性。
图1是示出用于通过网络交换数据(例如,消息和相关联的内容)的示例消息传递系统100的框图。消息传递系统100包括多个客户端装置102,每个客户端装置托管包括消息传递客户端应用104在内的多个应用。每个消息传递客户端应用104经由网络106(例如,因特网)通信地耦合到消息传递客户端应用104和消息传递服务器系统108的其他实例。如本文所使用的,术语“客户端装置”可以指与通信网络(诸如网络106)接口以从一个或多个服务器系统或其他客户端装置获得资源的任何机器。客户端装置可以是但不限于移动电话、台式计算机、膝上型计算机、便携式数字助理(PDA)、智能电话、平板电脑、超极本、上网本、膝上型计算机、多处理器系统、基于微处理器的或可编程的消费电子系统、游戏机、机顶盒或用户可用于访问网络的任何其他通信装置。
在图1所示的示例中,每个消息传递客户端应用104能够经由网络106与另一个消息传递客户端应用104和消息传递服务器系统108通信和交换数据。在消息传递客户端应用104之间以及在消息传递客户端应用104和消息传递服务器系统108之间交换的数据包括功能(例如,调用功能的命令)以及有效载荷数据(例如,文本、音频、视频或其他多媒体数据)。
网络106可以包括自组织网络、内联网、外联网、虚拟专用网(VPN)、局域网(LAN)、无线局域网(WLAN)、广域网(WAN)、无线广域网(WWAN)、城域网(MAN)、因特网、因特网的一部分、公共交换电话网(PSTN)的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、
Figure BDA0003132760610000051
网络、另一种类型的网络或两个或多个这些网络的组合或与其结合。例如,网络106或网络106的一部分可以包括无线或蜂窝网络并且到网络106的连接可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接、或其他类型的蜂窝或无线耦合。在该示例中,所述耦合可以实现多种类型的数据传输技术中的任何一种,诸如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线电服务(GPRS)技术、增强型数据速率GSM演进(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波互操作性接入(WiMAX)、长期演进(LTE)标准或由各种标准制定组织定义的其他技术、其他远程协议或其他数据传输技术。
消息传递服务器系统108经由网络106向特定的消息传递客户端应用104提供服务器端功能。尽管消息传递系统100的某些功能在本文中被描述为由消息传递客户端应用104或由消息传递服务器系统108执行,但是应当理解,某些功能在消息传递客户端应用104或消息传递服务器系统108内的位置是一种设计选项。例如,在技术上可能优选的是:最初在消息传递服务器系统108内部署某些技术和功能,但是稍后在客户端设备102具有足够处理能力的情况下将该技术和功能迁移到消息传递客户端应用104。
消息传递服务器系统108支持提供给消息传递客户端应用104的各种服务和操作。此类操作包括向消息传递客户端应用104发送数据、从其接收数据以及处理由其生成的数据。作为示例,该数据可以包括消息内容、客户端设备信息、地理位置信息、媒体注释和覆盖、消息内容持久性条件、社交网络信息和现场事件信息。消息传递系统100内的数据交换通过经由消息传递客户端应用104的用户界面(UI)可用的功能来调用和控制。
现在具体转向消息传递服务器系统108,应用编程接口(API)服务器110耦合到应用服务器112,并且向应用服务器112提供编程接口。应用服务器112通信耦合到数据库服务器118,这有助于访问数据库120,数据库120中存储有与应用服务器112处理的消息相关联的数据。
API服务器110在客户端装置102和应用服务器112之间接收和传输消息数据(例如,命令和消息有效载荷)。具体地,API服务器110提供一组接口(例如,例程和协议),其可以被消息传递客户端应用104调用或查询以便调用应用服务器112的功能。API服务器110公开应用服务器112支持的各种功能,包括账户注册;登录功能;经由应用服务器112从特定消息传递客户端应用104向另一个消息传递客户端应用104发送消息;将媒体文件(例如,图像或视频)从消息传递客户端应用104发送到应用服务器112,以供另一个消息传递客户端应用104可能访问;媒体数据集合(例如,故事)的设置;客户端装置102的用户的朋友列表的检索;这些集合的检索;消息和内容的检索;在社交图中添加和删除朋友;朋友在社交图中的位置;以及应用事件的检测(例如,与消息传递客户端应用104有关)。
应用服务器112托管多个应用和子系统,包括消息传递服务器应用114和社交网络系统116。消息传递服务器应用114实现许多消息处理技术和功能,特别是与从消息传递客户端应用104的多个实例接收到的消息中包括的内容(例如,文本和多媒体内容)的聚合和其他处理有关。如将进一步详细描述的,来自多个源的文本和媒体内容可以聚合成内容集合(例如,称为故事或图库)。这些集合然后由消息传递服务器应用114提供给消息传递客户端应用104。鉴于此类处理的硬件要求,其他处理器和存储器密集型数据处理也可以由消息传递服务器应用114在服务器端执行。
社交网络系统116支持各种社交网络功能和服务,并使这些功能和服务对消息传递服务器应用114可用。为此,社交网络系统116维护并访问数据库120内的实体图。社交网络系统116支持的功能和服务的示例包括特定用户与之有关系或用户正在“关注”的消息传递系统100的其他用户的标识,以及其他实体的标识和特定用户的兴趣。
图2是示出根据示例性实施例的关于消息传递系统100的进一步细节的框图。具体地,消息传递系统100被示为包括消息传递客户端应用104和应用服务器112,它们继而包含多个子系统,即用户账户管理部件202、虚拟货币部件204、用户界面管理部件206和第三方应用管理部件208。
用户账户管理部件202管理社交网络系统116的用户账户。例如,用户账户管理部件202可以为由社交网络系统116维护的每个用户账户维护认证凭证。用户账户管理部件202还可以基于由客户端装置提供的认证凭证来建立会话。基于成功的认证,会话可以提供对资源的访问,诸如对用户数据、内容的访问,或对社交网络上的其他用户的访问。
虚拟货币部件204管理社交网络系统内的虚拟货币。例如,虚拟货币部件204可以向一个或多个用户账户分配一定数量的虚拟货币。虚拟货币部件204可以管理用户账户内的货币余额。例如,当用户账户执行某些操作时,用户账户的虚拟货币可能会增加或减少,这具体取决于操作。
用户界面管理部件206管理由消息传递客户端应用104呈现的用户界面。在一些方面,消息传递客户端应用104的用户界面可以基于来自第三方应用(诸如运行在浏览器中的第三方应用)的请求而被调用。在一些方面,浏览器可以被捆绑在消息传递客户端应用104内,例如,作为网页视图。因此,可能需要管理在网页视图中显示的用户界面和由消息传递客户端应用104显示的用户界面。
第三方应用管理部件208管理第三方应用,这些第三方应用可以作为捆绑的应用而运行在消息传递客户端应用104中包括的浏览器内。例如,捆绑的应用可以从消息传递客户端应用104生成一个或多个功能请求。第三方应用管理部件208可以为这些请求提供服务,并为第三方应用的相应功能提供适当的数据。
图3是示出了根据某些示例性实施例的可以存储在消息传递服务器系统108的数据库120中的数据的示意图300。虽然数据库120的内容被示为包括多个表格,但是应当理解,数据可以存储在其他类型的数据结构中(例如,作为面向对象的数据库)。
数据库120包括存储在消息表314内的消息数据。实体表302存储实体数据,包括实体图304。在实体表302内为其维护记录的实体可以包括个人、法人实体、组织、对象、地点、事件等。不管类型如何,消息传递服务器系统108为其存储数据的任何实体都可以是识别的实体。每个实体都提供有唯一标识符以及实体类型标识符(未示出)。
实体图304还存储关于实体之间的关系和关联的信息。仅作为示例,此类关系可以是社会的、专业的(例如,在一个共同的公司或组织工作)、基于兴趣或基于活动的。
数据库120还在注释表312中以过滤器的示例形式存储注释数据。其数据存储在注释表312内的过滤器与视频(其数据存储在视频表310中)和/或图像(其数据存储在图像表308中)相关联,并被应用于这些视频和/或图像。在一个示例中,过滤器是在呈现给接收用户期间显示为叠加在图像或视频上的覆盖。过滤器可以是各种类型,包括当发送用户正在编写消息时来自由消息传递客户端应用104呈现给发送用户的过滤器图库的用户选择过滤器。其他类型的过滤器包括地理定位过滤器(也称为地理过滤器),它可以基于地理位置呈现给发送用户。例如,基于由客户端装置102的全球定位系统(GPS)单元确定的地理定位信息,特定于邻域或特殊位置的地理定位过滤器可以由消息传递客户端应用104在用户界面内呈现。另一种类型的过滤器是数据过滤器,其可以基于消息创建过程期间由客户端装置102收集的其他输入或信息由消息传递客户端应用104选择性地呈现给发送用户。数据过滤器的示例包括特定位置的当前温度、发送用户正在旅行的当前速度、客户端设备102的电池寿命或当前时间。
如上所述,视频表310存储视频数据,在一个实施例中,视频数据与在消息表314内维护其记录的消息相关联。类似地,图像表308存储与其消息数据存储在实体表302中的消息相关联的图像数据。实体表302可以将来自注释表312的各种注释与存储在图像表308和视频表310中的各种图像和视频相关联。
故事表306存储关于消息和相关图像、视频或音频数据的集合的数据,这些数据被编译成集合(例如,故事或图库)。特定集合的创建可由特定用户(例如,在实体表302中为其维护记录的用户)发起。用户可以以该用户已经创建和发送/广播的内容集合的形式创建“个人故事”。为此,消息传递客户端应用104的用户界面可以包括用户可选择的图标,以使得发送用户能够将特定内容添加到他或她的个人故事。
集合还可以构成“实况故事”,它是来自多个用户的内容集合,这些内容是手动、自动或使用手动和自动技术的组合创建的。例如,“实况故事”可以构成来自不同位置和事件的用户提交的内容的策划流。可以例如经由消息传递客户端应用104的用户界面向其客户端设备启用了位置服务并且在特定时间处于公共位置或事件的用户呈现对特定实况故事贡献内容的选项。基于用户的位置,消息传递客户端应用104可以向用户标识实况故事。最终结果是从社区角度讲述的“实况故事”。
另一种类型的内容集合被称为“位置故事”,其使得客户端设备102位于特定地理位置内(例如,在学院或大学校园内)的用户能够对特定集合做出贡献。在一些实施例中,对位置故事的贡献可能需要第二级认证以验证最终用户属于特定组织或其他实体(例如,是大学校园内的学生)。
图4是示出根据一些示例实施例的形成消息传递系统100的一部分的第三方应用管理部件208的功能部件的框图。为了避免用不必要的细节模糊本发明的主题,图4中省略了与传达对本发明主题的理解没有密切关系的各种功能部件(例如,模块、引擎和数据库)。然而,技术人员将容易地认识到,第三方应用管理部件208可以支持各种附加功能部件以促进本文没有具体描述的附加功能。如图所示,第三方应用管理部件208包括网页视图部件402、用户数据管理部件404、控制部件406和UI显示部件408。
上面提到的第三方应用管理部件208的功能部件被配置为彼此通信(例如,经由总线、共享存储器、交换机或API)。总的来说,这些部件促进基于社交网络用户的朋友添加或更新的内容来向社交网络用户呈现信息内容的馈送。换句话说,网页视图部件402、用户数据管理部件404、控制部件406和用户界面显示部件408协同工作,以经由消息传递客户端部件104提供对第三方应用的用户界面访问。通过经由消息传递客户端部件104提供访问,第三方应用能够显示依赖于用户数据的用户界面,而不会将用户数据暴露给第三方应用本身。这提高了消息传递客户端应用104的用户隐私和安全性。
网页视图部件402提供在消息传递客户端应用104内的基于网页的应用的执行。在一些方面,网页视图部件402包括嵌入式浏览器。
用户数据管理部件404提供对用户数据的访问。用户数据可能包括例如关于社交网络的一个或多个用户的个人身份信息(PII)。这可能包括人口统计信息,诸如用户年龄、性别、地址和/或用户在线行为的指示。
控制部件406可以经由在网页视图部件402内运行的应用来提供对消息传递客户端应用104的用户界面的控制。例如,在网页视图部件402内运行的第三方应用可以向控制部件406发送请求以在消息传递客户端应用104内显示用户界面。如下所述,控制部件406可以仲裁该请求,并且如果合适的话,经由UI显示部件408生成用户界面。如下所述,控制部件406可以基于经由用户数据管理部件406访问的用户数据,来定义将由UI显示部件408显示的用户界面。例如,显示哪个UI可以基于特定用户的一个或多个特征而变化,诸如用户人口统计的变化,或者基于用户的内容偏好的变化。
UI显示部件408可以基于由控制部件406提供的输入来显示用户界面。例如,UI显示部件可以显示由控制部件406指定的用户界面。
如相关计算机和因特网相关领域的技术人员所理解的,图4中所示的每个功能部件可以使用硬件(例如,机器的处理器)、或逻辑(例如,可执行软件指令)和用于执行逻辑的硬件(例如,机器的存储器和处理器)的组合来实现。例如,被包括作为第三方应用管理部件208的一部分的任何部件可以物理地包括一个或多个处理器410(例如,机器的一个或多个处理器的子集或其中的子集)的布置,该处理器的布置被配置为执行本文针对该部件描述的操作。作为另一示例,第三方应用管理部件208的任何部件可包括软件、硬件或两者,其配置一个或多个处理器410的布置以执行本文针对该部件描述的操作。因此,第三方应用管理部件208的不同部件可包括并配置这些处理器410的不同布置或这些处理器410不同时间点的单个布置。
此外,图4中描绘的各种功能部件可以驻留在单个机器上(例如,客户端装置或服务器)或者可以以各种布置(诸如基于云的架构)分布在多个机器上。而且,本文描述的任何两个或更多个部件可以组合成单个部件,并且本文针对单个部件描述的功能可以在多个部件之间细分。下面关于图5至-9描述这些部件的功能细节。
图5示出了消息传递客户端应用104的各个部件之间的消息流的概览图。图5示出了在网页视图部件402内运行的应用。与在安全域520a内运行的应用104的其余部分相比,网页视图部件402在单独的安全域520b内运行。安全域520b限制网页视图部件402对数据(诸如用户数据)的访问。
网页视图部件402向控制部件406发送消息或其他信号506。信号506可以指示网页视图请求以显示特定类型的用户界面。在一些方面,特定类型的用户界面可以是特定类型的广告。在接收到信号506后,控制部件可以确定哪个特定用户界面可以满足由信号506指示的请求。控制部件406可以查阅由用户数据管理部件404管理的用户数据以确定要显示的用户界面的特定类型。须注意,由于网页视图402的安全域520,网页视图部件402可能无法访问控制部件406所依赖的用户数据。
一旦控制部件406选择了用户界面,控制部件406就向UI显示部件408发送消息或其他信号510,从而指示应该显示所选择的用户界面。UI部件408然后显示所指示的用户界面。UI部件408还可以跟踪所显示的用户界面的状态。例如,如果用户界面显示视频,则UI显示部件408可以跟踪用户观看的视频的百分比。类似地,UI显示部件408可以跟踪在显示UI期间所显示的用户界面在多大程度上保持活动焦点。
在控制部件406选择的UI的显示完成后,从UI显示部件408向控制部件406发送信号512,指示完成。信号512还可包括显示结果的指示。例如,如上所述,反映用户对所显示用户界面的体验的一个或多个度量可以由UI显示部件408提供回控制部件406。控制部件406然后通知在网页视图部件402内运行的应用:用户界面的显示已经完成。控制部件406可进一步指示UI显示的结果或状态。例如,在一些方面,在网页视图部件内运行的应用可以是游戏应用。游戏应用可以基于玩游戏的用户观看的广告类型以及广告体验的稳健程度,来调节某些游戏特征。例如,如果用户在整个显示过程中都与广告进行了交互,则游戏可以向用户提供第一奖励,诸如一些点数或额外的游戏回合或生命点数。如果用户的交互不那么健壮,例如,用户在传递整个消息之前取消了广告,或者如果在播放广告的一部分时间内将广告放置在后台,这可能会导致游戏应用授予用户的不同数量的福利。
图6示出了可由一个或多个所公开的实施例维护的示例数据结构。在一些方面,下面关于图6讨论的一个或多个数据结构可以包括在一个或多个数据库120中。虽然下面讨论图6的数据结构,就好像它们代表关系数据库表中的行一样,技术人员会理解图6的数据结构可以使用替代技术来实现,诸如在非结构化数据存储中实现,诸如在存储器链表、队列、记录/结构或其他数据存储和/或组织技术和/或策略中实现。
图6示出了用户界面表600、用户表620、会话表635和结果表640。用户界面表600包括用户界面标识符602、类型字段604、内容字段606、一个或多个用户特征6081..n和用户界面值字段612。用户界面标识符602唯一地标识用户界面。类型字段604指示由用户界面标识符602标识的用户界面的类型。内容字段606包括定义用户界面的内容的数据。例如,如果用户界面是视频,则内容字段606存储定义视频的数据。用户特征范围6081..n定义了用户特征的范围,这些范围可以使用户有资格观看由内容标识符606标识的内容。例如,落入特定范围6081..n中的相应一个范围内的特定用户的特征的总和可用于选择向用户显示哪个内容。作为一个示例,范围可以定义内容606适合40-45岁和女性的用户。用户界面值字段612指示在完成由UI ID 602标识的UI的显示时授予的值。值字段612可以指示可以授予的最大值。如下所述,在一些方面,用户界面(例如视频)的显示的部分完成可以被授予存储在值字段612中的值的按比例分配的部分。
用户表620包括用户标识符622、认证凭证624、一个或多个用户特征6261..n和货币余额628。用户标识符622唯一地标识用户帐户。认证凭证624定义必须输入以建立链接到用户账户的会话的凭证。用户特征6261..n定义用户的一个或多个特征。这可能包括用户的人口统计信息,诸如年龄、性别、地址、电话号码或其他人口统计信息。用户特征还可以包括表征用户兴趣的信息。例如,可以保持多个特征来指示用户对不同主题领域的亲和力,诸如体育、新闻、天气、政治、世界事件、人类兴趣等。货币余额628指示与用户帐户相关联的货币量。货币可用于在社交网络系统116的上下文内购买虚拟或真实商品。用户特征6261..n.可以在用户界面表600中具有相应的标准或范围6081..n
会话表635存储会话标识符636和用户标识符638。会话标识符636指示当前活动的会话。可以响应于用户帐户的成功认证来建立会话。
结果表640包括显示标识符642、用户界面标识符644、用户标识符646和结果统计648。显示标识符642定义对于特定用户(由646标识)的特定用户界面(由644标识)的显示的唯一实例。结果统计648表征用户与所显示的用户界面的互动程度。例如,结果统计648可以指示以下中的一项或多项:用户是否观看了整个内容、在观看时间期间是否主动选择了该内容、用户是否选择了跳过该内容的至少一部分的控件、用户是否重播了内容,用户是分享、收藏还是转发了该内容。
图7A是一种用于响应于来自在网页视图中运行的应用的请求而显示用户界面的方法的流程图。下面关于图7A讨论的一个或多个功能可以由硬件处理电路来执行。例如,存储在存储器中的指令可以配置硬件处理电路以执行下面关于图7A讨论的一个或多个功能。在一些方面,下面讨论的一个或多个功能可以由消息传递客户端应用104来执行。
在操作705中,从网页视图应用接收请求。(例如请求506)。该请求是显示满足一个或多个标准的用户界面。该标准可以在请求中指示。例如,该请求可以指示要显示的用户界面的类型(例如604)。该请求还可以指示用于用户界面的一个或多个特征的一个或多个标准。例如,该请求可以指示用户界面将显示视频、文本数据、图像数据、投票、调查或其他类型的多媒体内容。在一些方面,操作705可由在第一安全域(例如,520a)内操作的控制部件406执行。控制部件406可以被包括在本地应用中,该本地应用运行在装置的操作系统之上。如上所述,第一安全域520a经由用户数据管理模块404提供对用户数据的访问。从中接收到请求的网页视图应用正在第二安全域(例如520b)中运行。第二安全域不允许网页视图应用访问用户数据。
在操作708中,基于请求来检索用户数据。操作708可以包括读取以上关于图6的用户表600描述的任何数据。如下所述,可以读取数据以准备操作710。选项708可以从具有对用户数据(诸如表620)的访问的第一安全域(例如520a)内发生。
在操作710中,标识用户界面以供显示。该标识是基于请求中提供的一个或多个特征和用户数据。如上所述,在一些方面,用户界面表(例如600)可以定义多个用户界面,以及用于查看那些用户界面的用户的相应标准或特征范围。作为一个示例,一个用户界面可以被配置为供儿童观看(例如,标准可以包括<15岁),而第二用户界面可以配置为供成人观看(例如,年龄>18岁)。可以将在操作708中检索到的用户数据与用户界面表中为用户界面定义的标准进行匹配,并且确定匹配标准或特征的计数。可以选择具有最多匹配标准或特征的用户界面以供显示。下面关于图8描述操作710的一个示例实施例。
在操作715中,显示用户界面。例如,定义用户界面的内容(例如606)可以被写入显示设备。
在操作720中,监测与所显示的用户界面的用户交互以生成显示结果。在各个方面,操作720可以监测由用户提供的输入以表征用户与所显示的用户界面的互动水平。可以被监测的参数可以包括所显示的用户界面在被显示时是否保持焦点,用户是否取消了所显示的用户界面或选择跳过用户界面的一个或多个部分,用户是否最小化了用户界面,以及在用户界面完成显示后可能出现的任何空闲时段的长度。例如,比阈值长的空闲时间段可以指示用户没有观看用户界面,因此,当用户界面的任何显示活动完成时,用户没有对该完成做出反应。在一些方面,操作720可以确定被用户成功显示和/或接收到的用户界面的百分比。例如,如果用户界面包括视频,则操作720的监测可以确定例如在播放视频的窗口保持焦点时播放的视频的总百分比。在一些方面,可以基于所显示的UI(例如612)的值将虚拟货币信用分配给网页视图应用和/或运行网页视图应用的用户。该值可以基于UI显示的一个或多个属性按比例分配。例如,如果成功显示50%的UI(例如视频),则可以将UI(例如612)的值的50%分配给网页视图应用和/或运行网页视图应用的用户。
在操作725中,提供对网页视图应用的响应。该响应可以指示操作720中的一个或多个监测结果。在一些方面,响应可以包括作为用户界面的显示和所监测的用户交互的结果而记入用户的虚拟货币量。
图7B是用于通过网页视图显示用户界面的方法的流程图。下面关于图7B讨论的一个或多个功能可以由硬件处理电路来执行。例如,存储在存储器中的指令可以配置硬件处理电路以执行下面关于图7B讨论的一个或多个功能。在一些方面,下面讨论的一个或多个功能可以由消息传递客户端应用104来执行。在一些方面,图7B的过程750可由在第一安全域下运行的网页视图应用执行。如上所述,网页视图应用可以与在第二安全域下运行的本机应用交互。本机应用经由第二安全域访问用户数据。第一安全域阻止访问用户数据。例如,网页视图应用无法访问用户数据,因为第一安全域阻止此类访问。
在操作755中,生成用以显示用户界面的请求。该请求被生成以包括所请求的用户界面的一个或多个特征。例如,该请求可以指示要显示的用户界面的类型(例如,如类型604所指示的)。在一些方面,该请求可以指示期望或所请求的虚拟货币的量。例如,网页视图应用可以经由用户界面的显示来寻求获得第一数量的虚拟货币。例如,第一数量可以基于网页视图应用的用户期望购买或已经请求经由网页视图应用购买的产品或特征。
在操作760中,该请求被传送到本机应用。例如,如以上关于图5所讨论的,网页视图402可以向安全域520a内的控制部件406发送消息506。
在操作765中,网页视图应用接收对该请求的响应。该响应指示请求的结果。在一些方面,该响应指示例如显示用户界面的完成状态。例如,如果显示的用户界面包括视频,则该响应可以指示播放和/或观看的视频的百分比。
在操作770中,基于响应中指示的结果选择性地启用或禁用网页视图的特征。例如,可以基于响应启用游戏的一个或多个特征。这些特征可以包括例如游戏中的生命点数、可供玩家在游戏中使用的附加武器、用于游戏中使用的附加角色或服装、供玩家在游戏中导航的新场景或环境。
图8是用于标识要显示的用户界面的方法的流程图。下面关于图8讨论的一个或多个功能可以由硬件处理电路来执行。例如,存储在存储器中的指令可以配置硬件处理电路以执行下面关于图8讨论的一个或多个功能。在一些方面,下面讨论的一个或多个功能可以由消息传递客户端应用104来执行。
在操作805中,获得第一用户特征和第一用户界面。例如,每个用户账户可以与多个用户特征相关联。用户特征可以包括用户的人口统计信息,诸如年龄、性别、地址或其他人口统计信息。用户特征还可包括表征用户的某些兴趣或行为的度量或统计。获得第一用户界面可以包括为用户界面标识数据库中的记录。例如,在一些方面,获得第一用户界面可以包括标识用户界面表600中的特定行。
在操作808中,将用户特征与用户界面的相应标准进行比较。例如,如以上关于图6所讨论的,一个或多个用户特征(例如,6261..n)可以对应于针对用户界面(例如,表600中的行)的一个或多个标准或特征范围(例如,6081.n)。
决策操作810确定用户特征是否与为用户界面指定的相应标准相匹配。如果找到匹配,则过程800移动到框815,其增加用户界面的匹配计数。决策框820确定是否应该评估附加的用户特征。如果是,则框825获得下一个特征,然后在操作808中将其与用户界面的相应标准或范围进行比较。如果当前用户界面没有更多特征要比较,则框830存储当前用户界面(例如UI表600的行)的匹配计数。
在过程800迭代遍历用户界面之后,每个用户界面的匹配计数是可用的(经由框815)。然后可以评估这些匹配计数以确定最佳匹配。最佳匹配可以基于哪个用户界面具有最高匹配计数。在一些方面,每个特征可以与权重相关联,因此为每个用户界面确定加权匹配计数。然后可以选择或标识具有最高加权匹配计数的用户界面以供显示。过程800的一些方面还可以考虑用户界面先前是否已经向该用户和/或在一段时间内显示过。如果先前显示过该用户界面,则在定义的时间段过去之前,它可能不会被再次显示。相反,可以选择具有较低匹配计数的另一个UI进行显示。
图9示出了可以在至少一些公开的实施例中实现的示例用户界面结构。图9示出了网页视图窗口905和控件910。在一些方面,应用可以使用HTML5实现并显示在网页视图窗口905中。应用可以从控件910启动。控件910可以在显示用户界面900的平台的本机操作系统上实现,作为网页视图顶部的单独层。控件910可以提供功能,包括:表情符号存在915,其显示与应用交互的其他社交网络成员;语音聊天920,其在一些实施例中通过轻敲麦克风来提供语音流,文本聊天925,其提供向参与应用的其他成员发送文本消息;轻推功能930,其向选定的一组用户发送推送通知以提醒他们参与应用,以及离开应用功能,其退出该应用并返回到底层的聊天对话。
图10示出了可以在所公开的实施例中的至少一些实施例中实施的两个消息的示例。第一消息506是由网页视图应用生成的请求消息。该请求消息指示显示用户界面的请求,如上面讨论的,例如,关于图5讨论的。该请求消息506包括请求id 1002、类型字段1004和货币字段1006。请求id 1002由网页视图应用设置,并标识对网页视图应用的请求。类型字段1004指示请求显示的用户界面的类型。货币字段1006指示作为用户界面的显示的一部分被请求的虚拟货币的数量。
响应消息512包括请求id字段1010、货币字段1012和结果指示字段1014。请求id字段1010由控制部件406设置为与对应于响应514的请求消息506的请求id字段1002等效的值。货币字段1012指示作为相应请求506(该请求在请求id字段1002中包括与请求id字段1010的相同值)所请求的用户界面的显示的结果,而被记入用户账户(例如628)的余额的所得货币。
虽然以上图10的描述描述了消息506和514,但在一些实施例中,网页视图应用(例如,在网页视图部件402中运行)可以使用方法或函数调用而不是一些实施例中的消息来与控制部件406通信。在这些实施例中,图10中所示的消息506和514的字段可以替代地经由具有等效值的输入参数在网页视图应用和控制部件406之间进行通信。部件之间的其他通信方法也被考虑并且是本领域已知的。图10的示例消息旨在仅作为一个说明性示例。
图11示出了示例用户界面,其中一个或多个用户界面可以在一个或多个所公开的实施例中实现。图11示出了用户界面1105a-c。用户界面1105a包括播放控件1110a和商店控件1110b。商店控件1110b的选择呈现用户界面1105b。用户界面1105b提供三个购物选项1115a-c。在选择选项1115c时,呈现用户界面1105c。用户界面1105c包括“现在打开”控件1120。
图12示出了示例用户界面,其中一个或多个用户界面可以在一个或多个所公开的实施例中实现。图12示出了用户界面1105d-e。用户界面1105d可以响应于对现在打开控件1120的选择而显示,如上面关于图11所讨论的。用户界面1105d被配置为确认购买物品,并且包括购买按钮1125。在选择购买按钮1125时,显示用户界面1105e,其确认交易成功。如果购买的是电子物品,诸如出现在在线游戏应用中的物品,则用户可以通过选择用户界面1105e中所示的按钮1130来开始使用该物品。
图13示出了可以在所公开的实施例中的一个或多个实施例中实施的示例用户界面。图13是当被网页视图应用请求时可由本机应用显示的用户界面的示例。用户界面1300示出了可由用户选择的多个选项。这些被标记为1305a-d。根据所选择的选项,用户在完成与所选择的选项相关联的任务后可能会收到可变数量的虚拟或真实货币。
图14示出了可以在所公开的实施例中的一个或多个实施例中实施的示例用户界面。在选择上面关于图13讨论的选项1305a-d之一之后,可以显示用户界面1400。用户可能够经由控件的选择而经由用户界面1400发起任务。在图14的示例中,用户能够通过选择按钮控件1405来发起“自由旋转”。任务的启动可以确定在完成任务之后奖励给用户的虚拟或真实货币的数量。
图15示出了可以在所公开的实施例中的一个或多个实施例中实施的示例用户界面。用户界面1500示出在完成诸如观看视频的任务之后,用户可被奖励与该任务相关联的一定数量的虚拟或真实货币。例如,如果用户完全观看了与1000个单位的虚拟货币相关联的视频,则他们可能会获得完整的1000个单位。如果他们完成了50%的视频,他们可能会接收1000个单位的按比例分配份额,例如500个单位。
软件架构
图16是示出了示例软件架构1606的框图,其可以与本文描述的各种硬件架构结合使用。图16是软件架构的非限制性示例,并且应当理解,可以实现许多其他架构以促进本文描述的功能。软件架构1606可以在诸如图17的机器1700的硬件上执行,该硬件包括处理器1704、存储器/存储1706和I/O部件1718等。代表性的硬件层1752被示出并且可以代表例如图17的机器1700。代表性硬件层1652包括具有相关联的可执行指令1604的处理单元1654。可执行指令1604表示软件架构1606的可执行指令,包括本文描述的方法、部件等的实现方式。硬件层1652还包括存储器和/或存储设备1656,其也具有可执行指令1604。硬件层1652还可以包括其他硬件1658。
如本文所用,术语“部件”可指具有由功能或子例程调用、分支点、API和/或提供特定处理或控制功能的分区或模块化的其他技术定义的边界的设备、物理实体或逻辑。部件可以经由它们的接口与其他部件组合以执行机器过程。部件可以是设计用于与其他部件一起使用的封装功能硬件单元,以及通常执行相关功能的特定功能的程序的一部分。
部件可以构成软件部件(例如,包含在机器可读介质上的代码)或硬件部件。“硬件部件”是能够执行某些操作并且可以以某种物理方式配置或布置的有形单元。在各种示例性实施例中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或计算机系统的一个或多个硬件部件(例如,处理器或一组处理器)可以由软件(例如,应用或应用部分)配置为运行以执行如本文所述的某些操作的硬件部件。硬件部件也可以机械地、电子地或其任何合适的组合来实现。例如,硬件部件可以包括永久配置为执行某些操作的专用电路或逻辑。
硬件部件可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件部件还可包括由软件临时配置以执行某些操作的可编程逻辑或电路。例如,硬件部件可以包括由通用处理器或其他可编程处理器执行的软件。一旦被这样的软件配置,硬件部件就变成了专门为执行配置的功能而量身定制的特定机器(或机器的特定部件)并且不再是通用处理器。应当理解,以机械方式、在专用和永久配置的电路或以临时配置的电路(例如,由软件配置)实现硬件部件的决定可能由成本和时间考虑因素驱动。
处理器可以是或包括根据控制信号(例如,“命令”、“操作码”、“机器码”等)操纵数据值并产生用于操作机器的相应输出信号的任何电路或虚拟电路(由在实际处理器上执行的逻辑仿真的物理电路)。例如,处理器可以是中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP))、ASIC、射频集成电路(RFIC)或其任何组合。处理器可以进一步是具有可以同时执行指令的两个或更多个独立处理器(有时称为“核”)的多核处理器。
因此,短语“硬件部件”(或“硬件实现的部件”)应理解为包含有形实体,即被物理构造、永久配置(例如,硬连线)或临时配置(例如,编程的)为以某种方式操作或执行本文描述的某些操作的的实体。考虑其中硬件部件被临时配置(例如,编程)的实施例,每个硬件部件不需要在任何一个时间实例都被配置或实例化。例如,在硬件部件包括通过软件配置成为专用处理器的通用处理器的情况下,该通用处理器可以在不同时间分别被配置为不同的专用处理器(例如,包括不同的硬件部件)。软件相应地配置一个或多个特定处理器,例如,以在一个时间实例构成特定硬件部件并在不同时间实例构成不同硬件部件。硬件部件可以向其他硬件部件提供信息以及从其他硬件部件接收信息。因此,所描述的硬件部件可以被认为是通信耦合的。在多个硬件部件同时存在的情况下,可以通过两个或更多个硬件部件之间的信号传输(例如,通过适当的电路和总线)来实现通信。在多个硬件部件在不同时间被配置或实例化的实施例中,可以例如通过在多个硬件部件可以访问的存储器结构中存储和检索信息来实现这些硬件部件之间的通信。
例如,一个硬件部件可以执行操作并将该操作的输出存储在与它通信耦合的存储器设备中。然后,另一个硬件部件可以在稍后访问存储设备以检索和处理所存储的输出。硬件部件还可以发起与输入或输出设备的通信,并且可以对资源(例如,信息集合)进行操作。本文描述的示例方法的各种操作可以至少部分地由一个或多个临时配置(例如,通过软件)或永久配置为执行相关操作的处理器执行。无论是临时配置还是永久配置,这样的处理器都可以构成处理器实现的部件,这些部件操作以执行本文所述的一个或多个操作或功能。如本文所用,“处理器实现的部件”是指使用一个或多个处理器实现的硬件部件。类似地,本文描述的方法可以至少部分地由处理器实现,其中一个或多个特定处理器是硬件的示例。例如,方法的至少一些操作可以由一个或多个处理器或处理器实现的部件来执行。
此外,一个或多个处理器还可操作以支持“云计算”环境中的相关操作的性能或作为“软件即服务”(SaaS)。例如,至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作可经由网络(例如,因特网)并经由一个或多个适当的接口(例如,API)访问。某些操作的性能可能分布在处理器之间,不仅驻留在单个机器内,而且部署在多个机器上。在一些示例性实施例中,处理器或处理器实现的部件可以位于单个地理位置中(例如,在家庭环境、办公室环境或服务器群内)。在其他示例性实施例中,处理器或处理器实现的部件可以分布在多个地理位置上。
在图16的示例性架构中,软件架构1606可以被概念化为层堆栈,其中每一层提供特定功能。例如,软件架构1606可以包括诸如操作系统1602、库1620、框架/中间件1618、应用1616和表示层1614的层。在操作上,应用1616和/或层内的其他部件可以通过软件堆栈调用API调用1608并接收响应以作为消息1610。所示的层本质上是代表性的,并非所有软件架构都具有所有层。例如,一些移动或专用操作系统可能不提供框架/中间件1618层,而其他操作系统可能提供这样的层。其他软件架构可能包括额外的或不同的层。
操作系统1602可以管理硬件资源并提供公共服务。操作系统1602可以包括例如内核1622、服务1624和驱动程序1626。内核1622可以充当硬件和其他软件层之间的抽象层。例如,内核1622可以负责存储器管理、处理器管理(例如调度)、部件管理、组网、安全设置等。服务1624可以为其他软件层提供其他公共服务。驱动程序1626负责控制底层硬件或与底层硬件接口。例如,依据硬件配置,驱动程序1626包括显示器驱动程序、相机驱动程序、
Figure BDA0003132760610000231
驱动程序、闪存驱动程序、串行通信驱动程序(例如通用串行总线(USB)驱动程序)、
Figure BDA0003132760610000232
驱动程序、音频驱动程序、电源管理驱动程序,等等。
库1620提供由应用1616和/或其他部件和/或层使用的公共基础设施。库1620提供的功能允许其他软件部件以比直接与底层操作系统1602功能(例如,内核1622、服务1624和/或驱动程序1626)接口更容易的方式执行任务。库1620可以包括系统库1644(例如,C标准库),其可以提供诸如存储器分配函数、字符串操作函数、数学函数等的函数。此外,库1620可以包括API库1646,诸如媒体库(例如,支持各种媒体格式,诸如MPEG4、H.264、MP3、AAC、AMR、JPG和PNG,的呈现和操作的库)、图形库(例如,可用于在显示器上呈现2D和3D图形内容的OpenGL框架)、数据库库(例如,可提供各种关系数据库功能的SQLite)、网页库(例如,可提供网页浏览功能的WebKit)等等。库1620还可以包括多种其他库1648以向应用1616和其他软件部件/模块提供许多其他API。
框架/中间件1618提供可由应用1616和/或其他软件部件/模块使用的更高级别的公共基础设施。例如,框架/中间件1618可以提供各种图形用户界面(GUI)功能、高级资源管理、高级定位服务等。框架/中间件1618可以提供可由应用1616和/或其他软件部件/模块使用的广泛的其他API,其中一些可以专用于特定操作系统1602或平台。
应用1616包括内置应用1638和/或第三方应用1640。代表性内置应用1638的示例可以包括但不限于联系人应用、浏览器应用、书籍阅读器应用、定位应用、媒体应用、消息传递应用和/或游戏应用。第三方应用1640可以包括由特定平台的供应商以外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用,并且可以是在诸如IOSTM、ANDROIDTM
Figure BDA0003132760610000233
Phone或其他移动操作系统的移动操作系统上运行的移动软件。第三方应用1640可以调用由移动操作系统(诸如操作系统1602)提供的API调用1608,以促进本文描述的功能。
应用1616可以使用内置操作系统功能(例如,内核1622、服务1624和/或驱动程序1626)、库1620和框架/中间件1618来创建用户界面以与系统用户交互。可替代地或附加地,在一些系统中,与用户的交互可以通过表示层(诸如表示层1614)发生。在这些系统中,应用/部件“逻辑”可以与与用户交互的应用/部件的各个方面分开。
示例性机器
图17是示出根据一些示例性实施例的能够从机器可读介质(例如,机器可读存储介质)读取指令并执行本文中讨论的任何一种或多种方法的机器1700的部件(本文也称为“模块”)的框图。具体地,图17示出了计算机系统的示例形式的机器1700的图解表示,其中可以执行用于促使机器1700执行本文讨论的任何一种或多种方法的指令1710(例如,软件、程序、应用、小应用、app或其他可执行代码)。因此,指令1710可用于实现本文描述的模块或部件。指令1710将通用的非编程机器1700转换成特定机器1700,该特定机器被编程为以所描述的方式执行所描述和示出的功能。在替代实施例中,机器1700作为独立装置操作,或者可以通信地耦合(例如,联网)至其他机器。在联网部署中,机器1700可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力运行,或者作为对等(或分布式)网络环境中的对等机器运行。机器1700可以包括但不限于服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能手机、移动装置、可穿戴装置(例如智能手表)、智能家居装置(例如智能电器)、其他智能装置、网页装置、网络路由器、网络交换机、网桥或任何能够依次或以其他方式执行指令1710的机器,这些指令指定机器1700要采取的动作。此外,虽然仅示出了单个机器1700,但术语“机器”也应被视为包括单独或联合执行指令1710以执行本文中讨论的任何一种或多种方法的机器的集合。
机器1700可以包括处理器1704、存储器/存储1706和I/O部件1718,它们可以被配置为诸如经由总线1702彼此通信。存储器/存储1706可以包括诸如主存储器或其他存储器存储的存储器1714和存储单元1716,两者都可由处理器1704诸如经由总线1702访问。存储单元1716和存储器1714存储实施本文描述的方法或功能中的任何一种或多种的指令1710。指令1710还可以在机器1700对其执行期间完全或部分地驻留在存储器1714内、存储单元1716内、处理器1704中的至少一个内(例如,在处理器的高速缓存内)或它们的任何合适的组合内。因此,存储器1714、存储单元1716和处理器1704的存储器是机器可读介质的示例。
如本文所使用的,术语“机器可读介质”、“计算机可读介质”等可以指能够临时或永久地存储指令和数据的任何部件、器件或其他有形介质。此类介质的示例可包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存、光学介质、磁介质、高速缓存、其他类型的存储(例如、电可擦可编程只读存储器(EEPROM))和/或其任何合适的组合。术语“机器可读介质”应被认为包括能够存储指令的单个介质或多个介质(例如,集中式或分布式数据库或相关联的高速缓存和服务器)。术语“机器可读介质”还可被认为包括能够存储由机器执行的指令(例如,代码)的任何介质或多种介质的组合,使得指令在由机器的一个或多个处理器执行时,促使机器执行本文描述的任何一种或多种方法。因此,“机器可读介质”可以指的是单个存储装置或装置,以及包括多个存储装置或装置的基于云的存储系统或存储网络。术语“机器可读介质”不包括信号本身。
I/O部件1718可包括多种部件以提供用于接收输入、提供输出、产生输出、传输信息、交换信息、捕获测量值等的用户界面。包含在特定机器1700的用户界面中的特定I/O部件1718将取决于机器的类型。例如,诸如移动电话的便携式机器将可能包括触摸输入设备或其他此类输入机制,而无头服务器机器将可能不包括此类触摸输入设备。应当理解,I/O部件1718可以包括图17中未示出的许多其他部件。I/O部件1718根据功能分组仅仅是为了简化以下讨论并且分组决不是限制性的。在各种示例性实施例中,I/O部件1718可以包括输出部件1726和输入部件1728。输出部件1726可以包括视觉部件,(例如显示器,诸如等离子体显示面板(PDP),发光二极管(LED)显示器,液晶显示器(LCD),投影仪或阴极射线管(CRT)),声学部件(例如,扬声器),触觉部件(例如,振动电机、阻力机制),其他信号发生器等。输入部件1728可包括字母数字输入部件(例如,键盘、被配置为接收字母数字输入的触摸屏、光电键盘或其他字母数字输入部件)、基于点的输入部件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其他指点仪器)、触觉输入部件(例如,物理按钮、提供位置和/或触摸力或触摸手势的触摸屏,或其他触觉输入部件)、音频输入部件(例如,麦克风)等。输入部件1728还可包括一个或多个图像捕捉装置,诸如用于生成数字图像和/或视频的数码相机。
在进一步的示例性实施例中,I/O部件1718可以包括生物特征部件1730、运动部件1734、环境部件1736或位置部件1738,以及大量其他部件。例如,生物特征部件1730可以包括用于检测表情(例如,手部表情、面部表情、声音表情、身体姿势或眼动追踪)、测量生物信号(例如,血压、心率、体温、出汗或脑电波)、标识人(例如,语音标识、视网膜标识、面部标识、指纹标识或基于脑电图的标识)等的部件。运动部件1734可以包括加速度传感器部件(例如,加速度计)、重力传感器部件、旋转传感器部件(例如,陀螺仪)等等。环境部件1736可包括例如照度传感器部件(例如,光度计)、温度传感器部件(例如,检测环境温度的一个或多个温度计)、湿度传感器部件、压力传感器部件(例如,气压计)、声学传感器部件(例如,一个或多个检测背景噪声的麦克风)、接近度传感器部件(例如,检测附近物体的红外传感器)、气体传感器(例如,用于检测危险气体的浓度以确保安全或测量大气中的污染物的气体检测传感器)或可以提供与周围物理环境相对应的指示、测量或信号的其他部件。位置部件1738可包括定位传感器部件(例如,GPS接收器部件)、海拔传感器部件(例如,检测可从中导出海拔的气压的海拔计或气压计)、定向传感器部件(例如,磁力计),等等。
可以使用多种技术来实现通信。I/O部件1718可以包括通信部件1740,其可操作以分别经由耦合1724和耦合1722将机器1700耦合到网络1732或设备1720。例如,通信部件1740可以包括网络接口部件或其他合适的装置以与网络1732接口。在进一步的示例中,通信部件1740可以包括有线通信部件、无线通信部件、蜂窝通信部件、近场通信(NFC)部件、
Figure BDA0003132760610000271
Figure BDA0003132760610000272
部件(例如,低功耗
Figure BDA0003132760610000273
)、
Figure BDA0003132760610000274
部件和其他通信部件以经由其他方式提供通信。设备1720可以是另一台机器或多种外围设备(例如,经由USB耦合的外围设备)中的任一个。
此外,通信部件1740可以检测标识符或包括可操作以检测标识符的部件。例如,通信部件1740可以包括射频识别(RFID)标签读取器部件、NFC智能标签检测部件、光学读取器部件(例如,光学传感器,用于检测诸如通用产品代码(UPC)条码的一维条码,诸如快速响应(QR)码、Aztec码、Data Matrix、Dataglyph、MaxiCode、PDF4111、Ultra Code、UCC RSS-2D条码的多维条码和其他光学代码)或声学检测部件(例如,标识标记的音频信号的麦克风)。此外,可以经由通信部件1740导出各种信息,例如经由因特网协议(IP)地理定位导出定位、经由
Figure BDA0003132760610000275
信号三角测量导出定位、经由检测可以指示特定的位置的NFC信标信号进行定位,等等。
如果使用类似于“A、B或C中的至少一个”、“A、B和C中的至少一个”、“A、B或C中的一个或多个”或“A、B和C中的一个或多个”的短语,意图将该短语解释为表示A可以单独存在于一个实施例中,B可以单独存在于一个实施例中,C可以单独可以存在于一个实施例中,或元素A、B和C的任何组合可以存在于单个实施例中;例如,可以存在A和B、A和C、B和C、或A和B和C。
在不脱离本公开的范围的情况下,可以对所公开的实施例进行改变和修改。这些和其他改变或修改旨在包括在本公开的范围内,如所附权利要求中所表达的。

Claims (20)

1.一种方法,包括:
在网页视图内启动基于网页的应用,所述网页视图在第一安全域内执行所述基于网页的应用;
从所述基于网页的应用接收用以显示用户界面的请求,所述请求指示对于所请求的用户界面的一个或多个标准;
经由第二安全域基于所述请求检索用户数据,其中,所述用户数据无法从所述第一安全域访问;
基于一个或多个标准和所述用户数据来标识要显示的用户界面;
在用户帐户的会话中显示所标识的用户界面;
监测用户与所显示的用户界面的交互以生成显示结果;以及
生成对所述基于网页的应用的响应,所述响应指示所述监测的至少一个显示结果。
2.根据权利要求1所述的方法,其中,标识要显示的用户界面包括:
确定满足所述请求中指示的所述一个或多个标准的第一组用户界面;以及
将所述用户帐户的用户特征与关联于所述第一组用户界面中的每一个用户界面的标准进行比较,以确定对于所述用户在所述第一组用户界面中的最佳匹配用户界面。
3.根据权利要求1所述的方法,其中,将所述用户的特征与关联于所述第一组用户界面中的每一个用户界面的标准进行比较包括:将第一用户特征与第一用户界面的第一标准进行比较,以及将所述第一用户特征与第二用户界面的第二标准进行比较,基于所述比较来确定所述第一用户界面和所述第二用户界面的匹配分数,其中,所述用户界面的所述标识基于所述匹配分数。
4.根据权利要求1所述的方法,其中,所述网页视图执行HTML 5指令以实现所述基于网页的应用。
5.根据权利要求1所述的方法,其中,所述显示的用户界面播放视频,并且所述监测确定以下中的一个或多个:是否完整观看所述视频、是否基于用户输入跳过所述视频的一个或多个部分、以及所述用户界面是否被取消。
6.根据权利要求1所述的方法,其中,所述监测确定所述显示的用户界面在被显示时是否保持连续焦点,并且所述响应被生成以指示所述确定。
7.根据权利要求1所述的方法,其中,所标识的用户界面与虚拟货币值相关联,并且所述响应被生成以指示作为所述用户界面的所述显示的结果已记入所述用户账户的虚拟货币余额的虚拟货币值的一部分。
8.根据权利要求7所述的方法,进一步包括基于所述监测来确定所述部分。
9.一种系统,包括:
硬件处理电路;
存储指令的硬件存储器,当所述指令被执行时,所述指令配置硬件处理电路以执行包括以下操作的操作:
在网页视图内启动基于网页的应用,所述网页视图在第一安全域内执行所述基于网页的应用;
从所述基于网页的应用接收用以显示用户界面的请求,所述请求指示所请求的用户界面的一个或多个标准;
经由第二安全域基于所述请求检索用户数据,其中,所述用户数据无法从所述第一安全域访问;
基于一个或多个标准和所述用户数据来标识要显示的用户界面;
在用户帐户的会话中显示所标识的用户界面;
监测用户与所显示的用户界面的交互以生成显示结果;以及
生成对所述基于网页的应用的响应,所述响应指示所述监测的至少一个显示结果。
10.根据权利要求9所述的系统,其中,标识要显示的用户界面包括:
确定满足所述请求中指示的所述一个或多个标准的第一组用户界面;以及
将所述用户帐户的用户特征与关联于所述第一组用户界面中的每一个用户界面的标准进行比较,以确定对于所述用户在所述第一组用户界面中的最佳匹配用户界面。
11.根据权利要求10所述的系统,其中,将所述用户的特征与关联于所述第一组用户界面中的每一个用户界面的标准进行比较包括:将第一用户特征与第一用户界面的第一标准进行比较,以及将所述第一用户特征与第二用户界面的第二标准进行比较,基于所述比较来确定所述第一用户界面和所述第二用户界面的匹配分数,其中,所述用户界面的所述标识基于所述匹配分数。
12.根据权利要求9所述的系统,其中,所述网页视图执行HTML 5指令以实现所述基于网页的应用。
13.根据权利要求9所述的系统,其中,所述显示的用户界面播放视频,并且所述监测确定以下中的一个或多个:是否完整观看所述视频、是否基于用户输入跳过所述视频的一个或多个部分、以及所述用户界面是否被取消。
14.根据权利要求9所述的系统,其中,所述监测确定所述显示的用户界面在被显示时是否保持连续焦点,并且所述响应被生成以指示所述确定。
15.根据权利要求9所述的系统,其中,所述标识的用户界面与虚拟货币值相关联,并且所述响应被生成以指示作为所述用户界面的所述显示的结果已记入所述用户账户的虚拟货币余额的虚拟货币值的一部分。
16.根据权利要求15所述的系统,所述操作进一步包括基于所述监测来确定所述部分。
17.一种非暂时性计算机可读存储介质,包括当被执行时配置硬件处理电路以执行操作的指令,所述操作包括:
在网页视图内启动基于网页的应用,所述网页视图在第一安全域内执行所述基于网页的应用;
从所述基于网页的应用接收用以显示用户界面的请求,所述请求指示所述请求的用户界面的一个或多个标准;
经由第二安全域基于所述请求检索用户数据,其中,所述用户数据无法从所述第一安全域访问;
基于一个或多个标准和所述用户数据来标识要显示的用户界面;
在用户帐户的会话中显示所标识的用户界面;
监测用户与所显示的用户界面的交互以生成显示结果;以及
生成对所述基于网页的应用的响应,所述响应指示所述监测的至少一个显示结果。
18.根据权利要求17所述的非暂时性计算机可读存储介质,其中,标识要显示的用户界面包括:
确定满足所述请求中指示的所述一个或多个标准的第一组用户界面;以及
将所述用户帐户的用户特征与关联于所述第一组用户界面中的每一个用户界面的标准进行比较,以确定对于所述用户在所述第一组用户界面中的最佳匹配用户界面。
19.根据权利要求18所述的非暂时性计算机可读存储介质,其中,将所述用户的特征与关联于所述第一组用户界面中的每一个用户界面的标准进行比较包括:将第一用户特征与第一用户界面的第一标准进行比较,以及将所述第一用户特征与第二用户界面的第二标准进行比较,基于所述比较来确定所述第一用户界面和所述第二用户界面的匹配分数,其中,所述用户界面的所述标识基于所述匹配分数。
20.根据权利要求17所述的非暂时性计算机可读存储介质,其中,所述网页视图执行HTML 5指令以实现所述基于网页的应用。
CN201980086279.0A 2018-12-28 2019-12-27 第三方应用管理 Pending CN113383336A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/236,088 2018-12-28
US16/236,088 US11023261B1 (en) 2018-12-28 2018-12-28 3RD party application management
PCT/US2019/068761 WO2020140045A1 (en) 2018-12-28 2019-12-27 3rd party application management

Publications (1)

Publication Number Publication Date
CN113383336A true CN113383336A (zh) 2021-09-10

Family

ID=69326753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980086279.0A Pending CN113383336A (zh) 2018-12-28 2019-12-27 第三方应用管理

Country Status (5)

Country Link
US (3) US11023261B1 (zh)
EP (1) EP3903216B1 (zh)
KR (1) KR102537852B1 (zh)
CN (1) CN113383336A (zh)
WO (1) WO2020140045A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11599371B2 (en) 2018-12-28 2023-03-07 Snap Inc. 3rd party application management

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11698822B2 (en) 2020-06-10 2023-07-11 Snap Inc. Software development kit for image processing
US11604562B2 (en) 2020-06-10 2023-03-14 Snap Inc. Interface carousel for use with image processing software development kit
US11340753B2 (en) * 2020-09-30 2022-05-24 Atlassian Pty Ltd. Dynamic user-defined application leveraging local service-oriented architecture to share mobile application features
USD976924S1 (en) * 2021-07-06 2023-01-31 Snap Inc. Display screen or portion thereof with a graphical user interface
USD976944S1 (en) * 2021-07-06 2023-01-31 Snap Inc. Display screen or portion thereof with a graphical user interface
USD976927S1 (en) * 2021-07-06 2023-01-31 Snap Inc. Display screen or portion thereof with a graphical user interface
USD976926S1 (en) * 2021-07-06 2023-01-31 Snap Inc. Display screen or portion thereof with a graphical user interface
USD976925S1 (en) * 2021-07-06 2023-01-31 Snap Inc. Display screen or portion thereof with a graphical user interface
USD993270S1 (en) * 2021-07-06 2023-07-25 Snap Inc. Display screen with a graphical user interface

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060256133A1 (en) * 2005-11-05 2006-11-16 Outland Research Gaze-responsive video advertisment display
US20070150355A1 (en) * 2005-11-07 2007-06-28 Meggs Anthony F Web-based incentive system and method
US20080066107A1 (en) * 2006-09-12 2008-03-13 Google Inc. Using Viewing Signals in Targeted Video Advertising
US8812532B2 (en) * 2007-01-08 2014-08-19 Mazen A. Skaf System and method for tracking and rewarding users
US10460085B2 (en) 2008-03-13 2019-10-29 Mattel, Inc. Tablet computer
WO2010015071A1 (en) * 2008-08-07 2010-02-11 Research In Motion Limited System and method for incorporating multimedia content into a message handled by a mobile device
WO2011102765A1 (en) * 2010-02-22 2011-08-25 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for network searching
US10417702B2 (en) * 2011-05-26 2019-09-17 Facebook, Inc. Dynamically providing a third-party checkout option
US9865005B1 (en) * 2012-01-17 2018-01-09 Comscore, Inc. Unified content visibility and video content monitoring
US20140108252A1 (en) * 2012-10-16 2014-04-17 Riavera Corp. Mobile image payment system using sound-based codes
WO2014151061A2 (en) 2013-03-15 2014-09-25 Authentic8, Inc. Secure web container for a secure online user environment
US9286621B2 (en) * 2013-07-31 2016-03-15 Linkedin Corporation Independent targeted sponsored content management system and method
US10466776B2 (en) * 2014-06-24 2019-11-05 Paypal, Inc. Surfacing related content based on user interaction with currently presented content
KR101636620B1 (ko) * 2014-10-21 2016-07-05 에스케이플래닛 주식회사 사용자 친화적 리워드 제공 방법 및 이를 위한 장치
US10296513B2 (en) * 2014-12-08 2019-05-21 Samsung Electronics Co., Ltd. Accessing messaging applications in search
US20170193117A1 (en) * 2015-12-31 2017-07-06 Minh Reigen System and Methods for Displaying a List of Content Items from Web Services by an Embeddable Web Application
US20170270551A1 (en) * 2016-03-17 2017-09-21 Joe Zheng Method and system for distributing targeted messages on social media
US10416940B2 (en) * 2017-03-17 2019-09-17 Ricoh Company, Ltd. Image processing apparatus, image processing system, and image processing method for interpreting content obtained from a web browser and displaying a screen based on the interpreted content
US11620540B2 (en) * 2017-07-07 2023-04-04 Verizon Patent And Licensing Inc. Automated action performance using network data in association with machine learning and big data techniques
US11159596B2 (en) * 2018-03-28 2021-10-26 International Business Machines Corporation Streaming media abandonment mitigation
US10769226B2 (en) * 2018-09-18 2020-09-08 International Business Machines Corporation Dynamically selecting a scope of friends for sharing on social media based on sharing criteria and interest
US11023261B1 (en) 2018-12-28 2021-06-01 Snap Inc. 3RD party application management

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11599371B2 (en) 2018-12-28 2023-03-07 Snap Inc. 3rd party application management

Also Published As

Publication number Publication date
US11599371B2 (en) 2023-03-07
US20210224086A1 (en) 2021-07-22
KR20210110331A (ko) 2021-09-07
EP3903216A1 (en) 2021-11-03
WO2020140045A1 (en) 2020-07-02
US20230153131A1 (en) 2023-05-18
US11023261B1 (en) 2021-06-01
EP3903216B1 (en) 2023-07-19
KR102537852B1 (ko) 2023-05-31

Similar Documents

Publication Publication Date Title
US11445326B2 (en) Track engagement of media items
US11599371B2 (en) 3rd party application management
CN114008597A (zh) 在通信会话中生成动画覆盖
CN113302586A (zh) 动态应用配置
US11641403B2 (en) Analyzing augmented reality content usage data
US11934643B2 (en) Analyzing augmented reality content item usage data
CN115868149A (zh) 用于生成内容的摄像装置用户界面
US11204949B1 (en) Systems, devices, and methods for content selection
US20220206924A1 (en) Accessing third party resources via client application with messaging capability
US11593826B1 (en) Messaging and gaming applications rewards
Jensen et al. 3 RD party application management
US11995108B2 (en) Systems, devices, and methods for content selection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination