CN109804349A - 用于减少下载要求的系统和方法 - Google Patents
用于减少下载要求的系统和方法 Download PDFInfo
- Publication number
- CN109804349A CN109804349A CN201680088859.XA CN201680088859A CN109804349A CN 109804349 A CN109804349 A CN 109804349A CN 201680088859 A CN201680088859 A CN 201680088859A CN 109804349 A CN109804349 A CN 109804349A
- Authority
- CN
- China
- Prior art keywords
- media file
- cache
- content
- client device
- media
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5681—Pre-fetching or pre-delivering data based on network characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
Abstract
一种减少用于内容显示的下载要求的方法包括由客户端设备向内容服务器发送内容请求,该请求包括存储在客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在客户端设备连接到第一网络时执行传输。该方法还包括由客户端设备从内容服务器接收响应,该响应包括用于显示预缓存的媒体文件中的所选择的一个的指令,该响应包括用于显示所选择的预缓存的媒体文件的附加的显示指令,以及客户端设备根据附加的显示指令显示预缓存的媒体文件。
Description
背景技术
客户端设备上的应用可以启动内容显示处理,该处理涉及经由网络从远程服务器请求内容。客户端设备可以接收对包括媒体文件的请求的响应。可以使用诸如带宽的重要的网络资源通过网络下载响应。
发明内容
为了减少所需的带宽使用,客户端设备可以预缓存用于显示的媒体文件,同时连接到非常适合处理大量数据业务量的网络,诸如基于以太网的局域网(LAN)。随后,在连接到不太适合处理大量数据业务量的网络(诸如卫星网络)的同时进行内容显示处理时,可以下载显示预缓存的媒体文件和附加的显示指令的指令,并且可以显示预缓存的媒体文件。除此之外,这允许显示媒体文件,而不需要通过不太适合处理大量数据业务量的网络下载媒体文件自身。这还允许在内容显示处理时下载“新的”附加的显示指令,这可以帮助确保根据未到期的附加的显示指令显示媒体文件。
附图说明
在附图和以下描述中阐述了一个或多个实施方式的细节。根据说明书、附图和权利要求,本公开的其他特征、方面和优点将变得显而易见,其中:
图1A描绘了用于下载和显示内容的第一方法的一些实现。
图1B描绘了用于下载和显示内容的第一方法的一些其他实现。
图1C描绘了用于下载和显示内容的有效的第二方法的一些实现。
图2是描绘用于减少下载要求的系统的一些实现的框图。
图3A是描绘主内容显示处理的实现的流程图。
图3B是描绘辅内容显示处理的实现的流程图。
图4是描绘媒体文件选择处理的实现的流程图。
将认识到,为了说明的目的,一些或所有附图是示意性表示。提供附图是为了说明一个或多个实施例,并明确理解它们不会用于限制权利要求的范围或含义。
具体实施方式
以下是用于减少下载要求的方法、装置和系统的各种概念的更详细描述和实现。以上介绍并在下面更详细讨论的各种概念可以以多种方式中的任何一种来实现,因为所描述的概念不限于任何特定的实现方式。提供特定实现和应用的示例主要是出于说明性的目的。
本申请一般涉及用于减少下载要求的系统和方法。在启动显示处理之后下载媒体文件的客户端设备可以在短时间内消耗大量网络资源。例如,对于在连接到网络时可以下载多少数据有限制的客户端设备,这可能是不利的,例如,一些客户端设备与数据计划(例如与网络提供商的协议)相关联,该数据计划提供在给定时间段内通过蜂窝连接下载有限数量的数据。通过蜂窝网络下载媒体文件可能占用该数据分配的很大一部分。此外,如果多个客户端设备同时通过蜂窝网络下载媒体文件,那么网络的资源可能变得紧张或者可能无法处理该需求。
某些网络可能比其他网络更适合处理大量数据业务量。例如,高带宽Wi-Fi、蓝牙、近场通信(NFC)、无线通用串行总线(USB)、有线USB或(LAN)可以比蜂窝或卫星网络更好地适合处理大量数据业务量。此外,一些客户端设备可以与允许通过高带宽连接无限下载的数据计划相关联,或者允许比通过蜂窝或卫星连接下载所允许的更大的数据限制。
如本文所使用的,术语“主网络”用于指与有利下载条件相关联的网络,诸如客户端设备具有无限的或较大的数据计划的网络,或者非常适合处理大量数据业务量的网络。例如,在一些情况下,高带宽Wi-Fi、蓝牙、NFC、无线USB、有线USB或基于以太网的LAN网络可以是主网络。术语“辅网络”可以指客户端设备具有较小或更昂贵的数据计划的网络,或者与主网络的情况相比比较不适合处理大量数据业务量的网络。例如,在一些情况下,蜂窝或卫星网络可以是辅网络。在其他情况下,第一蜂窝网络可以是主网络,诸如具有低成本或高限制数据计划的家庭网络;第二蜂窝网络可以是辅网络,诸如具有高成本或低限制“漫游”数据计划的外部网络。
通过在主网络上下载媒体文件,客户端设备可以比通过辅网络下载媒体文件更有效地使用计算机和网络资源。例如,在由客户端设备执行的内容显示处理期间,可以实现计算机或网络资源的这种有效使用。客户端设备可以在连接到主网络时下载并存储或预缓存一个或多个媒体文件,并且之后,当连接到辅网络时,客户端设备启动显示预缓存的媒体文件的内容的显示处理。这可以比客户端设备在连接到辅网络并随后下载媒体文件时启动内容显示处理更有效。
然而,可能存在与预缓存用于内容显示处理所需的许多或所有文件相关的问题。例如,内容显示处理可以包括从远程服务器接收指示客户端设备的应用显示下载的媒体文件的显示指令,并且还可以包括从远程服务器接收附加的显示指令。附加的显示指令可以包括例如超文本标记语言(HTML)数据、级联样式表(CSS)数据、和/或统计跟踪信息。例如,可以使用HTML数据或CSS数据来标识或确定或生成显示媒体文件的上下文。例如,HTML数据或CSS数据可以描述或定义显示媒体文件的窗口的一个或多个特性。统计跟踪信息可以用于跟踪与提供、存储、执行、访问、显示或查看媒体文件或与媒体文件有关的元数据有关的信息。例如,统计跟踪信息可以包括用于统计跟踪网站的URL或网址中的任何一个,所述URL或网址跟踪或计算网站的视图或访问,或者可以从网站查看方或访问方接收和存储数据。这可以用于跟踪与媒体文件的显示有关的信息,诸如是否显示媒体文件。下面参考图2更详细地描述附加的显示指令。
在一些情况下,附加的显示指令可能会在一段时间后到期。例如,由统计跟踪URL指定的网站可能仅在下载统计跟踪URL之后的预定时间量内有效(例如,可能仅由例如测量服务器维护和/或监视)。因此,使用尚未到期的“新的”统计跟踪URL来执行内容显示处理可能是有利的。
在一些情况下,可以基于研究或测量计划将HTML或CSS数据传播到客户端设备,所述研究或测量计划诸如试图确定内容的显示方式是否以及如何影响用户体验的研究计划。例如,HTML或CSS数据可以包括在无边界窗口中或者在厚边界窗口中在显示器216上播放媒体文件的指令。通过在特定时间范围内测试这些替代方案可以最好地实现研究计划。至少出于这个原因,根据“新的”HTML或CSS数据在显示器216上播放媒体文件可能是有利的(例如,在研究计划指定的时间范围内根据HTML或CSS数据显示内容)。
如果其他显示指令与媒体文件一起被预缓存,则存在在显示媒体文件时附加的显示指令已经到期的风险。此外,附加的显示指令虽然包括比媒体文件少的数据量,但仍将占用设备存储器中的空间,这在设备存储器中的空间非常宝贵的情况下可能是有问题的。
此外,在一些情况下,内容服务器可以基于诸如与用户设备相关联的内容类型偏好或者媒体文件先前已经被显示在客户端设备上的次数的各种因素选择用于在客户端设备上显示的媒体文件。如果内容服务器如此选择媒体文件并且然后在客户端设备上预缓存它使得其在下一个内容呈现机会时自动显示,则在一些情况下,媒体文件可能仅在经过很长一段时间之后被显示。在显示时或接近显示时选择用于显示的媒体文件以使得选择是基于最新的(up-to-date)“新的(fresh)”因素可能更好。
本公开的一些实现提供了可以解决通过合适的网络连接下载大量数据文件以及使用新的附加的显示指令和新的因素来选择要显示的媒体文件的技术问题的方法和系统。本文描述的一些方法和系统可以通过例如包括客户端设备在主连接上预缓存媒体文件以及之后执行内容显示处理(包括基于新的选择因素选择用于显示的预缓存的媒体文件以及下载附加的显示指令)来解决这些问题。通过预缓存媒体文件,可以有效地使用网络和计算资源,并且通过在辅连接上下载附加的显示指令,可以使用新的附加的显示指令来执行内容显示处理。此外,在要显示内容的时间或附近下载附加的显示指令,而不是将这些附加的显示指令与媒体文件一起预缓存,可以帮助减少对设备中存储空间的需求。
图1A至1C描绘了在客户端设备上检索和显示内容的各种方法。图1A示出了方法的一些实现,其中客户端设备104通过主网络106从内容服务器102下载媒体文件和附加的指令,并且之后显示媒体文件。图1B示出了方法的一些实现,其中客户端设备104通过辅网络108从内容服务器102下载媒体文件并显示媒体文件。图1C示出了根据本说明书的一些实现的方法的一些实现,其中客户端设备104通过主网络106从内容服务器102下载媒体文件并预缓存媒体文件,并且之后通过辅网络108从内容服务器102下载附加的指令,并且根据新的附加的指令显示内容。
现在更详细地参考图1A,图1A示出了上面讨论的使用到期的附加的指令显示内容的问题。在所示的实现中,客户端设备104在第一时间通过主网络106下载附加的指令以及媒体文件,并且在之后的第二时间,诸如在预定时间量已经过去的时间,或者在不再维护与附加的指令相关联的统计跟踪网站的时间(例如,附加的指令已经到期的时间),基于到期的附加的指令来执行媒体文件的显示。在这些实现中,尽管使用主网络106有效地下载数据,然而用于选择媒体文件的选择标准可能已经到期或陈旧,并且没有正确地记录统计跟踪数据。另外,客户端设备104被迫从下载媒体文件的时间起将附加的指令存储在存储器中至少直到显示媒体文件的时间,从而增加了对设备存储器中的存储空间的需求。
现在更详细地参考图1B,图1B示出了上面讨论的通过辅网络108下载媒体文件的问题。在所示的实现中,客户端设备104通过辅网络下载媒体文件和附加的显示指令,并且一次(atatime)(例如,在附加的显示指令仍然是新的(fresh)时)显示媒体文件。虽然统计跟踪处理在这些实现中仍将正常工作,但与图1A中描绘的实现不同,在这些实现中,在与辅网络108相关联的数据计划下分配给客户端设备104的大部分数据将是消耗。
现在更详细地参考图1C,图1C示出了根据本说明书的一些实现的方法的一些实现。图1C示出了客户端设备104在第一时间通过主网络106下载媒体文件。以这种方式,客户端设备有效地使用主网络106,如上所述,主网络106可能比辅网络108更适合下载大文件。在下载媒体文件之后,客户端设备104可以预缓存媒体文件。可以在媒体文件的初始显示之前、并行或之后执行预缓存,使其可用于进一步显示。图1C还示出了客户端设备104在第二时间通过辅网络108下载附加的指令。然后,客户端设备104可以基于新下载的附加的指令显示预缓存的媒体文件。以这种方式,可以执行减少下载用于媒体文件显示的要求的方法。主网络106被有效地用于下载大媒体文件,并且在第二时间使用辅网络下载新的附加的指令,使得例如可以执行统计跟踪处理。由于附加的指令是在内容将要显示的时间或附近下载的,而不是与媒体文件一起下载,因此避免了将附加的指令长时间存储在存储器中的要求,因此有助于减少对设备内存中存储空间的需求。
图2是描绘用于使用预缓存来减少下载要求的系统200的实现的框图。系统200可以包括一个或多个客户端设备202(本文可以称为“客户端设备202”)、内容服务器218以及内容提供商服务器232,其中每个可以通过一个或多个诸如网络250的网络彼此通信。在一些实现中,网络250可以包括LAN网络、Wi-Fi网络、蜂窝网络、广域网(WAN)、诸如公共交换电话网(PSTN)的电话网络、无线链路、卫星链路、设备到设备网状网络、内联网、因特网或其组合。
更详细地参考客户端设备202,在一些实现中,客户端设备202可以类似于图1A-1C中描绘的客户端设备104。客户端设备可以包括显示器216。客户端设备202可以包括一个或多个数据处理器204,其执行存储在存储器206中的指令以执行本文描述的一个或多个操作。存储器206可以是一个或多个存储器设备。在一些实现中,客户端设备202的处理器204和存储器206可以形成处理模块。处理器204可以包括微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等,或其组合。存储器206可以包括但不限于电子、光学、磁性或能够向处理器提供程序指令的任何其他存储或传输设备。存储器206可以包括软盘、光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、磁盘、存储器芯片、只读存储器(ROM)、随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、闪存、光学介质或处理器可从中读取指令的任何其他合适的存储器。指令可以包括来自任何合适的计算机编程语言的代码,例如但不限于C、C++、C#、HTML、XML、以及Visual处理器204可以处理指令并且输出数据以实现客户端设备202上的一个或多个媒体文件的呈现。
在一些实现中,客户端设备202可以包括用于执行应用以及用于请求和显示媒体文件的一个或多个应用、服务、例程、服务器、守护程序或其他可执行逻辑。可以集成这些应用、服务、例程、服务器、守护程序或其他可执行逻辑,使得它们可以彼此通信或者能够调用彼此的例程。在一些实现中,这些应用、服务、例程、服务器、守护程序或其他可执行逻辑可以包括应用208、内容请求单元210、媒体文件数据存储212以及统计跟踪单元214。
在一些实现中,应用208可以包括一个或多个应用,包括配置为启动内容显示处理的应用。例如,应用208可以包括web浏览器应用、游戏应用、地图应用、视频显示应用、产品或服务或商业回顾应用、或可以启动内容显示处理的任何其他应用。应用208可以不同地称为应用、客户端应用、客户端代理、缓存代理或任何其他此类名称。
在一些实现中,应用208可以通过命令内容请求单元210从例如诸如内容服务器218的远程服务器请求内容来启动内容显示处理。应用208可以基于用户输入启动内容显示处理,所述用户输入诸如经由键盘(数字或模拟)、鼠标、指针、触控笔、触摸屏、其他触摸组件或任何其他输入设备的用户输入。例如,应用208可以使按钮或链接显示在显示器216上,并且可以响应于用户点击或以其他方式选择按钮或链接之一来启动内容显示处理。在一些实现中,应用208可以基于例如用于启动内容显示的调度来启动内容显示处理。例如,应用208可以基于自执行应用以来已经过去的预定时间量、或者自执行应用的处理、或者基于已经执行预定义次数的应用的处理来启动内容显示处理。应用208可以基于例如由应用显示的主内容预定时间量来启动内容显示处理。例如,应用208可以是视频显示应用,其在被执行时可以显示诸如用户选择的主内容的主内容。应用208可以显示主内容,并且可以在主内容已经被显示预定时间量之后启动内容显示处理。预定时间量可以基于主内容的总播放时间,或者可以是固定的时间量。在一些实现中,应用208可以在显示主内容之前启动内容显示处理,例如,紧接在显示主内容之前,或者可以在显示主内容的至少一部分之后启动内容显示处理。
在一些实现中,应用208可以在显示器上播放媒体文件216作为内容显示处理的一部分。应用208可以响应于内容请求,基于从内容服务器218接收的显示指令和/或附加的显示指令,在显示器216上播放媒体文件。内容请求可以被理解为从客户端设备202发送到内容服务器218的通信,指示在内容设备202上显示内容的需要或期望,并且内容服务器218可以基于该通信提供或选择用于客户端设备202显示的诸如特定媒体文件的合适内容。例如,内容服务器218可以通过提供用于由客户端设备202下载的媒体文件,或者通过指定存储在客户端设备上的媒体文件进行显示来响应内容请求。在一些实现中,基于包括在显示指令和/或附加的显示指令中的所选择的媒体文件的标识,应用208可以显示存储在媒体文件数据存储212中的预缓存的媒体文件。在一些实现中,应用208可以在从内容服务器218下载媒体文件时显示媒体文件。
在一些实现中,内容请求单元210可以包括用于请求内容和/或用于执行内容显示处理的一个或多个应用、服务、例程、服务器、守护程序或其他可执行逻辑。内容请求单元210可以响应于应用208启动内容显示处理来执行内容显示处理。
在一些实现中,内容请求单元210可以确定网络连接类型。例如,内容请求单元210可以查询客户端设备202的网络接口(未示出)以确定网络连接类型。网络接口可以包括一个或多个应用或其他可执行逻辑,用于经由网络250接收数据并且用于将数据从客户端设备202发送到连接到网络250的任何其他设备。网络连接类型可以是例如主网络连接,诸如高带宽Wi-Fi连接或基于以太网的LAN连接,或者网络连接类型可以是例如辅网络连接,诸如蜂窝或卫星连接。
在一些实现中,响应于确定网络连接是主网络连接,内容请求单元210可以继续将内容显示处理实现为主内容显示处理。例如,这可以是可能具有比辅内容显示处理更密集的下载要求的处理。主内容显示处理可以涉及相对于辅内容显示处理下载大量数据,包括例如媒体文件。执行主内容显示处理的内容请求单元210可以包括将内容请求发送到内容服务器218的内容请求单元210。该请求可以包括与内容的显示有关的内容请求信息。例如,内容请求信息可以包括内容的可接受的播放时间范围、指示内容是否可以包括跳过选项的参数、指示内容是否可以是自动播放内容的参数、或者包括播放方向、分辨率、持续时间或任何其他参数的其他参数。在一些实现中,内容请求信息可以包括存储在媒体文件数据存储212中的预缓存的媒体文件的标识符。
在一些实现中,主显示处理可以包括从例如内容服务器218接收对内容请求的响应的客户端设备。内容请求单元210可以接收对包括显示指令的内容请求的响应。显示指令可以包括,例如,请求客户端设备202在诸如显示器216的显示器上播放媒体文件,和/或请求应用208在用户界面或显示窗口中显示内容。对内容请求的响应可以包括附加的显示指令。附加的显示指令可以包括例如HTML数据、CSS数据、自动播放指令和/或统计跟踪信息。
在一些实现中,可以使用HTML数据或CSS数据,例如,标识或确定或生成要播放媒体文件的上下文。例如,HTML数据或CSS数据可以描述或定义播放媒体文件的窗口的一个或多个特性。自动播放指令可以包括例如使用自动播放来显示内容的指令,或者使用点击播放来显示内容的指令。
在一些实现中,统计跟踪信息可以用于跟踪与提供、存储、执行、访问、显示或查看媒体文件或与媒体文件有关的元数据有关的信息。例如,统计跟踪信息可以包括用于跟踪或计算网站的视图或访问,或者可以从网站查看方或访问方接收和存储数据的网站的任何URL或网址。这可以用于跟踪与媒体文件的显示有关的信息,诸如媒体文件是否被显示、媒体文件的显示次数、显示媒体文件的设备类型、用于显示媒体文件的时间长度、媒体文件是否被观看完成、媒体文件的显示期间的媒体文件的显示的剩余被跳过的点、或者与媒体文件的显示有关的任何其他信息。
在一些实现中,主内容显示处理可以包括从内容服务器218接收媒体文件、显示指令以及附加的显示指令的客户端设备202。如上所述,应用208可以根据显示指令以及根据附加的显示指令显示媒体文件。作为一个示例,显示指令可以包括显示媒体文件的指令,并且附加的显示指令可以包括自动显示媒体文件、在蓝色边界浏览器窗口中显示媒体文件的指令,并且可以指定访问统计-跟踪URL,以及将可以包括与媒体文件是否被观看完成有关的信息的媒体回放统计信息发送或上传到由URL指定的网站。应用208可以基于显示指令和附加的显示指令,在蓝色边界窗口中在显示器216上自动显示媒体文件,并且可以向统计跟踪单元214发送请求以访问由统计-跟踪URL指定的网站,并将媒体回放统计信息发送到网站,所述媒体回放统计信息诸如完成媒体文件显示到网站的指示。
在一些实现中,主内容显示处理可以包括将所显示的媒体文件存储或预缓存在媒体文件数据存储212中的内容请求单元210。内容请求单元210可以将预缓存的媒体文件标记为与辅内容显示处理兼容的媒体文件。内容请求单元210可以在预缓存媒体文件之前确定媒体文件数据存储212中有足够的空间。在一些实现中,内容请求单元210可以响应于确定媒体文件数据存储中的多个存储的媒体文件低于阈值(诸如预定阈值)来预缓存媒体文件。例如,内容请求单元210可以响应于确定存在少于5、10、15、20或者另一数量的已经存储在媒体文件数据存储器中的媒体文件来预缓存媒体文件。在一些实现中,内容请求单元210可以响应于确定由已经存储在媒体数据存储212中的媒体文件使用的存储量低于阈值(诸如预定阈值)来预缓存媒体文件。
在一些实现中,在启动内容显示处理之后,并且响应于确定网络连接是蜂窝连接,内容请求单元210可以启动辅内容显示处理。例如,这可以是可能具有比主下载处理减少的下载要求的处理,并且可能涉及不下载媒体文件。辅内容显示处理可以涉及相对于主内容显示处理下载较少量的数据,诸如下载显示指令和附加的显示指令,但不下载用于显示的媒体文件。执行辅内容显示处理的内容请求单元210可以包括将内容请求发送到内容服务器218的内容请求单元210。该请求可以包括内容请求信息,诸如与要显示的内容相关的参数。该请求还可以包括存储在媒体文件数据存储212中的与辅显示处理兼容的媒体文件的标识,诸如用于每个这样的媒体文件的个体标识符。
在一些实现中,辅内容显示处理可以包括从内容服务器218接收显示指令和附加的显示指令的客户端设备202。显示指令可以包括用于显示存储在媒体文件数据存储212中的至少一个预缓存的媒体文件的指令。应用208可以根据显示指令以及根据附加的显示指令显示至少一个预缓存的媒体文件。该方法允许客户端设备202有效地使用计算和网络资源。
在一些实现中,存储器206可以存储统计跟踪单元214。统计跟踪单元214可以包括一个或多个应用、服务、例程、服务器、守护进程或用于跟踪统计的其他可执行逻辑。在一些实现中,统计跟踪单元214可以包括例如脚本,该脚本在被执行时使得安装在客户端设备202上的web浏览器访问由URL指定的统计跟踪网站,所述URL诸如由从内容服务器218接收的附加的显示指令指定的URL。统计跟踪网站可以由测量服务器维护。统计跟踪单元214还可以向统计跟踪网站发送或上载媒体回放统计信息,诸如与是否以及如何显示媒体文件有关的信息、和/或用户在显示期间是否以及如何与媒体文件交互。例如,媒体文件可以包括到网页的链接,并且统计跟踪单元214可以向统计跟踪网站发送信息,该信息指示被显示媒体文件的用户是否访问或点击链接以及访问或点击链接的次数。
在一些实现中,客户端设备202包括显示器216。显示器216可以是例如液晶显示器(LCD)、薄膜晶体管LCD(TFT)、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、电子纸显示器、等离子显示面板(PDP)和/或其他显示器等,用于向用户显示信息。在一些实现中,显示器216可以是触摸显示器,诸如被配置以接收触觉输入并且将输入转换为信号的触摸屏。显示器216可以显示例如由应用208显示的媒体文件。
现在更详细地参考内容服务器218,内容服务器218可以类似于图1A-1C中描绘的内容服务器102。内容服务器218可以包括一个或多个数据处理器220,其执行存储在存储器222中的指令以执行本文描述的一个或多个操作。存储器222可以是一个或多个存储器设备。在一些实现中,客户端内容服务器218的处理器220和存储器222可以形成处理模块。处理器220可以包括微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等,或其组合。存储器222可以包括但不限于电子、光学、磁性或能够向处理器提供程序指令的任何其他存储或传输设备。存储器222可以包括软盘、光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、磁盘、存储器芯片、只读存储器(ROM)、随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、闪存、光学介质或处理器可以读取指令的任何其他合适的存储器。指令可以包括来自任何合适的计算机编程语言的代码,诸如但不限于C、C++、C#、 HTML、XML、以及Visual
存储器222可以包括一个或多个应用、服务、例程、服务器、守护进程或其他可执行逻辑,用于从内容请求单元210接收内容请求,和/或用于选择和检索用于传输到客户端设备202的内容。存储器222可以包括内容检索单元224、内容选择单元226、存储的媒体文件匹配单元228以及附加的显示指令检索单元230。
在一些实现中,内容服务器218可以经由例如网络(诸如网络250)从内容请求方210接收内容请求。该请求可以包括与内容的显示有关的内容请求信息。例如,内容请求信息可以包括内容的可接受的播放时间范围、指示内容是否可以包括跳过选项的参数、指示内容是否可以是自动播放内容的参数、指示网络连接类型的参数(例如,指示客户端设备202当前是否连接到主网络或辅网络的参数)或其他参数。在一些实现中,该请求可以包括存储在媒体文件数据存储212中的一个或多个预缓存的媒体文件的标识符。例如,可以接收这样的请求作为辅内容显示处理的一部分。内容服务器218可以将任何这样接收的标识符存储在存储器222中。响应于接收到请求,内容服务器218可以命令内容检索单元224检索与该请求有关的数据。
在一些实现中,内容检索单元224可以包括一个或多个应用、服务、例程、服务器、守护进程或检索与内容请求有关的数据的其他可执行逻辑。在一些实现中,内容检索单元224可以通过从一个或多个远程服务器(诸如内容提供商服务器232)发送对内容项的一个或多个标识符的请求来检索与内容请求有关的数据。内容检索单元224可以请求与内容请求信息相对应的内容项的标识符。例如,内容检索单元224可以从内容提供商服务器232请求满足包括在内容请求信息中的可接受的播放时间要求的媒体文件的标识符。这些标识符可以之后用于标识已经存储在内容服务器218上的与标识符相对应的媒体文件。在一些实现中,内容检索单元224可以请求媒体文件自身,而不是内容项的标识符或者除了内容项的标识符之外。例如,当媒体文件尚未存储在内容服务器218上或者内容服务器218不容易访问时,可以使用该方法。
在一些实现中,内容检索单元224可以从内容提供商服务器232接收对内容项或媒体文件的标识符的请求的响应。响应可以包括,例如,满足内容请求信息中包括的一个或多个要求的内容项的标识符、和/或满足内容请求信息中包括的一个或多个要求的媒体文件。内容检索单元234可以标识与内容项的标识符相对应的媒体文件或从内容提供商服务器232接收的媒体文件,并且可以提供这些媒体文件或者将这些媒体文件的位置提供给内容选择单元226。
在一些实现中,内容检索单元224可以从内容提供商服务器232接收对内容项的标识符或媒体文件的请求的响应,包括由内容提供商服务器232提供的选择标准和相应的货币协议,其可以在之后用于由内容选择单元226选择所标识的媒体文件。
在一些实现中,内容选择单元226可以包括一个或多个应用、服务、例程、服务器、守护进程或用于选择要显示的内容的其他可执行逻辑。内容选择单元226可以选择用于在客户端设备202上显示的一个或多个内容项。用于显示的内容项的选择可以基于例如由内容提供商服务器232发送并由内容服务器218接收的选择标准和货币协议。内容选择单元226可以基于例如与货币协议相关联的货币量和/或选择标准与通过客户端设备的媒体文件显示之间的对应关系,将选择权重点指派给货币协议。内容选择单元226还可以基于其他因素来指派选择权重点,所述其他因素包括例如与客户端设备相关联的优选内容类别、或者客户端设备先前已经显示媒体文件的次数。本文描述的一些实现的一个优点是可以在媒体文件的显示时或附近执行选择权重点的指派,使得与在客户端设备上预缓存媒体文件然后直接显示预缓存的媒体文件的进程相比,基于其指派部分权重点的因素或条件被评估为最新的信息。内容选择单元226可以基于从例如内容提供商服务器232接收的多个货币协议中具有最多数量的选择点的货币协议来选择货币协议,并且内容服务器218然后可以发送,例如媒体文件、媒体文件的标识、或与媒体文件有关的附加的指令到客户端设备202。
货币协议可以指定将在媒体文件被显示和/或与显示媒体文件的客户端设备的用户或查看者交互的情况下支付的货币支付量。在选择和/或提供媒体文件用于显示的处理中,内容选择单元226可以利用货币支付量。例如,如果用户与内容提供商服务器232的媒体文件交互,则内容提供商服务器232可以基于发布者将支付一定量的钱的标识来指派选择权重点内容(例如,如果用户点击显示的媒体文件,则将支付$3)。内容提供商服务器232可以将更高数量的选择点分配给与更高货币量相关联的货币协议。在其他示例中,如果选择并提供媒体文件,则内容发布者可以同意支付一定量的钱(例如,每当选择和服务媒体文件时将支付$0.005)。
在一些实现中,内容选择单元226可以接收不同的货币协议以支付用于以不同的方式显示媒体文件的不同的量。例如,内容选择单元226可以接收与在显示器上播放媒体文件相关联的不同协议,这取决于媒体文件是否已经预缓存在客户端设备202上。在一些实现中,如果媒体文件已经预缓存在客户端设备202上,则协议可以与用于在显示器上回放媒体文件的较高货币量相关联,并且如果媒体文件没有预缓存在客户端设备202上,则协议可以与较低的货币量相关联。在一些实现中,可以基于在设备上预缓存的关联的媒体文件将选择权重点添加到货币协议。作为另一示例,协议可以与用于点击播放媒体文件的较低支付量相关联。点击播放媒体文件可以是例如响应于用户选择播放选项而播放的视频媒体文件(诸如通过点击由应用208提供的用户界面上显示的播放按钮)。与例如自动播放媒体文件相比,以这种方式显示媒体文件的协议可以具有较低货币量,因为如果用户不点击播放则可能不显示媒体文件。相反,协议可以与作为自动播放媒体文件的用于在客户端设备202上显示媒体文件的较高货币量相关联。自动播放媒体文件可以是例如在用户没有选择播放选项的情况下自动显示给用户的媒体文件。这种媒体文件比点击播放媒体文件更可能被显示,并且将媒体文件作为自动播放媒体文件提供的货币值可以更高。
在一些实现中,内容选择单元226可以确定客户端设备202是否将满足一个或多个选择标准。例如,内容选择单元226可以接收与具有自动播放显示标准的高货币量相关联的货币协议。在一些实现中,选择标准可以是要求的标准,使得除非满足选择标准,否则将不认为协议的条款被满足。在一些实现中,选择标准是优选标准。内容选择单元226可以基于例如是否满足优选标准,或者基于满足优选标准的程度来指派权重点。响应于接收与高货币量相关联的货币协议,内容选择单元226可以确定媒体文件的显示是否满足自动播放标准。在一些实现中,内容选择单元226可以基于内容请求信息确定内容请求与自动播放兼容-例如,内容请求信息可以指示允许自动播放。在其他实现中,内容选择单元226可以诸如基于自动显示协议间接地确定自动播放标准。例如,内容选择单元226可以遵循默认协议,所述默认协议假设当(i)媒体文件预缓存在客户端设备202上,或者(ii)客户端设备连接到主网络时,媒体文件的显示将是自动播放的。当媒体文件未预缓存,并且客户端设备未连接到主网络时,内容选择单元可以假设不允许自动播放。该默认协议可以用于避免客户端设备202在连接到辅网络时自动下载媒体文件,这对用户来说可能是令人讨厌的。因此,内容选择单元226可以通过分析内容请求数据以确定条件(i)或(ii)中的任何一个是否有效,来间接地确定是否满足自动播放标准。
在一些实现中,内容选择单元226包括预缓存的媒体文件匹配单元228。预缓存的媒体文件匹配单元228可以包括一个或多个应用、服务、例程、服务器、守护进程或其他可执行逻辑,用于标识从内容提供商服务器232接收的媒体文件或媒体文件的标识符是否与存储在客户端设备202上的媒体文件相匹配。内容选择单元226可以使用预缓存的媒体文件匹配单元228,例如,在选择要显示的媒体文件时,和/或在基于预缓存在客户端设备202上用于显示的媒体文件确定是否假设或确定允许自动播放时。
在一些实现中,内容选择单元226包括附加显示检索单元230。附加的显示指令检索单元230可以包括一个或多个应用、服务、例程、服务器、守护进程或用于检索附加的显示指令的其他可执行逻辑。这样的指令可以包括,例如,用于统计跟踪网站的URL、或指示或定义用于显示媒体文件的上下文的HTML或CSS数据。附加的显示指令检索单元230可以从存储器222检索附加的显示指令,或者可以生成附加的显示指令。例如,附加的显示指令检索单元230可以从内容提供商服务器232接收统计跟踪网站URL,并且可以将该URL提供给存储在存储器222中的应用,以便最终传输到客户端设备202。或者,附加的显示指令检索单元230可以从存储在存储器222中的多个统计跟踪URL中检索已知的URL,并且可以将URL提供给存储在存储器222中的应用,以便最终传输到客户端设备202。例如,当内容服务器218维护或管理统计跟踪网站而不是内容提供商服务器232或除内容提供商服务器232之外维护或管理统计跟踪网站时,这可以实现。
作为另一示例,附加的显示指令检索单元230可以根据研究计划检索HTML或CSS数据、可以改变或更改数据、或生成新数据。例如,研究计划可能要求在第一时间段期间在具有红色边界的窗口中显示内容,并且在第二时间段内在具有蓝色边界的窗口中显示内容。与研究计划有关的信息可以存储在存储器222中。附加的显示指令检索单元230可以基于研究计划并基于当前时间是否落在第一时间段或第二时间段内的确定来生成适当的HTML数据,并且可以提供这样的信息用于由内容服务器218传输到客户端设备202。
现在更详细地参考内容提供商服务器232,内容提供商服务器232可以包括一个或多个执行存储在存储器236中的指令以执行本文描述的一个或多个操作的数据处理器234。存储器236可以是一个或多个存储器设备。在一些实现中,内容提供商服务器232的处理器234和存储器236可以形成处理模块。处理器234可以包括微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等、或其组合。存储器236可以包括但不限于电子、光学、磁性或能够向处理器提供程序指令的任何其他存储或传输设备。存储器236可以包括软盘、光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、磁盘、存储器芯片、只读存储器(ROM)、随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、闪存、光学介质或处理器可从中读取指令的任何其他合适的存储器。指令可以包括来自任何合适的计算机编程语言的代码,例如但不限于C、C++、C#、 HTML、XML、以及Visual存储器236可以包括一个或多个应用、服务、例程、服务器、守护进程或其他可执行逻辑,用于生成和/或发送货币协议以放置媒体文件用于显示。
在一些实现中,内容提供商服务器232可以从内容服务器218接收标识内容的请求。内容提供商服务器232可以通过向内容服务器218发送媒体文件的一个或多个标识符来发送对该请求的响应。
在一些实现中,内容提供商服务器232可以从内容服务器218接收发送一个或多个媒体文件的请求。内容提供商服务器232可以通过向内容服务器218发送一个或多个媒体文件来发送对该请求的响应。
在一些实现中,内容提供商服务器232还可以发送包括货币协议和/或用于生成货币协议的规则或协议的响应。例如,内容提供商服务器232可以发送媒体文件标识符和两个或更多个相关联的货币支付量,每个货币支付量具有不同的标准,诸如,自动播放标准或点击播放标准。
图3A描绘了主内容显示处理300的一些实现。如上所述,主内容显示处理可以是由客户端设备202响应于内容请求单元210确定客户端设备连接到主网络而实现的处理。主内容显示处理可以包括步骤302-322。通常,在步骤302,应用208可以启动内容显示处理。在步骤304,内容请求单元210可以将网络连接类型标识为主网络连接。在步骤306,内容请求单元210可以将内容请求发送到内容服务器218。在步骤308,内容服务器218可以接收内容请求。在步骤310,内容检索单元224可以向内容提供商服务器232发送标识或提供媒体文件的请求。在步骤312,内容提供商服务器232可以接收该请求,并且可以通过向内容服务器218发送与该请求相对应的一个或多个媒体文件标识符来进行响应。在步骤314,内容检索单元224可以接收一个或多个媒体文件标识符。在步骤316,内容选择单元226可以选择用于显示的媒体文件。在步骤318,内容服务器218可以将所选择的媒体文件发送到客户端设备202。在步骤320,客户端设备202可以在显示器216上接收和播放媒体文件。在步骤322,客户端设备202可以预缓存媒体文件。
现在更详细地参考主显示处理300的步骤,在一些实现中,在步骤302,应用208可以启动内容显示处理。应用208可以通过命令内容请求单元210从例如诸如内容服务器218的远程服务器请求内容来启动内容显示处理。应用208可以基于用户输入或基于例如用于启动内容显示的调度来启动内容显示处理。在一些实现中,应用208可以在显示主内容之前启动内容显示处理,例如,紧接在显示主内容之前,或者可以在显示主内容的至少一部分之后启动内容显示处理。然后,应用208可以进行到步骤304。
在一些实现中,在步骤304,内容请求单元210可以将网络连接类型标识为主网络连接。例如,内容请求单元210可以查询客户端设备202的网络接口以确定网络连接类型。网络接口可以包括一个或多个应用或其他可执行逻辑,用于经由网络250接收数据以及用于将数据从客户端设备202发送到连接到网络250的任何其他设备。通常,网络连接类型可以是例如主网络连接,诸如高带宽Wi-Fi连接或基于以太网的LAN,或者网络连接类型可以是例如辅网络连接,诸如蜂窝或卫星连接。在步骤304,内容请求单元210可以标识客户端设备202连接到主网络。然后,内容请求单元210可以进行到步骤306。
在一些实现中,在步骤306,内容请求单元210可以将内容请求发送到内容服务器218。该请求可以包括与内容的显示有关的内容请求信息。例如,内容请求信息可以包括内容的可接受的播放时间范围,指示内容是否可以包括跳过选项的参数、指示内容是否可以是自动播放内容的参数、或其他参数。在一些实现中,该请求可以但不必包括预缓存在客户端设备202上的媒体文件的标识符。
在一些实现中,在步骤308,内容服务器218可以经由例如网络(诸如网络250)接收内容请求。该请求可以包括与内容的显示有关的内容请求信息。例如,内容请求信息可以包括内容的可接受的播放时间范围、指示内容是否可以包括跳过选项的参数、指示内容是否可以是自动播放内容的参数、指示网络连接类型的参数(例如,指示客户端设备202当前是否连接到主网络或辅网络的参数)或其他参数。响应于接收到请求,内容服务器218可以命令内容检索单元224检索与该请求有关的数据。然后,内容服务器218可以进行到步骤310。
在一些实现中,在步骤310,内容检索单元224可以通过向一个或多个远程服务器(诸如内容提供商服务器232)发送请求来检索与内容请求有关的数据,以标识或提供一个或多个媒体文件用于显示。内容检索单元224可以请求与内容请求信息相对应的媒体文件的标识符。例如,内容检索单元224可以从内容提供商服务器232请求满足包括在内容请求信息中的可接受的播放时间要求的媒体文件的标识符。这些标识符可以之后用于标识已经存储在内容服务器218上的与标识符相对应的媒体文件。在一些实现中,内容检索单元224可以请求媒体文件自身,而不是内容项的标识符或者除了内容项的标识符之外。例如,当媒体文件尚未存储在内容服务器218上或者内容服务器218不容易访问时,可以使用该方法。
在一些实现中,在步骤312,内容提供商服务器232可以接收媒体文件标识符请求,并且可以通过向内容服务器发送相应的媒体标识符来进行响应。响应传输可以包括例如满足内容请求信息中包括的一个或多个要求的内容项的标识符、和/或满足内容请求信息中包括的一个或多个要求的媒体文件。内容检索单元224可以标识从内容提供商服务器232接收的媒体文件,并且可以提供那些媒体文件或者将这些媒体文件的位置提供给内容选择单元226。
在一些实现中,在步骤314,内容检索单元224可以接收对来自内容提供商服务器232的标识或提供媒体文件的请求的响应。在一些实现中,内容检索单元224可以接收对来自内容提供商服务器232的标识或提供媒体文件的请求的响应,包括由内容提供商服务器232提供的选择标准和相应的货币量,其之后可以用于选择由内容选择单元226标识的媒体文件。然后,内容服务器218可以进行到步骤316。
在一些实现中,在步骤316,内容选择单元226可以选择媒体文件用于显示。内容选择单元226可以基于例如货币协议和选择标准来选择用于显示的内容。内容选择单元226可以根据诸如图4中描绘的并且在下面更详细地描述的示例内容选择处理400的处理来选择用于显示的媒体文件。内容选择单元可以基于与选择标准相关联的最高货币量或者通过在客户端设备202上显示媒体文件而满足的货币协议来选择用于显示的媒体文件。然后,内容服务器218可以进行到步骤318。
在一些实现中,在步骤318,内容选择单元226可以将用于显示的内容发送到客户端设备202。内容选择单元226可以将用于显示的内容发送到客户端设备202,包括所选择的媒体文件和由附加的显示指令检索单元230检索的附加的显示指令。内容选择单元226可以基于在步骤308接收的指示主网络连接类型的参数的标识来发送包括媒体文件的用于显示的内容。
在一些实现中,在步骤320,客户端设备202可以在显示器216上接收和播放媒体文件。客户端设备202可以根据附加的显示指令在显示器216上播放媒体文件。例如,附加的显示指令可以包括统计跟踪URL和HTML数据,其指示要显示内容的窗口的格式。客户端设备202可以在根据HTML数据格式化的窗口中在显示器216上播放媒体文件,并且统计跟踪单元214可以使客户端设备202的web浏览器访问由URL指定的统计跟踪网站。然后,客户端设备202可以进行到步骤322。
在一些实现中,在步骤322,内容请求单元210可以将所显示的媒体文件预缓存在媒体文件数据存储212中。如上所述,虽然称为预缓存,然而文件可能已经被显示(例如,在步骤320)。因此,“预缓存”可以被认为是相对于后续请求预缓存的。内容请求单元210可以将预缓存的媒体文件标记为与辅内容显示处理兼容的媒体文件。内容请求单元210响应于确定媒体文件数据存储中有足够的空间或响应于确定少于预定阈值数量的媒体文件存储在媒体文件数据存储器中来预缓存媒体文件。
图3B描绘了辅内容显示处理301的一些实现。如上所述,辅内容显示处理可以是由客户端设备202响应于内容请求单元210确定客户端设备连接到辅网络而实现的处理。辅内容显示处理可以包括步骤324-342。通常,在步骤324,应用208可以启动内容显示处理。在步骤326,内容请求单元210可以将网络连接类型标识为辅网络连接。在步骤328,内容请求单元210可以向内容服务器218发送内容请求,该请求包括在客户端设备202上预缓存的媒体文件的标识符。在步骤330,内容服务器218可以接收内容请求。在步骤332,内容检索单元224可以将媒体文件标识符请求发送到内容提供商服务器236。在步骤334,内容提供商服务器232可以接收媒体文件标识符请求,并且可以通过向内容服务器218发送与该请求相对应的一个或多个媒体文件标识符来进行响应。在步骤336,内容检索单元224可以接收一个或多个媒体文件标识符。在步骤338,内容选择单元226可以选择媒体文件用于显示。在步骤340,内容服务器218可以向客户端设备202发送显示指令和附加的显示指令。在步骤342,客户端设备202可以接收显示指令和附加的显示指令,并且可以显示所选择的预缓存的媒体文件。
可以以与上述主显示处理300的一些步骤类似的方式执行辅显示处理301的一些步骤。例如,步骤324和330-338可以与步骤302和308-316类似地执行。以下描述更详细地描述了辅显示处理301的其他步骤。
在一些实现中,在步骤326,内容请求单元210可以将网络连接类型标识为辅网络连接,诸如到蜂窝网络的连接。例如,内容请求单元210可以查询客户端设备202的网络接口以确定网络连接类型。网络接口可以包括一个或多个应用或其他可执行逻辑,用于经由网络250接收数据并且用于将数据从客户端设备202发送到连接到网络250的任何其他设备。网络接口可以响应该查询,并指示网络连接是辅网络连接类型。
在一些实现中,在步骤328,内容请求单元210可以将内容请求发送到内容服务器218。该请求可以包括与内容的显示有关的内容请求信息。例如,内容请求信息可以包括内容的可接受的播放时间范围,指示内容是否可以包括跳过选项的参数、指示内容是否可以是自动播放内容的参数、或其他参数。该请求还可以包括存储在媒体文件数据存储212中的任何预缓存的媒体文件的标识。
如上所述,步骤330至338可以类似于对应的步骤320-348。在一些实现中,在步骤340,内容请求单元210可以发送显示指令和附加的显示指令。该步骤可以以与主内容显示处理300的步骤318类似的方式执行,但是不包括将媒体文件传输到客户端设备202。而是,显示指令或附加的显示指令可以包括所选择的预缓存的媒体文件的标识。这有助于在客户端设备连接到辅网络时减少下载要求。
在一些实现中,在步骤342,客户端设备可以接收显示指令和附加的显示指令,并且可以显示所选择的预缓存的媒体文件。客户端设备202可以基于包括在显示指令或附加的显示指令之一或两者中的预缓存的媒体文件的标识,从媒体文件数据存储212中检索所选择的预缓存的媒体文件。客户端设备202还可以根据附加的显示指令在显示器216上播放媒体文件。
现在参考图4,示出了描绘媒体文件选择处理400的流程图。媒体文件选择处理400可以包括自动播放协议,其确定是否允许在客户端设备202上自动播放媒体文件。在一些实现中,媒体文件选择处理400可以由内容选择单元226执行。媒体文件选择处理400可以包括步骤402-424。通常,在步骤402,内容选择单元226可以从一个或多个内容提供商服务器232接收媒体文件标识符。媒体文件标识符可以与货币协议相关联,所述货币协议可以包括货币量和一个或多个选择标准。在步骤404,内容选择单元226可以基于例如包括在内容请求信息中的网络类型参数值来确定客户端设备是否连接到主网络。如果内容选择单元226确定客户端设备202连接到主网络,则内容选择单元226可以进行到步骤420,在步骤420,内容选择单元226可以针对所有媒体文件将自动播放参数设置为1。然后,内容选择单元226可以进行到步骤422,在步骤422,内容选择单元226可以基于选择标准确定每个媒体文件的最高相应货币量。然后,内容选择单元226可以进行到步骤424并选择具有最高货币量的媒体文件。
返回步骤404,如果内容选择单元226确定客户端设备202没有连接到主网络(例如,连接到辅网络),则内容选择单元226可以进行到步骤406。在步骤406,内容选择单元226可以将索引n设置为1,并且可以进行到步骤408。在步骤408,内容选择单元226可以确定索引n是否大于要评估的媒体文件的数量M。如果内容选择单元226确定索引n也不大于数量M,则内容选择单元226可以进行到步骤410。在步骤410,内容选择单元226的预缓存的媒体文件匹配单元228可以确定是否预缓存了第n个媒体文件。如果预缓存的媒体文件匹配单元228确定第n个媒体文件被预缓存,则内容选择单元226可以进行到步骤412并将用于第n个媒体文件的自动播放参数设置为1,然后可以进行到步骤414。返回步骤410,如果预缓存的媒体文件匹配单元228确定第n个媒体文件未预缓存,则内容选择单元226可以进行到步骤414,并将第n个媒体文件的自动播放参数设置为0,然后可以进行到步骤416。在步骤416,内容选择单元226可以基于选择标准确定用于第n个内容项的货币。然后,内容选择单元226可以进行到步骤418,在步骤418,内容选择单元226可以增加索引n,然后内容选择单元226可以进行到步骤408。在步骤408,如果内容选择单元226确定索引n大于数量M,则内容选择单元226可以进行到步骤424,其中,如上所述,内容选择单元226可以选择具有最高货币量的媒体文件用于显示。
现在更详细地参考步骤402-424,在一些实现中,在步骤402,内容选择单元226可以从一个或多个内容提供商服务器232接收一组一个或多个媒体文件标识符。内容选择单元226可以接收与媒体文件标识符相关联的货币协议。每个货币协议可以包括货币量和相应的选择标准。内容选择单元226可以执行媒体文件选择处理400以确定该组媒体文件中的哪个媒体文件与最高货币量相关联。在以下描述中,“接收货币量”可以指接收包括货币量的货币协议。
在一些实现中,在步骤404,内容选择单元226可以确定客户端设备202是否连接到主网络。内容选择单元226可以基于从客户端设备202接收的内容请求信息进行该确定,该内容请求信息可以包括指示客户端设备202在从内容服务器218请求内容时连接到哪种类型的网络的网络类型参数。如果内容选择单元226确定客户端设备202连接到主网络,则内容选择单元226可以进行到步骤420。如果内容选择单元226确定客户端设备202未连接到主网络(例如,连接到辅网络),则内容选择单元226可以进行到步骤406。
在一些实现中,在步骤406,内容选择单元226可以将索引n设置为1。索引n可以从初始值1运行到值M,其中M是由内容服务器218接收的媒体文件组中的媒体文件的数量。通常,在步骤408-418中,内容选择单元226可以执行涉及该组媒体文件的第n个媒体文件的操作和分析。在将索引n设置为初始值1之后,内容选择单元226可以进行到步骤408。
在一些实现中,在步骤408,内容选择单元226可以将索引值n与媒体文件的总数M进行比较。将索引值与媒体文件的总数进行比较可以包括数据串的逐位比较(例如,异或结果为0表示索引等于阈值);计算该组媒体文件的媒体文件总数与索引之间的差值,并确定结果是否为负、正或零;或任何其他此类方法。这可以帮助确定是否已经在媒体文件选择处理400中处理了所有M个媒体文件。如果索引值n大于或等于M,则内容选择单元226可以进行到步骤424以选择具有最高货币量的媒体文件。否则,内容选择单元226可以进行到步骤410。
在一些实现中,步骤410,内容选择单元226的预缓存的媒体文件匹配单元228可以确定第n个媒体文件是否预缓存在客户端设备上。预缓存的媒体文件匹配单元228可以通过将第n个媒体文件标识符与从客户端设备202接收的预缓存的媒体文件标识符列表中的每个媒体文件进行比较作为内容请求的一部分来进行该确定。在一些实现中,媒体文件标识符包括标识字符串。预缓存的媒体文件匹配单元228可以执行比较,例如,作为第n个媒体文件的标识字符串与用于预缓存的媒体文件标识符列表的每个媒体文件标识符的相应标识字符串的字符串比较。如果预缓存的媒体文件匹配单元228确定第n个媒体文件被预缓存在客户端设备202上,则内容选择单元226可以进行到步骤412。如果预缓存的媒体文件匹配单元228确定第n个媒体文件未预缓存在客户端设备202上,则内容选择单元226可以进行到步骤414。
在一些实现中,在步骤412,内容选择单元226可以将第n个媒体文件的自动播放参数值设置为1。这可以指示第n个媒体文件可以自动播放。因为媒体文件被预缓存在客户端设备202上,所以不需要下载媒体文件来在客户端设备202上显示媒体文件。因此,即使在不允许对必须下载的任何媒体文件进行自动播放的策略下,为了保护用户免于在辅网络连接上自动下载内容,例如,仍然可以允许第n个媒体文件自动播放。例如,之后可以在媒体文件选择处理400中使用自动播放参数来确定第n个媒体文件是否满足自动播放标准。在将用于第n个媒体文件的自动播放参数值设置为1之后,内容选择单元226可以进行到步骤416。
现在返回到步骤410,在一些实现中,如果预缓存的媒体文件匹配单元228确定第n个内容项未被预缓存,则内容选择单元226可以进行到步骤414。在步骤414,内容选择单元226可以将第n个媒体文件的自动播放参数值设置为0。这可以指示不允许第n个媒体文件自动播放。这可以通过防止通过辅网络连接自动下载媒体文件来帮助保护用户。然后,内容选择单元226可以进行到步骤416。
在一些实现中,在步骤416,内容选择单元226可以基于选择标准确定第n个媒体文件的最高货币量。例如,内容选择单元226可能已经接收了用于该组M个媒体文件中的至少一些媒体文件的多个货币量和选择标准。如上所述,一些货币量可以与选择标准相关联。内容选择单元226可以仅选择满足其相关标准的货币量。例如,如果货币量与相应的媒体文件必须作为自动播放媒体文件显示的标准相关联,则如果第n个媒体文件可以显示为自动播放媒体文件,则货币量可以仅被选择为第n个媒体文件的潜在最高货币量,可以通过用于第n个媒体文件的自动播放参数值为1来表示。在一些在实现中,内容选择单元226可以针对第n个媒体文件考虑由其相关标准被满足的内容选择单元226接收的每个货币量,并且内容选择单元226可以选择那些货币量的最高货币量作为用于第n个媒体文件的最高货币量。
在一些实现中,内容选择单元226然后可以进行到步骤418,其中索引值n可以增加,并且内容选择单元226可以进行到步骤408。在步骤408,如果内容选择单元226确定索引值n大于该组媒体文件M的媒体文件的数量,则内容选择单元226可以确定已经处理了所有媒体文件,并且可以进行到步骤242。
现在返回到步骤404,在一些实现中,内容选择单元226确定客户端设备202连接到主网络。然后,内容选择单元226可以进行到步骤420。
在一些实现中,在步骤420,内容选择单元226可以为播放媒体文件(setoffmediafiles)的每个媒体文件将自动播放参数设置为1。这与上面参考步骤412描述的策略一致,其可以在某些场景中禁止自动播放,以便保护用户免于在辅网络连接上自动下载媒体文件。因为客户端设备202连接到主网络,所以客户端设备在辅网络连接上下载媒体文件可能没有实质风险。然后,内容选择单元226可以进行到步骤422。
在一些实现中,在步骤422,内容选择单元226可以基于内容选择单元226从内容提供商服务器232接收的货币量和相关联的选择标准,为M个媒体文件中的每一个确定最高的相应货币量。这可以在类似于上面关于步骤416描述的处理中执行。然后,内容选择单元226可以进行到步骤424。
在一些实现中,在步骤424,内容选择单元226可以选择具有最高“最高货币量”的媒体文件-即,其中最高货币量是媒体文件组中最大的媒体文件。然后,内容服务器218可以将所选择的媒体文件或所选择的媒体文件标识符发送到客户端设备202,用于在显示器216上显示。
因此,本文讨论的系统和方法提供了用于减少内容显示的下载要求的实现,潜在地改善了带宽消耗并减少了设备间通信,通过在更有效和更高速的接口上检索数据来改善客户端设备的电池寿命,从而提供更好的服务提供商策略合规性(compliance)或减少成本(例如,通过使用高带宽、低成本的主连接,而不是更昂贵的辅连接等)。
在第一方面,本公开涉及一种减少内容显示的下载要求的方法。该方法可以包括由客户端设备向内容服务器发送内容请求,该请求包括用于存储在客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在客户端设备连接到第一网络的同时执行该传输。该方法还可以包括由客户端设备从内容服务器接收包括用于显示预缓存的媒体文件中的所选择的一个的指令的响应,该响应包括与所选择的预缓存的媒体文件的显示有关的附加的显示指令,以及由客户端设备根据附加的显示指令显示预缓存的媒体文件。
在一些实现中,减少用于显示内容的下载要求的方法还可以包括在发送内容请求之前第一时间,同时在连接到第二网络时,由客户端设备下载一个或多个媒体文件,以及由客户端设备存储每个媒体文件作为预缓存的媒体文件。
在一些实现中,第一网络是蜂窝或卫星网络,第二网络是Wi-Fi网络或基于以太网的LAN网络。
在一些实现中,响应于客户端设备确定在客户端设备上预缓存少于预定数量的媒体文件,执行将每个媒体文件存储为预缓存的文件。
在一些实现中,响应于客户端设备确定由客户端设备上的预缓存的媒体文件使用少于预定量的存储存储器(storage memory),执行将每个媒体文件存储为预缓存的文件。
在一些实现中,显示所选择的预缓存的媒体文件的请求包括在显示器上自动播放媒体文件的请求。
在一些实现中,附加的显示指令包括指定要显示媒体文件的框架或窗口的指令和/或将媒体回放统计发送到测量服务器的指令。
在一些实现中,减少用于显示内容的下载要求的方法还可以包括发送媒体回放统计的指令,该指令包括用于发送标识以下中的至少一个的信息的指令:媒体文件被显示的次数、其上显示媒体文件的设备类型、或显示媒体文件期间的播放时间,在该时间跳过媒体文件的剩余显示。
在第二方面,本公开涉及一种减少内容显示的下载要求的方法。该方法可以包括由内容服务器从连接到第一网络的客户端设备接收内容请求,该内容请求包括在客户端设备处预缓存的一个或多个媒体文件的相应标识符,由内容服务器从内容提供商请求媒体文件的标识,该请求包括在客户端设备处预缓存的一个或多个媒体文件的标识符,以及由内容服务器从内容提供商接收媒体文件的标识。该方法还可以包括由内容服务器将媒体文件的标识与预缓存的媒体文件之一的标识符进行匹配,由内容服务器选择所标识的预缓存的媒体文件用于显示,由内容服务器检索对应于预缓存的媒体文件的附加的显示指令,由内容服务器向客户端设备发送包括根据附加的显示指令显示预缓存的媒体文件之一的指令的响应,该响应包括附加的显示指令。
在一些实现中,减少用于显示内容的下载要求的方法还包括:在客户端设备连接到第二网络时,由内容服务器在接收内容请求之前的第一时间从客户端设备接收用于媒体文件的初始请求,以及响应于接收用于媒体文件的初始请求,由内容服务器向客户端设备发送要存储为预缓存的媒体文件的媒体文件。
在一些实现中,第一网络是蜂窝或卫星网络,第二网络是Wi-Fi网络或基于以太网的LAN网络。
在一些实现中,附加的显示指令包括指定要显示预缓存的媒体文件的框架或窗口的指令和/或用于将媒体回放统计发送到测量服务器的指令。
在一些实现中,将媒体回放统计发送到测量服务器的指令包括用于发送标识以下中的至少一个的信息的指令:媒体文件被显示的次数、显示媒体文件的设备类型、或者在媒体文件的显示期间的播放时间,在该时间跳过媒体文件的剩余显示。
在一些实现中,由内容服务器选择用于显示的预缓存的媒体文件还包括由内容服务器将相应的选择权重点指派给与媒体文件相关联的多个货币协议中的每一个,至少一个货币协议与预缓存的媒体文件相关联,包括基于在客户端设备处预缓存的预缓存的媒体文件,将至少一个选择权重点指派给与预缓存的媒体文件相关联的货币协议,以及由内容服务器基于具有多个货币协议的最高选择权重的货币协议,选择与预缓存的媒体文件相关联的货币协议。
在一些实现中,其中基于在客户端设备处预缓存的预缓存的媒体文件,将至少一个选择权重点指派给与预缓存的媒体文件相关联的货币协议包括由内容服务器基于在客户端设备上预缓存的媒体文件确定自动播放协议允许自动显示相关联的预缓存媒体文件,以及基于自动播放协议将至少一个选择权重点指派给货币协议,所述自动播放协议允许自动显示预缓存的媒体文件。
在一些实现中,由内容服务器检索与预缓存的媒体文件相对应的附加的显示指令包括生成HTML或CSS数据,其定义根据存储在内容服务器上的协议来显示媒体文件的上下文。
在一些实现中,显示预缓存的媒体文件的请求包括在显示器上自动显示媒体文件的请求。
在第三方面,本公开涉及一种用于减少内容显示的下载要求的系统。该系统可以包括客户端设备,该客户端设备包括:处理器,执行非暂时性处理器可执行指令;以及数据存储,存储非暂时性处理器可执行指令,当由处理器执行所述指令时,使得处理器下载一个或多个媒体文件,同时连接到第一网络,,并将每个媒体文件存储为预缓存的媒体文件,并在客户端设备连接到第二网络时启动。当由处理器执行时,非暂时性处理器可执行指令可以进一步使处理器向内容服务器发送内容请求,该请求包括用于存储在客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在客户端设备连接到第二网络的同时执行传输,从内容服务器接收包括显示预缓存的媒体文件中的所选择的一个的指令的响应,该响应包括用于显示所选择的预缓存的媒体文件的附加显示指令,以及根据附加的显示指令显示预缓存的媒体文件。
在一些实现中,附加请求指令可以包括指定要显示媒体文件的框架或窗口的指令,以及用于将媒体回放统计发送到测量服务器的指令。
在一些实现中,用于发送媒体回放统计的指令可以包括用于发送标识以下中的至少一个的信息的指令:媒体文件被显示的次数、显示媒体文件的设备类型、或者显示媒体文件期间的回放时间,在该时间跳过媒体文件的剩余显示。
虽然本说明书包含许多具体的实现细节,然而这些不应被解释为对可能要求保护的范围的限制,而是作为特定实现的特定特征的描述。在单独实现的上下文中在本说明书中描述的某些特征也可以在单个实现中组合实现。相反,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实现中实现。此外,尽管上面的特征可以被描述为以某些组合起作用并且甚至最初声明如此,然而在一些情况下可以从组合中切除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以指向子组合或子组合的变化。
类似地,虽然在附图中以特定顺序描绘了操作,然而这不应该被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以实现期望的结果。在一些情况下,多任务处理和并行处理可能是有利的。此外,上述实施方式中的各种系统组件的分离不应被理解为在所有实现中都需要这种分离,并且应当理解,所描述的程序部分和系统通常可以集成在单个软件产品中或打包成多个有形媒体上体现的软件产品。对“或”的引用可以被解释为包含性的,使得使用“或”描述的任何术语可以指示单个、多于一个以及所有所描述的术语中的任何。
因此,已经描述了主题的特定实现。其他实现在以下权利要求的范围内。在一些情况下,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。另外,附图中描绘的处理不一定需要所示的特定顺序或次序顺序来实现期望的结果。在某些实现中,多任务处理和并行处理可能是有利的。
除非另有说明,否则不应将权利要求理解为限于所描述的顺序或元素。应当理解,在不脱离所附权利要求的精神和范围的情况下,本领域普通技术人员可以在形式和细节上进行各种改变。要求保护落入所附权利要求及其等同物的精神和范围内的所有实施方式。
Claims (40)
1.一种减少用于内容显示的下载要求的方法,包括:
由客户端设备向内容服务器发送内容请求,所述请求包括用于存储在所述客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在所述客户端设备连接到第一网络的同时执行传输;
由所述客户端设备从所述内容服务器接收响应,所述响应包括显示所述预缓存的媒体文件中的所选择的一个的指令,所述响应包括用于所选择的预缓存的媒体文件的显示的附加的显示指令;以及
由所述客户端设备根据所述附加的显示指令显示所述预缓存的媒体文件。
2.如权利要求1所述的方法,还包括:
在连接到第二网络的同时,在发送所述内容请求之前的第一时间,由所述客户端设备下载一个或多个媒体文件;以及
由所述客户端设备将每个媒体文件存储为预缓存的媒体文件。
3.根据权利要求2所述的方法,其中,所述第一网络是蜂窝网络,并且所述第二网络是Wi-Fi网络。
4.如权利要求2或3所述的方法,其中,响应于所述客户端设备确定在所述客户端设备上预缓存少于预定数量的媒体文件,执行将每个媒体文件存储为预缓存的文件。
5.如权利要求2或3所述的方法,其中,响应于客户端设备确定客户端设备上的预缓存的媒体文件使用少于预定量的存储存储器,执行将每个媒体文件存储为预缓存的文件。
6.如前述权利要求中的任一个所述的方法,其中,显示所选择的预缓存的媒体文件的所述请求包括在显示器上自动播放所述媒体文件的请求。
7.如前述权利要求中的任一个所述的方法,其中,所述附加的显示指令包括指定要示出所述媒体文件的框架或窗口的指令和/或用于将媒体回放统计发送到测量服务器的指令。
8.如权利要求7所述的方法,其中,发送媒体回放统计的所述指令包括用于发送标识以下中的至少一个的信息的指令:所述媒体文件被显示的次数、显示所述媒体文件的设备类型、或在显示所述媒体文件期间的回放时间,在所述回放时间处跳过所述媒体文件的剩余显示。
9.一种减少用于内容显示的下载要求的方法,包括:
由内容服务器从连接到第一网络的客户端设备接收内容请求,所述内容请求包括在所述客户端设备处预缓存的一个或多个媒体文件的相应标识符;
由所述内容服务器从内容提供商请求媒体文件的标识,所述请求包括在所述客户端设备处预缓存的所述一个或多个媒体文件的所述标识符;
由所述内容服务器从所述内容提供商接收所述媒体文件的所述标识;
由所述内容服务器将所述媒体文件的所述标识与所述预缓存的媒体文件之一的标识符进行匹配;
由所述内容服务器选择用于显示的所标识的预缓存的媒体文件;
由所述内容服务器检索与所述预缓存的媒体文件相对应的附加的显示指令;以及
由所述内容服务器向所述客户端设备发送响应,所述响应包括根据所述附加的显示指令显示所述预缓存的媒体文件之一的指令,所述响应包括所述附加的显示指令。
10.如权利要求9所述的方法,还包括:
在所述客户端设备连接到第二网络的同时,由所述内容服务器在接收所述内容请求之前的第一时间从所述客户端设备接收用于媒体文件的初始请求;以及
响应于接收用于媒体文件的所述初始请求,由所述内容服务器向所述客户端设备发送要存储为预缓存的媒体文件的媒体文件。
11.如权利要求10所述的方法,其中,所述第一网络是蜂窝网络,并且所述第二网络是Wi-Fi网络。
12.根据权利要求9至11中任一个所述的方法,其中,所述附加的显示指令包括指定要示出所述预缓存的媒体文件的框架或窗口的指令,以及将媒体回放统计发送到测量服务器的指令。
13.如权利要求12所述的方法,其中,将所述媒体回放统计发送到所述测量服务器的所述指令包括发送标识以下中的至少一个的信息的指令:所述媒体文件被显示的次数、显示媒体文件的设备类型、或在显示所述媒体文件期间的回放时间,在所述回放时间处跳过所述媒体文件的剩余显示。
14.根据权利要求9至13中任一项所述的方法,其中,所述内容服务器选择用于显示的所述预缓存的媒体文件还包括:
由所述内容服务器将各个选择权重点指派给多个货币协议中的每一个,所述多个货币协议中的每一个与媒体文件相关联,至少一个货币协议与所述预缓存的媒体文件相关联,包括基于在所述客户端设备处预缓存的所述预缓存的媒体文件,将至少一个选择权重点指派给与所述预缓存的媒体文件相关联的所述货币协议;以及
由所述内容服务器基于所述多个货币协议中具有最高选择权重的所述货币协议,选择与所述预先存储的媒体文件相关联的所述货币协议。
15.如权利要求14所述的方法,其中,基于在所述客户端设备处预缓存的所述预缓存的媒体文件,将至少一个选择权重点指派给与所述预缓存的媒体文件相关联的所述货币协议包括:
由所述内容服务器基于预缓存在所述客户端设备上的所述媒体文件,确定自动播放协议允许自动显示相关联的预缓存媒体文件;
基于所述自动播放协议允许自动显示所述预缓存的媒体文件,将所述至少一个选择权重点指派给所述货币协议。
16.根据权利要求9至15中任一项所述的方法,其中,由所述内容服务器检索与所述预缓存的媒体文件相对应的附加的显示指令包括生成HTML或CSS数据,所述HTML或CSS数据定义根据存储在所述内容服务器上的协议要显示的所述媒体文件的上下文。
17.如权利要求9-16中任一项所述的方法,其中,显示所述预缓存的媒体文件的所述请求包括在显示器上自动显示所述媒体文件的请求。
18.一种用于减少用于内容显示的下载要求的系统,包括客户端设备,所述客户端设备包括:
处理器,执行非暂时性处理器可执行指令;以及
存储非暂时性处理器可执行指令的数据存储,当由所述处理器执行所述非暂时性处理器可执行指令时,使得所述处理器:
在连接到第一网络的同时下载一个或多个媒体文件;
将每个媒体文件存储为预缓存的媒体文件;
向内容服务器发送对内容的请求,所述请求包括用于存储在所述客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在所述客户端设备连接到第二网络的同时执行传输;
从所述内容服务器接收响应,所述响应包括显示所述预缓存的媒体文件中的所选择的一个的指令,所述响应包括用于显示所选择的预缓存的媒体文件的附加的显示指令;以及
根据所述附加的显示指令显示所述预缓存的媒体文件。
19.如权利要求18所述的系统,其中,所述附加的显示指令包括指定要示出所述媒体文件的框架或窗口的指令,以及将媒体回放统计发送到测量服务器的指令。
20.如权利要求19所述的系统,其中,发送媒体回放统计的所述指令包括用于发送标识以下中的至少一个的信息的指令:所述媒体文件被显示的次数、显示所述媒体文件的设备类型、或在显示所述媒体文件期间的回放时间,在所述回放时间处跳过所述媒体文件的剩余显示。
21.一种减少用于内容显示的下载要求的方法,包括:
由客户端设备向内容服务器发送内容请求,所述请求包括用于存储在所述客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在所述客户端设备连接到第一网络的同时执行传输;
由所述客户端设备从所述内容服务器接收响应,所述响应包括显示所述预缓存的媒体文件中的所选择的一个的指令,所述响应包括用于显示所选择的预缓存的媒体文件的附加的显示指令;以及
由所述客户端设备根据所述附加的显示指令显示所述预缓存的媒体文件。
22.如权利要求21所述的方法,还包括:
在连接到第二网络的同时,在发送所述内容请求之前的第一时间,由所述客户端设备下载一个或多个媒体文件;以及
由所述客户端设备将每个媒体文件存储为预缓存的媒体文件。
23.如权利要求22所述的方法,其中,所述第一网络是蜂窝网络,并且所述第二网络是Wi-Fi网络。
24.如权利要求22所述的方法,其中,响应于所述客户端设备确定在所述客户端设备上预缓存少于预定数量的媒体文件,执行将每个媒体文件存储为预缓存的文件。
25.如权利要求22所述的方法,其中,响应于客户端设备确定客户端设备上的预缓存的媒体文件使用少于预定量的存储存储器,执行将每个媒体文件存储为预缓存的文件。
26.如权利要求21所述的方法,其中,显示所选择的预缓存的媒体文件的所述请求包括在显示器上自动播放所述媒体文件的请求。
27.如权利要求21所述的方法,其中,所述附加的显示指令包括指定要示出所述媒体文件的框架或窗口的指令,以及将媒体回放统计发送到测量服务器的指令。
28.如权利要求27所述的方法,其中,发送媒体回放统计的所述指令包括用于发送标识以下中的至少一个的信息的指令:所述媒体文件被显示的次数、显示所述媒体文件的设备类型、或在显示所述媒体文件期间的回放时间,在所述回放时间处跳过所述媒体文件的剩余显示。
29.一种减少用于内容显示的下载要求的方法,包括:
由内容服务器从连接到第一网络的客户端设备接收内容请求,所述内容请求包括在所述客户端设备处预缓存的一个或多个媒体文件的相应标识符;
由所述内容服务器从内容提供商请求媒体文件的标识,所述请求包括在所述客户端设备处预缓存的所述一个或多个媒体文件的所述标识符;
由所述内容服务器从所述内容提供商接收所述媒体文件的所述标识;
由所述内容服务器将所述媒体文件的所述标识与所述预缓存的媒体文件之一的标识符进行匹配;
由所述内容服务器选择用于显示的所标识的预缓存的媒体文件;
由所述内容服务器检索与所述预缓存的媒体文件相对应的附加的显示指令;以及
由所述内容服务器向所述客户端设备发送响应,所述响应包括根据所述附加的显示指令显示所述预缓存的媒体文件之一的指令,所述响应包括所述附加的显示指令。
30.如权利要求29所述的方法,还包括:
在所述客户端设备连接到第二网络时,由所述内容服务器在接收所述内容请求之前的第一时间从所述客户端设备接收用于媒体文件的初始请求;以及
响应于接收用于媒体文件的所述初始请求,由所述内容服务器向所述客户端设备发送要存储为预缓存的媒体文件的媒体文件。
31.如权利要求30所述的方法,其中,所述第一网络是蜂窝网络,并且所述第二网络是Wi-Fi网络。
32.根据权利要求29所述的方法,其中,所述附加的显示指令包括指定要示出所述预缓存的媒体文件的框架或窗口的指令,以及将媒体回放统计发送到测量服务器的指令。
33.如权利要求32所述的方法,其中,将所述媒体回放统计发送到所述测量服务器的所述指令包括发送标识以下中的至少一个的信息的指令:所述媒体文件被显示的次数、显示媒体文件的设备类型、或在显示所述媒体文件期间的回放时间,在所述回放时间处跳过所述媒体文件的剩余显示。
34.如权利要求29所述的方法,其中,所述内容服务器选择用于显示的所述预缓存的媒体文件还包括:
由所述内容服务器将各个选择权重点指派给多个货币协议中的每一个,所述多个货币协议中的每一个与媒体文件相关联,至少一个货币协议与所述预缓存的媒体文件相关联,包括基于在所述客户端设备处预缓存的所述预缓存的媒体文件将至少一个选择权重点指派给与所述预缓存的媒体文件相关联的所述货币协议;以及
由所述内容服务器基于所述多个货币协议中具有最高选择权重的所述货币协议,选择与所述预先存储的媒体文件相关联的所述货币协议。
35.如权利要求34所述的方法,其中,基于在所述客户端设备处预缓存的所述预缓存的媒体文件,将至少一个选择权重点指派给与所述预缓存的媒体文件相关联的所述货币协议包括:
由所述内容服务器基于预缓存在所述客户端设备上的所述媒体文件,确定自动播放协议允许自动显示相关联的预缓存媒体文件;以及
基于所述自动播放协议允许自动显示所述预缓存的媒体文件,将所述至少一个选择权重点指派给所述货币协议。
36.根据权利要求29所述的方法,其中,由所述内容服务器检索与所述预缓存的媒体文件相对应的附加的显示指令包括生成HTML或CSS数据,所述HTML或CSS数据定义根据存储在所述内容服务器上的协议要显示的所述媒体文件的上下文。
37.如权利要求29所述的方法,其中,显示所述预缓存的媒体文件的所述请求包括在显示器上自动显示所述媒体文件的请求。
38.一种用于减少用于内容显示的下载要求的系统,包括客户端设备,所述客户端设备包括:
处理器,执行非暂时性处理器可执行指令;以及
存储非暂时性处理器可执行指令的数据存储,当由所述处理器执行所述非暂时性处理器可执行指令时,使得所述处理器:
在连接到第一网络的同时下载一个或多个媒体文件;
将每个媒体文件存储为预缓存的媒体文件;
向内容服务器发送对内容的请求,所述请求包括用于存储在所述客户端设备上的一个或多个预缓存的媒体文件中的每一个的标识符,在所述客户端设备连接到第二网络时执行传输;
从所述内容服务器接收响应,所述响应包括显示所述预缓存的媒体文件中的所选择的一个的指令,所述响应包括用于显示所选择的预缓存的媒体文件的附加的显示指令;以及
根据所述附加的显示指令显示所述预缓存的媒体文件。
39.如权利要求28所述的系统,其中,所述附加的显示指令包括指定要示出所述媒体文件的框架或窗口的指令,以及将媒体回放统计发送到测量服务器的指令。
40.如权利要求39所述的系统,其中,发送媒体回放统计的所述指令包括用于发送标识以下中的至少一个的信息的指令:所述媒体文件被显示的次数、显示所述媒体文件的设备类型、或在显示所述媒体文件期间的回放时间,在所述回放时间处跳过所述媒体文件的剩余显示。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2016/060170 WO2018084840A1 (en) | 2016-11-02 | 2016-11-02 | Systems and methods for reducing download requirements |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109804349A true CN109804349A (zh) | 2019-05-24 |
CN109804349B CN109804349B (zh) | 2023-08-08 |
Family
ID=57482498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680088859.XA Active CN109804349B (zh) | 2016-11-02 | 2016-11-02 | 用于减少下载要求的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11122139B2 (zh) |
EP (1) | EP3526668B1 (zh) |
CN (1) | CN109804349B (zh) |
WO (1) | WO2018084840A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11303746B2 (en) * | 2017-03-13 | 2022-04-12 | Sony Corporation | Terminal apparatus that displays which communication system is available from multiple communication systems being used |
US10902082B2 (en) * | 2018-09-28 | 2021-01-26 | International Business Machines Corporation | Caching method and system for large objects on a corporate network using a semantic understanding of the objects and social information |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1879081A (zh) * | 2003-11-04 | 2006-12-13 | 汤姆森许可贸易公司 | 用于下载服务的热点处的高速缓存服务器 |
US8467773B1 (en) * | 2006-09-12 | 2013-06-18 | At&T Mobility Ii Llc | System and methods for pre-caching broadcast content for merchandising on a wireless mobile device |
US9137125B1 (en) * | 2012-10-01 | 2015-09-15 | Google Inc. | Video content pre-fetching from mobile browser |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6349797B1 (en) * | 1999-12-21 | 2002-02-26 | Captivate Network, Inc. | Information distribution system for use in an elevator |
US20070112973A1 (en) * | 2005-11-16 | 2007-05-17 | Harris John M | Pre-cached streaming content method and apparatus |
US8019777B2 (en) * | 2006-03-16 | 2011-09-13 | Nexify, Inc. | Digital content personalization method and system |
US10178580B2 (en) * | 2012-08-14 | 2019-01-08 | Ohio State Innovation Foundation | System and method for efficient use of network bandwidth based on user profiles and other data |
WO2014194441A1 (en) * | 2013-06-06 | 2014-12-11 | Yahoo! Inc | Method and system for dynamic content pre-caching |
US10375444B2 (en) * | 2015-02-13 | 2019-08-06 | Performance and Privacy Ireland Limited | Partial video pre-fetch |
US10397368B2 (en) * | 2015-06-25 | 2019-08-27 | International Business Machines Corporation | Data prefetching for large data systems |
-
2016
- 2016-11-02 US US16/346,835 patent/US11122139B2/en active Active
- 2016-11-02 EP EP16805923.6A patent/EP3526668B1/en active Active
- 2016-11-02 CN CN201680088859.XA patent/CN109804349B/zh active Active
- 2016-11-02 WO PCT/US2016/060170 patent/WO2018084840A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1879081A (zh) * | 2003-11-04 | 2006-12-13 | 汤姆森许可贸易公司 | 用于下载服务的热点处的高速缓存服务器 |
US8467773B1 (en) * | 2006-09-12 | 2013-06-18 | At&T Mobility Ii Llc | System and methods for pre-caching broadcast content for merchandising on a wireless mobile device |
US9137125B1 (en) * | 2012-10-01 | 2015-09-15 | Google Inc. | Video content pre-fetching from mobile browser |
Also Published As
Publication number | Publication date |
---|---|
WO2018084840A1 (en) | 2018-05-11 |
CN109804349B (zh) | 2023-08-08 |
US20200059531A1 (en) | 2020-02-20 |
EP3526668B1 (en) | 2024-03-27 |
EP3526668A1 (en) | 2019-08-21 |
US11122139B2 (en) | 2021-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170011418A1 (en) | System and method for account ingestion | |
US20140263677A1 (en) | Systems, methods, and apparatuses for associating flexible internet based information with physical objects | |
JP5797847B2 (ja) | ホスト型サービスイメージのためのカスタマイズ可能な一様性制御 | |
US9986004B1 (en) | Method and system for content delivery based on user preferences | |
CN105009070A (zh) | 计算机应用促进 | |
CN108369709A (zh) | 基于网络的广告数据业务时延减小 | |
US11410113B2 (en) | Shipping preferences population systems and related methods | |
US9204205B1 (en) | Viewing advertisements using an advertisement queue | |
US11132710B2 (en) | System and method for personalized network content generation and redirection according to repeat behavior | |
US10891678B1 (en) | Personalized network content generation and redirection according to time intervals between repeated instances of behavior based on entity size | |
CN104580348A (zh) | 访问基于位置的内容 | |
US20230325878A1 (en) | Systems and methods for leveraging social queuing to simulate ticket purchaser behavior | |
JP2015501973A (ja) | コンテンツの近似性および関連性 | |
US9959562B1 (en) | Method, medium, and system for local item fulfillment in a market hierarchy | |
CN113168646A (zh) | 自适应数据平台 | |
US20160328697A1 (en) | Light-life system and application | |
CN108959450B (zh) | 一种热门评论确定系统、方法、装置和可读介质 | |
KR20160113480A (ko) | 이벤트 스케줄링 스마트 캘린더 서비스 방법 및 그 방법을 수행하는 어플리케이션 프로그램 및 그 기록매체 | |
CN110648167A (zh) | 对于用户生成的游戏内容的微支付补偿 | |
CN108122124A (zh) | 信息推送方法、平台及系统 | |
CN109804349A (zh) | 用于减少下载要求的系统和方法 | |
TWI457787B (zh) | 用於指定功能等級之內容管理的方法及電腦可讀式記憶體 | |
CN106408381B (zh) | 信息发布方法、订单页显示方法及装置 | |
CN111553749A (zh) | 一种活动推送策略配置方法及装置 | |
US20170178205A1 (en) | Consumer feedback for websites and mobile applications |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |