CN107729093A - 用于在便携式设备上不突兀地显示广告的系统和方法 - Google Patents
用于在便携式设备上不突兀地显示广告的系统和方法 Download PDFInfo
- Publication number
- CN107729093A CN107729093A CN201610982521.0A CN201610982521A CN107729093A CN 107729093 A CN107729093 A CN 107729093A CN 201610982521 A CN201610982521 A CN 201610982521A CN 107729093 A CN107729093 A CN 107729093A
- Authority
- CN
- China
- Prior art keywords
- activity
- advertisement
- processor
- program code
- user interface
- 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
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明题为用于在便携式设备上不突兀地显示广告的系统和方法。提供一种在通信设备的显示器屏幕上显示广告的方法。该方法包括接收在该通信设备上执行的处理器的应用程序的第一活动的状态转移的表示。该处理器响应于该表示而执行程序代码以便监视该操作系统的存储器状态,以便确定与第一活动关联的用户界面状态。该处理器进一步至少部分地基于该用户界面状态而确定是否第一活动正完成。在确定第一活动正完成时,该处理器在进一步确定存在与该通信设备关联的预定条件时将该广告进行显示。
Description
技术领域
本公开总体上涉及广告在便携式设备上的适时显示。更特别地、而非排他地,本公开涉及用于在便携式设备上不突兀地显示广告的系统和方法。
背景技术
广告本质上是干扰性的。很少有人会主动选择接收广告。典型地,人们对接收弹出广告等导致的干扰感到愤怒。弹出广告典型地利用推送模型来递送,其中用户设备的远程服务器将广告推向用户设备。典型地,远程服务器不会感知到用户在用户设备上所涉及的活动。
移动广告系统使用推送模型,由此某些外部源发送包含广告相关信息的消息至手持装置,并且手持装置上的代理吸收该消息并且展现广告而不关心用户正在做什么。由于这个原因以及其他原因,移动广告必须开发其全部潜力。
发明内容
本文公开的教导的示例性实施例在以下总结的附图中示出。上述以及其他实施例更完全地描述于详细描述部分。应当理解,然而并非意图将该权利要求限制至概述或详细描述中所描述的形式。本领域技术人员可意识到,存在属于权利要求所表达的教导所公开的精神和范围的多个修改、等同物和可选的构造。
在一个方面,本公开涉及在通信设备的显示器屏幕上显示广告的方法。该通信设备包括处理器和包括程序代码和操作系统的存储器。该方法包括接收在该处理器上执行的应用程序的第一活动的状态转移的表示。该处理器响应于该表示而执行该程序代码以监视该操作系统的存储器状态以便确定与第一活动关联的用户界面状态。该处理器进一步至少部分地基于该用户界面状态而确定是否第一活动正完成。当确定第一活动正完成时,该处理器在进一步确定存在与该通信设备关联的预定条件时将该广告进行显示。
本公开还涉及一种可选的方法,用于在通信设备的显示器屏幕上显示广告。该通信设备包括处理器和包括程序代码的存储器。该方法包括接收在该处理器上执行的应用程序的第一活动的状态转移的表示,其中该应用程序的用户界面包括用户界面(UI)元素。该处理器响应于该表示而执行该程序代码以确定是否第一活动正完成,并且如果是,在进一步确定存在与该通信设备关联的预定条件时显示该广告,其中该广告包括该UI元素的一个或多个。
在本公开的进一步方面,指出了另一可选的方法,用于在通信设备的显示器屏幕上显示广告。该通信设备包括处理器和包括程序代码的存储器。该方法包括接收在该处理器上执行的应用程序的第一活动的状态转移的表示。该处理器响应于该表示而执行该程序代码以确定是否第一活动正完成,并且如果是,在确定存在与该通信设备关联的预定条件时显示该广告。该方法进一步包括确定该通信设备的用户在预定时间段没有与该广告交互并且作为响应,停止该广告的显示。
本公开还涉及一种通信设备,包括处理器,显示器屏幕和耦合于该处理器的存储器。该存储器包含程序代码,其当由该处理器执行时,使该处理器接收在该处理器上执行的应用程序的第一活动的状态转移的表示。响应于该表示,该处理器执行该程序代码以:(i)监视该操作系统的存储器状态以便确定与第一活动关联的用户界面状态,(ii)至少部分地基于该用户界面状态而确定是否第一活动正完成,以及(iii)当确定第一活动正完成时,在确定存在与该通信设备关联的预定条件时显示该广告。
本公开进一步指出一种可选的通信设备,包括处理器,显示器屏幕和耦合于该处理器的存储器。该存储器包含程序代码,其当由该处理器执行时,使该处理器接收在该处理器上执行的应用程序的第一活动的状态转移的表示,其中该应用程序的用户界面包括用户界面(UI)元素。响应于该表示,该处理器执行该程序代码以:(i)确定是否第一活动正完成,并且(ii)当确定第一活动正完成时,在进一步确定存在与该通信设备关联的预定条件时显示该广告,其中该广告包括该UI元素的一个或多个。
如先前所述,上述实施例和实现仅用于说明目的。本发明的多个其他实施例、实现和细节使本领域技术人员从如下描述和权利要求中容易想到。
附图说明
为更好地理解本发明的多种实施例的特性和目标,如下详细描述应当结合附图来参考,其中:
图1说明了示例系统,其可以根据本公开方法的多种实施例来实现;
图2说明了用于便携式设备的设备配置,其以根据本公开的系统和方法的多种实施例来实现;
图3说明了主机系统配置,在其上可实现根据本公开的系统和方法的多种实施例;
图4说明了根据本公开用于实现对便携式设备的信息递送的示例性过程;
图5A和5B说明了根据本公开的示例性过程,用于请求递送信息至便携式设备;
图6A、6B和6C说明了根据本公开的示例性过程,用于在通信设备显示广告;以及
图7说明了根据本公开的用于在通信设备显示广告的另一示例性过程。
图8为包含具有与广告关联的应用的用户界面的元素的示例性广告的屏幕快照。
在附图中,相似组件和/或特征可具有相同的参考标签。进一步,相同类型的多种组件可通过在相似组件中进行区分的横线和第二标签的参考标签来区分。如果说明书仅第一参考标签被使用,描述可用于具有相同的第一参考标签的任一相似组件而不考虑第二参考标签。
具体实施方式
如上所讨论,人们通常对计算机、智能电话、平板等上的活动的干扰感到烦恼和/或愤怒。经发现,广告的干扰程度和用户的参与意愿之间存在反比关系。用户响应性测试证明了这一点。该测试显示,主机系统利用移动广告技术来实现一种机制,由此移动广告以给定应用的名义展现,但在该应用的运行时环境之外比其他形式的移动广告响应更好。根据本公开的系统和方法标识触发器,其保证广告、包括丰富媒体广告在用户完成活动或以其他方式以留下非干扰时间窗口的形式与系统交互时被展现。该触发器是什么、其被作用的频率、以及哪一广告源用于内容,通常都从集中化的、基于云的机构(本文称为主机系统)是完全可定制的,由此允许该参数在整个用户库中的实时修改。
在客户端侧,该移动广告方法可由智能后台代理的出现而实现。在一个实施例,该代理可包括永久系统服务,其监视系统任意定义的触发事件,并采取合适的动作以与广告提供商通信。后台代理可由默认配置参数在本地配置和/或由主机系统远程配置。这是拉取广告模型(pull advertising model),其中移动设备从主机系统请求内容,与主机系统推送内容至移动设备的推送模型相反。
相信人们心理上更易于接受接收预料不到的内容,包括广告内容,如果广告内容以非干扰性方式显示。该方法通过实现显著高于工业标准的点击率(移动互联网广告有效性的标准测量)的测试来示出。
在典型实施例中,主机处理系统(本文还简称为“主机系统”)包括一个或多个服务器(本文还称为“主机服务器”),配置以从无数个源中提供广告信息的访问,包括实体零售商和批发商、在线零售网站或广告服务,以及在某些实施例中,在主机处理系统中的或与主机处理系统关联的一个或多个数据库存储该信息。主机系统还可配置以与用户的便携式设备交互,以通过更愉快的方式实现广告传输。
此外,主机处理系统可配置以当信息在便携式设备上显示时使主机系统或源进行配置。便携式或移动设备可结合客户端应用来配置,以实现媒体内容显示,诸如通过显示针对设备动作诸如终止呼叫的广告。
在示例性实施例中,用户被提供应用程序(本文还称为“客户端应用”),其可安装于用户便携式设备以实现媒体内容下载(例如,广告)。客户端应用可利用多种配置参数编程。配置参数可用于确定哪个事件可使客户端应用请求广告显示、多么频繁地显示广告、在事件之后但在广告显示之前执行哪个活动可防止广告显示,等。
作为示例,在客户端应用监视操作系统时用户可能在语音呼叫的过程中。当语音呼叫结束时,操作系统生成事件信号,表示呼叫终止事件并且该信号由客户端应用检测。假设客户端应用被编程以在检测呼叫终止事件之后请求广告,客户端应用发送广告请求消息至远程系统(例如,广告源系统或主机系统)。主机系统响应于接收请求消息,从数据库检索当前广告并将广告传递至便携式设备的客户端应用。然后客户端应用使操作系统在便携式设备的显示器显示广告。
与基于事件的广告实施例相反,其中广告在事件经由来自操作系统的信号被检测(如参考以下图4、5A和5B描述)时被请求,另一实施例在确定活动正完成时显示广告。如本文所使用的活动为一种应用组件,其提供用户可进行交互来做某件事、诸如电话拨号、拍照、发送电子邮件或浏览地图的屏幕。每个活动被给定绘制其用户界面的窗口。使用活动的一个操作系统为操作系统。不同于触发事件,不存在由操作系统提供的活动正完成的直接表示。确定活动何时正完成的间接方法以下参考图6A、6B、6C和7描述。该间接方法还利用广告的预取,因为操作系统具有内建延迟,其使活动完成之后请求广告非常不便。
本文公开的系统和方法可用于涉及移动广告系统的输入、显示、存储、处理、传输、递送以及其他方面的广泛应用。为进行说明,如下描述参考特定命名和实现细节,典型地在蜂窝或移动电话形式的便携式设备的环境来提供;然而,不需要描述对本领域技术人员显而易见的特定细节来实现本发明,并且符合本发明精神和范围的其他实施例也是可能的,并且本文全部考虑。
内容源和内容选择和提供
现参见图1,其中说明了可实现本发明的实施例的系统100。如图1所示,内容可来自源、诸如ABC制造服务器160-1(即,实体企业)、在线零售商服务器160-2(即,与网站关联的服务器)或广告服务服务器160-3或任何多个其他站点,所述其他站点包含广告信息、公共服务声明和/或其他即时信息。除图1所示外,对本领域普通技术人员显而易见的是,其他广告内容源也是可用的,而除互联网和蜂窝电话网络外,其他方法可用于提供该内容。因此,广告内容源的上述列表仅意图表示,而非限制。
设备和系统之间的通信
系统100包括一个或多个便携式或移动设备110(本文还简称为“设备110”)诸如蜂窝电话、平板计算机、PDA、Wi-Fi(802.11)设备或其他便携式设备。还应注意,在某些实施例中,设备不一定为便携式,本文功能可实现于更固定的设备,诸如桌面或笔记本计算机或其他类型的固定设备。此外,如本文描述的便携式设备可包括其他类型的设备,其为移动式而不一定为便携式。
除设备110外,系统100可包括一个或多个计算机120,诸如桌面计算机、便携式或笔记本计算机或包含计算机功能以及有线或无线网络连接的其他设备或系统。例如,本发明的实施例可实现于多种类型的嵌入式设备或互联网应用设备或相似类型的设备。
系统100进一步包括主机处理系统140(本文还称为“主机系统140”),包括一个或多个服务器以及其他相关计算机和数据处理硬件(图1未示出)诸如网络装置、显示器、监视器、I/O设备或其他计算机或数据通信系统、硬件和/或软件。在示例性实施例中,主机系统140可由相关主机服务公司或主机服务供应商提供或操作。
如先前所述,主机系统140包括一个或多个服务器,其包括一个或多个数据库390(如图3所示),位于服务器370的内部或外部。该数据库可用于存储广告和数据,诸如如下进一步描述。主机系统140还可包括与服务器关联的一个或多个操作系统362,以及一个或多个应用程序以实现多种主机服务功能,如本文进一步描述。主机系统140可实现于集中化物理位置,诸如网络连接服务器家族或其他相似设备和/或可包括多个分布式服务器连接,由不同的物理位置的任何多种网络连接。
设备110和计算机120(还表示本文简单地统称设备110和120)典型地配置以通过如图1所示的网络130相互连接和/或连接至主机系统140。网络130可包括有线或无线网络元件,诸如以太网、LAN技术、电话网络诸如POTS电话网络、蜂窝网络、数据网络或其他电话网络以及Wi-Fi或Wi-Max网络、其他有线或无线互联网网络连接和/或本领域已知或已开发的其他网络。该连接可由运行于设备110或120的一个或多个客户端应用264(如图2所示)以及运行于包括于主机系统140的一个或多个主机系统服务器370的一个或多个主机系统应用364以及一个或多个网络接口342和/或本领域已知或已开发的其他网络硬件和/或软件(未示出)实现。
在某些实施例中,主机系统140进一步配置以通过互联网150提供网络连接至一个或多个广告源站点160,诸如实体企业服务器160-1、在线零售商服务器160-2、广告服务服务器160-3或相似源。该连接可由运行于主机系统140的一个或多个应用程序364实现。
如上所讨论,如本领域已知,“拉取”方法用于递送广告至设备110或120。设备110和120可从一个或多个广告源站点160请求广告,诸如实体企业服务器160-1、在线零售商服务器160-2、广告服务服务器160-3或相似源。网络130耦合于互联网150以使请求可从设备110和120路由至广告源站点160。在某些实施例中,广告由来自主机系统140的设备110或120请求。广告可在触发事件被检测之后请求。然后广告从广告源160之一或主机系统140拉取,如由本文描述的配置参数所确定(如本文所使用的,“广告源系统”指代主机系统140或广告源160之一)。例如,当设备110为蜂窝电话时,当蜂窝电话终止呼叫或执行某些其他触发事件时,客户端应用264将建立广告请求消息,然后其发送至广告源。请求消息可包含用户标识符、事件类型的表示、设备类型的表示等。广告源系统然后从某些数据库之一检索合适的广告。广告源系统然后经由网络130发送所选择的广告至设备110或120。客户端应用确定是否为显示广告的合适时间(由以下讨论的某些因素确定)。如果到达合适的时间,客户端应用264使设备110或120显示广告。客户端应用264可发送另一消息至广告源系统,表示广告是否显示。
客户端应用
在一个方面,用户可被提供以客户端应用或应用264,如图2所示(本文还简称为“客户端”),其可安装于用户的设备110。例如,用户可从主机系统140或所属网站被提供以客户端应用264的下载。客户端应用264可在工厂安装于ROM(只读存储器)230,由此不需要用户下载客户端264。可选地,用户可在计算机媒体,诸如CD或DVD、U盘上被提供客户端应用264,或经由本领域已知或已开发其他媒体。一旦用户下载或以其他方式获取客户端应用264并安装客户端应用264至用户设备110,用户则可访问主机系统140和相关主机服务和广告源系统以实现本文描述的功能。客户端应用264配置以确定操作系统262何时执行触发事件之一然后传输广告请求消息至广告源系统和接收广告。
例如,在某些实施例中,客户端应用264为游戏应用、视频应用或用户将在移动设备110上使用的其他任何类型的应用,并且本文描述的功能集成于该应用。在其它实施例,客户端应用264可由第三方应用开发者和/或广告服务利用本领域已知软件开发套件或SDK使用。SDK函数库可存储于数据模块268,以提供客户端应用264的拉取广告功能至第三方应用,以执行本文讨论的方法。当客户端应用为安装于便携式设备110的服务的SDK的一部分(诸如在以下讨论的过程400和500)时,应用、诸如利用SDK的客户端应用264的游戏可安装于设备110并且如果客户端应用264未安装,客户端应用264将自动安装为独立的实体。在使用客户端应用264的设备110上可存在多个应用。
在客户端应用264为设备110的SDK的一部分的情况下,在利用客户端应用264安装新的应用时,新的应用以客户端应用264注册。注册可包括新的应用,所述应用提供唯一标识符至客户端应用264以使客户端应用264获知新的应用是什么类型的应用。在安装新的应用时,客户端应用264通知主机系统140即新的应用安装于设备110并以客户端应用264注册。
图2以示例设备元件说明了便携式设备110的典型配置的附加细节,其可用于实现根据本公开的系统和方法的实施例。如图2所示,设备110可包括其典型地为一个或多个专业化或专用的便携式设备微处理器或微控制器的一个或多个处理器(CPU)210,配置以使用户输入和输出信息以及传输和接收广告数据并与安装于设备110的应用(诸如客户端应用264)交互的输入/输出设备模块220(例如,用户界面),以提供数据和/或应用或操作系统程序的非易失性存储的一个或多个只读存储器(ROM)设备230或等同物,诸如LCD或等同显示器设备的一个或多个显示器模块250,以及一个或多个存储器空间260。还可包括其他模块,诸如用于提供定位或位置信息的可选的GPS模块225。
在该示例中,输入/输出设备模块220,包括主屏按钮(Home button)222和后退按钮224。用户可通过按压主屏按钮222或后退按钮224退出活动。主屏按钮222和后退按钮224可为物理按钮或虚拟按钮(例如,在触敏显示器250上)。当用户按压主屏按钮222时,当前活动被隐藏并且显示器250显示默认或主屏图像。当后退按钮224被按压时,当前活动被退出并且显示器被返回至在当前活动之前显示的显示器。
存储器空间260可包括DRAM、SRAM、FLASH、硬盘驱动或配置以存储和访问操作系统262,客户端应用程序264和/或数据268的其他存储器存储设备。数据268可包括信息,诸如接收自广告源系统的广告。广告可为图像/照片、视频、音乐内容或其他类型的数据的形式。特别地,存储器空间260可包括一个或多个客户端应用264,所述客户端应用264存储于存储器空间260用于在CPU210上执行以执行本文描述的多种客户端侧功能,包括显示和存储广告,或其他数据或信息,以及与主机系统140和广告源160交互。
图3利用示例设备元件说明了主机系统140的一个示例的附加的细节,其可用于实现本发明的实施例。如图3所示,主机系统140可包括一个或多个处理器(CPU)310,配置以使用户输入和输出信息并与主机系统140交互以及传输和接收数据的输入/输出设备模块320,以提供数据和/或程序的非易失性存储的一个或多个只读存储器(ROM)设备330或等同物,诸如计算机监视或其他显示器设备的一个或多个显示器模块350,一个或多个网络连接340和相关网络接口342,其配置以使主机系统140连接于其他系统,服务器和/或便携式设备,包括实施例中系统140的其他元素,其中服务器或其他组件分布在其他物理位置,以及一个或多个存储器空间360和一个或多个数据库390。数据库390可使用与特定特征或函数关联的子数据库存储特征或函数特定信息进一步划分或分布为一个或多个子数据库390a-390n。图3所示的多种组件可包含于一个或多个包括一部分主机系统140的物理服务器370。应当注意图3所示的多种组件、包括数据库390,典型地包括为一部分服务器370,然而,在某些实施例中其可位于服务器370的外部。例如,在某些实施例中,数据库390可位于服务器370的外部并可包括独立数据库服务器系统或网络化数据库系统的一部分。
存储器空间360可包括DRAM、SRAM、FLASH、硬盘驱动或其他存储器存储设备诸如媒体驱动380,配置以存储操作系统、应用程序和/或数据,并且存储器空间360可与数据库390的存储器存储容量共享、一起分布或重叠。在某些实施例中,存储器空间360可包括数据库390,或在某些实施例中,数据库390可包括如存储器空间360所示的数据368。
存储于存储器空间360和/或数据库390的数据可包括信息,诸如广告源系统信息、广告、图像/照片、视频、音乐内容或其他类型的数据。特别地,存储器空间360可包括主机系统应用或应用364,存储于存储器空间用于由CPU310执行以实现本文描述的多种主机侧功能。
传输信息至客户端的主机系统服务器
图4说明了示例性过程400,用于实现根据本公开的便携式设备的信息递送。过程400可包括主机系统140和与便携式设备110经由一个或多个有线和/或无线通信通道通信的一个或多个广告源160。过程400与实施例一起使用,其中客户端应用264为SDK的一部分,其为安装于便携式设备110的服务。在阶段410,主机系统140将广告应用、诸如图2的客户端应用264,传递至便携式设备110。可选地,客户端应用264可先前存储于便携式设备110的存储器和阶段410可从过程400省略。
在阶段414,主机系统140将配置参数传送至便携式设备110。响应于从便携式设备110接收配置更新请求,配置参数可传递至便携式设备110。该更新请求例如可在阶段418从客户端应用264首次接收注册消息时利用主机系统140做出。此外,更新请求可周期性地从便携式设备110接收以进行改变,例如,哪个触发事件导致广告被便携式设备110请求、利用哪个广告源系统广告和广告多频繁地显示。
在阶段418,主机系统140从安装于便携式设备110的客户端应用264接收注册消息。注册消息可包括信息,其描述设备110的能力以及与便携式设备110和/或客户端应用264关联的其他数据。例如,便携式设备110的能力之一可包括显示能力(像素数、视频图形能力、音频能力等)客户端应用264还可通知主机系统140哪个事件触发操作系统262能够报告至客户端应用。例如,操作系统262所报告的触发事件可包括语音呼叫启动和终止、文本消息启动和终止、暂停视频游戏应用、终止任何类型的交互应用等。
附加地,客户端264可指定希望从主机系统140接收的图片大小和格式,诸如基于设备110的能力和/或基于其他参数诸如存储器容量、下载连接容量或成本、或其他参数的大小和格式。主机系统140从客户端264接收该信息,并且作为响应,在主机系统递送广告的实施例中,主机系统140基于客户端的请求和便携式设备110能力来格式化广告数据,特别用于每个客户端。
在阶段422,广告源系统(例如,由配置参数确定的主机系统140或广告源160之一)从运行于便携式设备110的客户端应用264接收广告请求消息,广告请求消息可响应于任何触发事件,操作系统262将其报告至客户端应用264。此外,客户端应用264可由主机系统140经由在阶段414传递的配置参数编程。广告请求消息可包括便携式设备110的标识符和/或便携式设备110的用户身份。广告请求消息还可包括传递的请求消息所产生的触发事件的表示。
在接收广告请求消息时,广告源系统在决定框426确定是否存在任何合适的广告以传递至便携式设备110。广告的适用性可基于用户身份、日期时间、便携式设备的地理位置、用户统计数据等确定。如果没有合适的广告在决定框426标识,过程400返回至阶段422以接收另一广告请求消息。
如果合适的广告在决定框426被标识,过程400继续阶段430,其中广告源系统选择合适的广告之一并经由网络接口342传输选择的广告至便携式设备110用于客户端应用264显示。广告可基于便携式设备110的属性来配置例如,显示器大小、视频图形能力、音频能力等。
在阶段434,主机系统140经由网络接口从便携式设备110接收广告是否在便携式设备110上显示的表示。在某些情况下,便携式设备的用户可在广告传递至便携式设备110之前启动新的活动。在该情况下,客户端应用264可确定其不是显示广告的合适的时间,因为,例如,广告可让执行新活动的用户厌恶。例如,如果紧接在终止一个呼叫之后用户启动另一语音呼叫,基于配置参数可确定,不是显示广告的合适的时间。如果广告被显示,在阶段434接收的表示可表示哪个广告被显示、在哪个便携式设备上显示以及任何用户点击广告或进行其他交互。
在阶段438,主机系统140在数据库390存储被显示的广告的表示。此外,主机系统140还可存储信息,表示用户与广告的交互以及便携式设备的用户身份或标识符。
过程400仅为示例性而非限制。过程400可被修改,例如,通过将阶段增加、移除或重新设置。对所示出和描述的过程400的其他修改是可能的。
接收便携式设备的广告信息
图5A和5B说明了根据本公开的示例性过程500,用于请求递送信息至便携式设备110。如同过程400,过程500与客户端应用264为SDK的一部分的实施例一起使用,其为安装于便携式设备110的服务。在用户安装便携式设备110的客户端应用264之后,其可以多种方式接收广告信息。示例进一步如下描述。过程500将参考便携式设备110(例如,利用处理器210)和主机系统140描述,但其他设备,例如便携式和非便携式,都可被使用。
在阶段510,便携式设备110接收客户端应用264并在存储器260存储客户端应用264。客户端应用264可通过无线或有线连接以蜂窝/网络连接240经由本文描述的通信模块而接收。例如,用户可从在线应用网站或提供应用的一个或多个第三方下载应用。可选地,客户端应用可在用户购买前便携式设备110的制造/配置时在工厂中接收。
在完成下载过程时,过程500继续阶段514,其中安装过程被触发,其间客户端应用264被安装和将自身向便携式设备110的操作系统262注册为系统服务。系统服务为描述了以下应用的本领域术语,其在被注册时,可在后台永久运行并且监视操作系统262中关于产生的其他事件的信息,诸如与被接收广告关联的触发事件。系统服务的能力取决于操作系统262。
在某些实施例中,客户端应用264利用操作系统262注册为监听器,用于关联于与便携式设备110交互的用户的感兴趣事件。感兴趣事件包括触发事件,表示适用于广告显示的非干扰性时间(例如,终止呼叫、完成发出SMS、终止特定应用等)。例如,操作系统262可提供信号,表示由唯一标识符标识的应用已终止。在便携式设备110的应用利用客户端应用264注册的情况下,客户端应用264使用注册信息以准确地标识哪个应用已终止。以这种方式,广告可被准确地定位至哪个应用已终止或暂停等。在某些实施例中,便携式设备110的用户可被询问允许使客户端应用264注册为感兴趣事件的监听器。允许可为全部允许或全不允许,其中用户对于允许应用为监听器被问询一次,并且不需要进一步允许。可选地,允许的询问可周期性地完成。
客户端应用264的安装可通过致动便携式设备的输入设备220之一而由用户启动安装的触发。在安装和/或调用客户端应用时,过程500继续阶段518,其中客户端应用264确定控制客户端应用264的操作的配置参数的更新状态。在客户端应用的初始安装和/或调用时,配置参数可设置为默认参数并可不需要首先更新。可选地,配置参数可完全不被设置并可根据需要立即更新。配置参数可以日期或版本号存储,以使客户端应用264例如能够基于由主机系统140提供的日期或版本号确定更新状态。
在决定框522,客户端应用确定配置参数是否为当前的。如果客户端应用264被安装并且配置参数被设置为默认值,在决定框522可确定配置参数是当前的并且不需要更新。如果客户端应用264被安装而没有默认配置参数,在决定框522确定配置参数不是当前的。此外,客户端应用264可配置以周期性地更新配置参数并且可在决定框522基于定时器或版本号确定配置参数不是当前的。
如果在决定框522确定配置参数是当前的,过程500继续阶段530。如果确定配置参数不是当前的,过程500继续阶段526,其中客户端应用264将更新配置参数的请求传送至操作系统262,然后其将请求经由网络连接240之一传递至主机系统140。响应于请求,主机系统140发送更新配置参数至便携式设备110,其由客户端应用264接收并存储于存储器260。
在阶段526所接收的配置参数定义一个或多个事件,其可触发客户端应用264以从主机系统140请求广告。此外,配置参数可定义不应被显示广告中断的事件。配置参数还可被设计以定义客户端应用264唤醒以执行操作系统262的监视的频率,以保存电池寿命。根据便携式设备类型,配置参数可基于无线电连接的类型,并且进一步调整休眠模式/唤醒频率。配置参数还可包括客户端应用264使用的步骤,以在所有时间、至少在休眠模式保持运行,以及使客户端应用264在终止时从本身重新开始的步骤。配置参数可根据设备厂商/模型、无线载体、地理位置等而定制。由配置参数定义的触发事件可取决于连接于便携式设备110的其他装置。例如,触发事件可与是否存在可用键盘或是否存在蓝牙耳机关联。
此外,在阶段526,接收的配置参数可定义客户端应用应当从哪个广告源系统请求广告。配置参数可定义不同的广告源系统,其根据,例如事件与哪个应用关联、产生哪一类型的事件、日期时间、位置,等。
在阶段530,客户端应用264将被传递至操作系统262的注册消息经由网络连接240之一传递至主机系统140。注册消息通知主机系统140,即用户已注册便携式设备110和/或一个或多个应用以接收广告。
在阶段534,在被调用和注册时,客户端应用264开始监视操作系统262的表示产生了触发事件的事件信号,所述触发事件可表示请求和显示广告的机会。触发事件可为与便携式设备交互的用户终止,以使用户不被显示的广告干扰。该触发事件可包括呼叫终止、文本消息终止、应用终止或暂停、或表示用户已完成与便携式设备110的某些形式的交互的其他任何事件。在接收事件信号时,客户端应用264读取事件信号以确定哪个事件被表示已产生并且查询当前配置参数确定条件是否适用于请求和显示广告。除终止事件诸如呼叫终止、游戏终止、文本消息终止外,触发事件可包括非终止事件,诸如锁屏事件或显示器屏幕变暗。客户端应用264可配置以使被请求显示的广告在锁屏或暗屏期间仍可保持不变并在用户致动输入设备解锁或按亮显示器屏幕之后显示。
当事件信号在阶段534被客户端应用264检测时,过程500继续决定框538,其中客户端应用264基于当前配置参数确定所表示的事件是否为触发事件。如果在决定框538确定表示事件不是触发事件,过程500返回阶段534,其中客户端应用264继续监视操作系统262的事件信号。如果在决定框538基于当前配置参数确定表示事件为触发事件,过程继续阶段542。
在阶段542,客户端应用264将传递至由配置参数确定的广告源系统的广告请求消息经由网络连接240之一传递至操作系统262。广告请求消息可包括触发事件、便携式设备的标识符、用户身份、与事件关联的应用标识符等。在阶段546,便携式设备110接收广告源系统选择的广告。选择的广告经由网络连接240之一接收。广告可由利用SOAP(简单对象访问协议)的包含优化用于简化的定制XML有效载荷的HTTP/S封装,或经由其他任何可用网络传输和数据描述协议调节数据(IP)网络的网络服务来接收。SOAP为用于在网络服务实现中交换结构化信息的协议。
当广告被接收时,在一个实施例,客户端应用264避免对主机系统140查询新的配置参数,以降低网络传输量,并且因此降低广告显示需要的时间。其还降低无线电被使用的时间量,由此节省电力,因为无线电典型地在便携式设备110中使用更多的电力。
在接收选择的广告时,客户端应用264在决定框550基于当前配置参数确定选择的广告是否适用于显示。在广告被接收时广告不适用于显示的原因可包括例如当触发事件紧接在被确定不适合利用广告中断(例如,终止文本消息或呼叫后立即启动另一文本消息或呼叫)的另一事件之前时、超过广告的阈值数量或计数已显示的阈值时间段内、自从最后一次广告被显示的阈值时间段还未超过、便携式设备110的电池功率级提示在阈值以下等。此外,如果广告源系统中没有广告可用,不存在适合显示的广告。
用户可定义应当被阻止为不适合的广告类型。例如,用户可选择阻止交友网站广告、酒类广告或其他种类的广告。阻止的广告种类可在阶段518以配置参数的形式由用户输入。
如果在决定框550确定选择的广告不适用于显示,过程可返回阶段534以监视由事件信号表示的更多的触发事件,或可选地,返回阶段542以请求另一广告。如果确定广告适用于显示,客户端应用264在阶段554使选择的广告展现于便携式设备110的显示器。在阶段558,客户端应用264递增一个或多个广告计数,并且在某些实施例中存储广告被展现的时间,以限制未来广告所显示的频率。多个计数可被使用,以限制在不同的时间段期间显示的广告的数量,例如,每小时的数量、每天的数量、每周的数量等。在阶段562,客户端应用264使操作系统262经由网络连接240之一传递表示至主机系统140和/或广告源系统,所述表示为选择的广告显示。
过程500重复以执行如上所讨论的多种阶段的功能。过程500仅为示例性而非限制。过程500可被修改,例如,通过将阶段增加、移除或重新设置。其他对所示出和描述的过程500的修改也是可能的。
在以上讨论的过程400和500,广告在从便携式设备110的操作系统接收触发事件信号时在便携式显示器设备上显示。然而,某些操作系统对全部类型的用户交互不提供足够的通信,而触发事件当广告应当或不应当显示至用户时可不提供足够的表示。
操作系统使用活动来在应用的部分中转移。与以上讨论的触发事件相反,操作系统不提供表示活动终止的信号。相反,以下讨论的方法监视更低级的表示符,以确定活动何时正完成。
如本文所使用的,活动为应用组件,其提供用户可交互以做某件事的屏幕,诸如电话拨号、拍照、发送电子邮件或浏览地图。每个活动被给定绘制其用户界面的窗口。窗口典型地填充屏幕,但可小于屏幕并浮在其他窗口上方。与活动相反,服务如上所讨论,为一种组件,其在后台运行,以执行长期运行的操作或执行远程过程工作。服务不提供用户界面。
应用通常包括多个活动,其相互松绑定。应用中的一个活动通常指定为“主”活动,其当首次启动应用时被呈现至用户。每个活动然后可开始另一活动,以便执行不同的动作。每次新的活动开始时,先前活动停止,但系统在处理队列保存活动。当新的活动开始时,其被推送至处理队列并获得用户焦点。处理队列遵循基本的“后进先出”队列机构,因此当用户完成当前活动并按压后退按钮时,其从处理队列被弹出(并销毁)并且先前活动重新开始。
图6A说明了示例性过程600,用于在包括基于活动的操作系统诸如的实施例中的便携式设备110上显示广告。
典型地,活动可为四个状态之一:
前台-活动在前台可见并运行。
暂停-活动失去焦点但仍可见。暂停活动仍为活跃,但可由低存储器状况的系统消除。
停止-活动由另一活动完全掩盖并且不再对用户可见,因此其窗口被隐藏。停止活动保持全部状态信息。当在其他地方需要存储器时,停止活动可由系统消除。
丢弃-活动既非暂停也非停止并由系统消除。丢弃的活动必须完全重新开始,以再次显示至用户。
过程600涉及确定何时前台活动转移至暂停、停止或丢弃状态。活动可由于正常软件转移或因为用户交互而从前台状态转移。在多数情况下,从前台状态的转移为公共事件。然而,在某些实例,活动可并由于用户交互而转移并且事件不是公共事件且不容易可检测。如上所讨论,当用户按压主屏按钮222,后退按钮224或以其他方式时,活动可终止。当用户按压主屏按钮222或后退按钮224时,在操作系统中,不存在标准方式来获知该按压导致用户离开活动。过程600使用状态跟踪方法,其能够确定活动正完成。此外,如果另一活动开始并且用户会对显示的广告感到烦恼,过程600避免显示广告。
操作系统表现了以适时方式显示广告的另一种挑战。当用户点击设备的主屏按钮222时,操作系统推送任何新的活动,以在新的活动可被执行之前产生5秒的内建延迟。该内建5秒延迟结导致显示广告不可接受的用户体验。鉴于该原因,在使用操作系统的电话中显示广告的新的过程被开发。过程600调节利用窗口管理器类而非显示广告的活动来建立的视图。当用户按压主屏按钮222时,利用窗口管理器类建立的视图不受内建5秒延迟的影响。过程600预取广告,当确定活动正完成时以更适时的方式显示广告。
当利用活动的应用进行时,活动可由于某些原因从中转移出来。活动可通过用户按压主屏按钮222,用户按压后退按钮224而被转移出来,或活动作为应用的正常进展的一部分而被转移出来。过程600确定活动何时正完成,而与活动仅仅被转移出来并返回处理队列相反。
当用户使活动完成时,或当应用中的正常转移导致活动终止或返回处理队列时,操作系统启动终止例程,称为onPausing()。调用该onPausing()例程可作为活动被转移出来的标示符。onPausing()例程由软件开发者使用,以当用户离开活动或活动至少离开可视性时处理所需要的步骤。onPausing()例程可由软件开发者修改以当活动终止时执行不同的功能。该修改称为覆盖onPausing()例程。过程600使用覆盖的onPausing()例程启动广告逻辑,其确定是否是显示广告的合适的时间而不干扰用户。其他活动终止标示符,在onPausing()例程的调用以外,可用于过程600。过程600描述为由客户端应用执行,例如,以上讨论的客户端应用264。
在阶段605,客户端应用264接收应用程序被执行的活动的状态转移的表示。该表示可为覆盖onPausing()例程的启动,其当活动被转移出来并在显示器250中离开可视性时被调用。从活动中转移出来可由便携式设备110的用户按压主屏按钮222或后退按钮224或由操作应用中的软件转移而导致。在操作系统,使活动离开可视性的任何事件均附有onPausing()例程的调用。
在阶段610,客户端应用264响应于接收活动被转移出来的表示,调用广告控制逻辑例程。在操作系统的情况下,当活动被转移出来时,覆盖onPausing()方法被自动调用。活动转移可由用户动作或被执行应用中的正常转移而引起。
可产生于阶段605的活动转移的一种引起方式为按压操作系统的主屏按钮222。当主屏按钮222被按压时,操作系统不生成公共事件。操作系统的活动转移的另一种引起方式为按压后退按钮224。按压后退按钮224附有事件信号,但后退按钮224事件可为应用的活动正完成的误导标示符。例如,用户在应用正常序列中可多次按压后退按钮224,而没有使活动即应用完成。由于这种细微差别,任务和活动的处理对过程600的合适的运行具有极大的重要性。为确定在按压主屏按钮222,后退按钮224或转移至任务的另一活动时应用的活动正完成(退出应用),覆盖onPausing()方法包括广告SDK中函数调用,其调用在阶段615、620和625执行的广告控制逻辑。
在决定框615,客户端应用264由调用称为isFinishing()的例程来确定活动是否正完成。isFinishing()例程询问操作系统的活动管理器类(本文称为活动管理器),以确定活动是否正完成或在后台运行。如果onPausing()方法由于用户按压后退按钮224,或由于转移至另一软件例程而被调用,活动将被确定为正完成。如果,在决定框615,客户端应用264确定活动正完成,客户端应用264使第一广告例程在阶段620执行。
与按压后退按钮224或软件转移相反,按压主屏按钮222不使活动终止,但使活动处于空闲状态或后台运行。因此,如果onPausing()例程(或其他终止活动的表示)通过按压主屏按钮222来调用,isFinishing()例程将在决定框615确定活动不是正完成。如果客户端应用264(经由isFinishing()方法)确定在阶段615活动不是正完成,客户端应用264在阶段625提交第二广告例程至操作系统的处理队列。然后第二广告例程在到达处理队列顶部时将被执行。
在阶段620和625执行的功能将参考图6B和6C描述。在图6B的引用中,第一广告例程620包括示出的阶段。在阶段630,客户端应用264确定便携式设备110的电话是否处于使用中,例如,由于进行中的语音呼叫,视频呼叫等。如果电话被确定为在使用中,第一广告例程620结束。如果电话被确定为不在使用中,第一广告例程620继续阶段635。
在阶段635,客户端应用264确定新的活动是否启动并等待结果。通用的示例将为照相机应用在任务中的启动以从便携式设备110的照相机获取图像。如果在阶段635确定新的活动被启动,第一广告例程620结束。如果确定新的活动未启动,第一广告例程620进入阶段640。
在阶段640,客户端应用264确定便携式设备110的显示器250是否被锁定。如果在阶段635确定显示器250被锁定,第一广告例程620结束。如果确定显示器250未锁定,第一广告例程620进入阶段645。
在阶段645,客户端应用264确定正完成活动是否为根活动(即,前台活动)。客户端应用264可通过询问活动管理器类来这样做以确定当前任务和活动的列表。如果在阶段645确定正完成活动不是根活动,第一广告例程620结束。如果确定正完成活动为根活动,第一广告例程620进入阶段650并在显示器250显示广告。
第一广告例程620示出的阶段仅为示例性。在某些实施例中,图6B所示的一个或多个阶段可被省略或重新设置。例如,如果便携式设备110不具有电话或等同物,阶段630可被省略。在某些实施例中,第一广告例程620可被修改以包括决定框630、635、640和645的任一个,决定框630、635、640和645的任两个,或决定框630、635、640和645的任三个。
现参见图6C,第二广告例程625包括示出的阶段。如上所讨论,第二广告例程625由于主屏按钮222被按压而提交至操作系统队列。在阶段655,客户端应用264确定便携式设备110的电话是否处于使用中,例如,由于进行中的语音呼叫、视频呼叫等。如果电话被确定在使用中,第二广告例程625结束。如果电话被确定不在使用中,第二广告例程625继续阶段660。
在阶段660,客户端应用264确定新的活动是否启动并等待结果。如果在阶段660确定新的活动启动,第二广告例程625结束。如果确定新的活动未启动,第二广告例程625进入阶段665。
在阶段665,客户端应用264确定便携式设备110的显示器250是否被锁定。如果在阶段665确定显示器250被锁定,第二广告例程625结束。如果确定显示器250未锁定,第二广告例程625进入阶段670。
在阶段670,客户端应用264确定活动是否处于后台(暂停或停止状态)。客户端应用264可通过询问活动管理器类来这样做,以确定当前任务和活动的列表。如果在阶段670确定活动不在后台,第二广告例程625结束。如果确定活动在后台中,第二广告例程620进入阶段675并且在显示器250显示广告。
第二广告例程625示出的阶段仅为示例性。在某些实施例中,图6B所示的一个或多个阶段可被省略或重新设置。在某些实施例中,第二广告例程625可被修改以包括决定框630、635、640和645的任一个,决定框630、635、640和645的任两个,或决定框630、635、640和645的任三个。
如上所讨论,对操作系统合适的用户体验的一个障碍为5秒延迟,其在活动启动时主屏按钮222被按压之后执行。为绕过该延迟,提出了一种显示技术,本文称为″活动支持的覆盖”。活动支持的覆盖调节窗口管理器类addView(),removeView()和updateViewLayout()方法,以在显示器250任意绘制视图容器(其可保存图像、视频、网络内容等)。与作为任务管理装置的活动相反,窗口管理器类函数为视图管理设备。与绘制视图之一同时,活动支持的覆盖技术调用在显示器250的z轴视图后面的活动。
“支持”活动受标准5秒延迟的影响,但视图不受影响,其使显示全部内容(例如,广告文本、视频、音频等)的技术能够合适地工作而不需要视图的活动。当必要时,焦点可切换至活动。此外,由于就位的z轴活动使活动支持的覆盖技术经由操作系统的多种导航机构拦截主屏按钮222的后续按压和监视其他活动或任务的转移,因此使活动支持的覆盖技术从显示器移除视图和活动。在一个实施例,视图的绘制,视图和活动的启动和终止利用窗口管理器类函数来完成。窗口管理器类函数的使用需要函数的手工实现和控制,其当利用活动时自动提供,例如,用于方向控制、视频展现等的功能。
现参见图7,示例过程700包括示出的阶段。过程700为活动支持的覆盖技术的示例,用于在操作系统显示广告。过程700可分别使用于第一和第二广告例程620和625的阶段650和675。
当利用以上讨论的过程600(包括第一和第二广告例程620和625)已确定是显示广告的合适的时间时,过程700被调用。在阶段705,客户端应用264同时(或接近同时)绘制在显示器250视图和调用视图后面的z轴活动。窗口管理器的addView()方法用于绘制视图。视图不包括活动,因此在按压主屏按钮222之后视图不被操作系统延迟后续。
在阶段710,操作系统延迟启动z轴活动,但包含广告的视图不被延迟。在阶段715,客户端应用264监视主屏按钮222的后续调用以及转移至其他活动的其他表示。其利用活动管理器类实现。
在阶段720,客户端应用确定主屏按钮222是否第二次被调用或另一转移是否被检测。该第二主屏按钮222调用在主屏按钮222按压之后,其导致第二广告例程625被调用。这保证了操作系统不在中间状态被挂起。如果正向检测产生在阶段720,过程700进入阶段725,其中客户端应用移除视图和z轴活动。这是因为当用户调用其他活动或任务时其将不适合继续显示广告。如果在阶段720没有主屏按钮222按压或其他转移被检测,过程700回到阶段715,其中客户端应用继续监视主屏按钮222调用以及其他转移。
在5秒延迟期间,没有监视主屏按钮按压。在该延迟期间,主屏按钮222不工作。操作系统防止任何活动在该5秒延迟期间被执行。后退按钮224在5秒延迟期间保留功能。后退按钮224的调用将使广告被退出。在某些实施例中,视图包括软按钮并且用户可通过按压软按钮退出广告。主屏按钮222不工作直到z轴活动启动。在超过5秒延迟之后,z轴活动被启动并且z轴活动在阶段715执行监视。
除在阶段715监视主屏按钮222按压以及其他转移外,z轴活动还监视与视图广告的用户交互。如果用户与视图交互(例如,请求更多信息、下载图像、视频等),z轴活动检测该交互并调用合适的例程。z轴活动可配置以在预定时间段之后将自身和视图终止。
过程700仅为示例性,而其他过程可包括更多的阶段,省略阶段和以不同顺序执行阶段。
检测后台运行的可选机制
如先前讨论,因为感兴趣的移动操作系统不提供直接信号来表示应用被转移至后台,在示例性实施例中,该状态推导自多个内部相关数据点。在一个实施例,当任何转移产生时,希望的转移通过检查操作系统的存储器状态以高确定性被识别。特别地,在操作系统提供关于存储器状态的状态回调时,可监视该回调并当确定后台是否产生时将其状态加入考虑参数的列表。对于Android操作系统,onTrimMemory()回调将UI状态传递至监视过程,而ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN值(当与其他表示合并时)提供应用已在后台运行的确定性。特别地,在一个实施例,监视过程监听onTrimMemory()回调,检查其返回值,并标记ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN的出现。
本地用户界面元素
不仅在广告不突兀时,而且在清楚地显示在用户体验的环境时,移动广告更有效。整体分离自用户的最近体验的移动广告是非常不和谐的,并且因此不太可能导致用户的接受。当移动广告包含与其最近体验关联的用户界面(UI)元素时,连续性用户感觉被显著增强。为此,在一个实施例,包含广告的应用的UI元素包含于广告本身。这种包含可由多种方式产生;然而,典型展示将包括在模仿广告所关联的应用的调色板和/或图像元素的广告周围提供边框或图形包装。附加地,文本可用于强化关联,包含消息诸如“感谢使用应用X!该会话来自:[广告者名称]”。
参考图8,屏幕快照被提供示例性广告,其包含具有与广告关联的应用的UI元素。正如所示,与包含应用关联的应用图标810和赞助消息820界定广告830。
广告的自动拒绝
如上表示,由本系统的实施例实现的用户体验的重要特征是用户快速和简单拒绝不希望的广告的能力。当与本系统启用的自然而非突兀式的广告显示计时合并时,用户注意力不集中和干扰被减少。这增加了给定用户接受感兴趣的未来广告的可能性。为此,本系统的实施例可配置以不使用用户交互而拒绝任何给定显示的广告。其可实现于多种形式;然而,典型展示包括使用以秒测量的倒计时器,其自动拒绝用户在预先确定的时间之后已不选择接受的任何广告。
应当注意,在多种实施例,本发明可涉及诸如本文和/或相关应用描述或说明的过程。该过程可由一个或多个主机系统应用364实现于一个或多个主机系统服务器370的主机系统140,以及由一个或多个客户端应用264实现于一个或多个便携式设备110。该过程典型地实现于一个或多个模块,包括如本文和/或相关应用描述的系统,并且该模块可包括计算机软件,所述计算机软件存储于包括配置以由一个或多个处理器执行的指令计算机可读介质。还应注意,尽管本文和/或相关申请描述和说明的过程可包括特定阶段,显而易见,其他过程,包括比所描述和示出更少,更多,或不同的阶段也在本发明的精神和范围内。因此,本文和相关申请示出的过程被提供用于说明,而非限制。
如所述,本发明的某些实施例可包括计算机软件和/或计算机硬件/软件组合,其配置以实现与本发明诸关联的如以上和/或相关申请描述的一个或多个过程或功能。该实施例可为以软件和/或硬件/软件组合来实现功能的模块的形式。实施例还可采用计算机存储产品的形式,具有计算机可读介质,其中含有用于执行多种计算机实现的操作的计算机代码,诸如与本文描述的功能关联的操作。媒体和计算机代码可被专门设计和构造,用于本发明的目的,或其可为计算机软件领域技术人员公知和可用的类型,或其可为两者的组合。
本发明精神和范围内计算机可读媒体的示例包括,但不限于:磁媒体,诸如硬盘;光媒体,诸如CD-ROM、DVD和全息照相设备;磁光媒体;和专门配置以存储和执行程序代码的硬件设备,诸如可编程微控制器、专用集成电路(“ASIC”)、可编程逻辑设备(“PLD”)和ROM与RAM设备。计算机代码的示例可包括机器代码,诸如由编译器生成和包含高级代码的文件,由计算机利用解释器执行。计算机代码可包括一个或多个模块,执行特定过程或进程以提供可用结果,而该模块可经由本领域已知装置相互通信。例如,本发明的某些实施例可利用汇编语言、Java、C、C#、C++,或本领域已知的其他编程语言和软件开发工具实现。本发明的其他实施例可实现于硬连线电路,代替或结合机器可执行软件指令。
为进行说明,在前的描述使用特定命名来提供本发明的全面理解。然而,将对本领域技术人员显而易见的是,实现本发明不需要特定细节。因此,本发明的特定实施例的在前描述被呈现用于说明和描述。其并非意图穷举或限制本发明至精确公开的精确形式;明显地,多个修改和变型在上述教导的角度也是可能的。实施例被选择和描述以最好地说明本发明的原理及其实际应用,由此使本领域技术人员最好地利用适合于所考虑的特定应用的多种修改来使用本发明和多种实施例。如下权利要求及其等同物旨在定义本发明的范围。
Claims (16)
1.一种在通信设备的显示器屏幕上显示广告的方法,所述通信设备包括处理器以及包括程序代码和操作系统的存储器,所述方法包括:
接收在所述处理器上执行的应用程序的第一活动的状态转移的表示;以及
由所述处理器响应于所述表示而执行所述程序代码以便:
监视所述操作系统的存储器状态以便确定与所述第一活动关联的用户界面状态;
至少部分地基于所述用户界面状态而确定是否所述第一活动正完成;以及
当确定所述第一活动正完成时,在确定存在与所述通信设备关联的预定条件时显示所述广告。
2.根据权利要求1所述的方法,其中所述操作系统为Android操作系统并且其中用于监视的所述程序代码包括用于检查onTrimMemory回调的值的程序代码。
3.根据权利要求2所述的方法,其中用于检查的所述代码包括用于标识TRIM_MEMORY_UI_HIDDEN作为所述值的代码。
4.根据权利要求1所述的方法,其中所述预定条件包括以下至少一个:
所述应用程序的第二活动未被调用,
所述通信设备未包含于呼叫中,
所述显示器屏幕未被锁定,以及
所述第一活动为根活动或处于后台状态。
5.根据权利要求1所述的方法,其中所述应用程序的用户界面包括用户界面(UI)元素并且其中所述广告包括所述UI元素的一个或多个。
6.一种在通信设备的显示器屏幕上显示广告的方法,所述通信设备包括处理器以及包括程序代码的存储器,所述方法包括;
接收在所述处理器上执行的应用程序的第一活动的状态转移的表示,其中所述应用程序的用户界面包括用户界面(UI)元素;以及
由所述处理器响应于所述表示而执行所述程序代码以便:
确定所述第一活动是否正完成;以及
当确定第一活动正完成时,在确定存在与所述通信设备关联的预定条件时显示所述广告,其中所述广告包括所述UI元素的一个或多个。
7.根据权利要求6所述的方法,其中所述程序代码进一步包括当被执行时使所述处理器执行以下步骤的程序代码:
监视所述操作系统的存储器状态,以便确定与所述第一活动关联的用户界面状态;以及
至少部分地基于所述用户界面状态而确定是否所述第一活动正完成。
8.根据权利要求7所述的方法,其中所述操作系统为Android操作系统,并且其中用于监视的所述程序代码包括用于检查onTrimMemory回调的值的程序代码。
9.根据权利要求8所述的方法,其中用于检查的所述代码包括用于标识TRIM_MEMORY_UI_HIDDEN作为所述值的代码。
10.一种在通信设备的显示器屏幕上显示广告的方法,所述通信设备包括处理器以及包括程序代码的存储器,所述方法包括:
接收在所述处理器上执行的应用程序的第一活动的状态转移的表示;以及
由所述处理器响应于所述表示而执行所述程序代码以便:
确定所述第一活动是否正完成;
当确定所述第一活动正完成时,在确定存在与所述通信设备关联的预定条件时显示所述广告;
确定所述通信设备的用户在预定时间段没有与所述广告交互;以及
作为响应停止所述广告的所述显示。
11.根据权利要求10所述的方法,其中所述程序代码进一步包括当执行时使所述处理器执行以下步骤的程序代码:
监视所述操作系统的存储器状态以便确定与所述第一活动关联的用户界面状态;以及
至少部分地基于所述用户界面状态而确定是否所述第一活动正完成。
12.根据权利要求11所述的方法,其中所述操作系统为Android操作系统,并且其中用于监视的所述程序代码包括用于检查onTrimMemory回调的值的程序代码。
13.根据权利要求12所述的方法,其中用于检查的所述代码包括用于标识TRIM_MEMORY_UI_HIDDEN作为所述值的代码。
14.根据权利要求10所述的力法,其中所述应用程序的用户界面包括用户界面(UI)元素,并且其中所述广告包括所述UI元素的一个或多个。
15.一种通信设备,包括:
处理器;
显示器屏幕;以及
存储器,耦合于所述处理器,所述存储器包含程序代码,所述程序代码当由所述处理器执行时使所述处理器:
接收在所述处理器上执行的应用程序的第一活动的状态转移的表示;以及
响应于所述表示而执行所述程序代码以便:
监视所述操作系统的存储器状态以便确定与所述第一活动关联的用户界面状态;
至少部分地基于所述用户界面状态而确定是否所述第一活动正完成;以及
当确定所述第一活动正完成时,在确定存在与所述通信设备关联的预定条件时显示所述广告。
16.一种通信设备,包括:
处理器;
显示器屏幕;以及
耦合于所述处理器的存储器,所述存储器包含程序代码,所述程序代码当由所述处理器执行时使所述处理器:
接收在所述处理器上执行的应用程序的第一活动的状态转移的表示,其中所述应用程序的用户界面包括用户界面(UI)元素;以及
由所述处理器响应于所述表示而执行所述程序代码以便:
确定是否所述第一活动正完成;以及
当确定所述第一活动正完成时,在确定存在与所述通信设备关联的预定条件时显示所述广告,其中所述广告包括所述UI元素的一个或多个。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610982521.0A CN107729093A (zh) | 2016-08-10 | 2016-08-10 | 用于在便携式设备上不突兀地显示广告的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610982521.0A CN107729093A (zh) | 2016-08-10 | 2016-08-10 | 用于在便携式设备上不突兀地显示广告的系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107729093A true CN107729093A (zh) | 2018-02-23 |
Family
ID=61201343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610982521.0A Pending CN107729093A (zh) | 2016-08-10 | 2016-08-10 | 用于在便携式设备上不突兀地显示广告的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107729093A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109801104A (zh) * | 2019-01-15 | 2019-05-24 | 上海连尚网络科技有限公司 | 一种无感知的广告信息展示方法 |
WO2021081520A1 (en) * | 2019-10-25 | 2021-04-29 | Iqzone, Inc. | Monitoring operating system methods to facilitate unobtrusive display of media content on portable devices |
US11663628B2 (en) | 2012-05-14 | 2023-05-30 | Iqzone, Inc. | Systems and methods for unobtrusively displaying media content on portable devices |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753467A (zh) * | 2008-10-20 | 2010-06-23 | 华为终端有限公司 | 提供移动广告业务内容的方法及装置 |
CN105161043A (zh) * | 2014-10-13 | 2015-12-16 | 三星电子株式会社 | 显示装置、具有多个显示装置的显示系统和用于控制显示系统的方法 |
-
2016
- 2016-08-10 CN CN201610982521.0A patent/CN107729093A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753467A (zh) * | 2008-10-20 | 2010-06-23 | 华为终端有限公司 | 提供移动广告业务内容的方法及装置 |
CN105161043A (zh) * | 2014-10-13 | 2015-12-16 | 三星电子株式会社 | 显示装置、具有多个显示装置的显示系统和用于控制显示系统的方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11663628B2 (en) | 2012-05-14 | 2023-05-30 | Iqzone, Inc. | Systems and methods for unobtrusively displaying media content on portable devices |
CN109801104A (zh) * | 2019-01-15 | 2019-05-24 | 上海连尚网络科技有限公司 | 一种无感知的广告信息展示方法 |
WO2021081520A1 (en) * | 2019-10-25 | 2021-04-29 | Iqzone, Inc. | Monitoring operating system methods to facilitate unobtrusive display of media content on portable devices |
US11736776B2 (en) | 2019-10-25 | 2023-08-22 | Iqzone, Inc. | Monitoring operating system methods to facilitate unobtrusive display of media content on portable devices |
US11736777B2 (en) | 2019-10-25 | 2023-08-22 | Iqzone, Inc. | Using activity-backed overlays to display rich media content on portable devices during periods of user inactivity |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8751948B2 (en) | Methods, apparatus and systems for providing and monitoring secure information via multiple authorized channels and generating alerts relating to same | |
US10558475B2 (en) | Apparatus and methods for widget intercommunication in a wireless communication environment | |
US8924252B2 (en) | Systems and methods for providing timely advertising to portable devices | |
US10257286B2 (en) | Emulating a wireless connection using a wired connection | |
EP3144809A1 (en) | Method and apparatus for displaying multimedia information | |
US20120200607A1 (en) | Offering menu items to a user | |
CN108885740A (zh) | 主动的智能个人助理 | |
CN104395878A (zh) | 动态用户界面定制 | |
US20220366452A1 (en) | Activity-backed overlay technique for media display on mobile devices | |
CN113225572A (zh) | 直播间的页面元素展示方法、装置及系统 | |
US20170255967A1 (en) | Systems and methods for unobtrusively displaying media content on portable devices | |
CN107729093A (zh) | 用于在便携式设备上不突兀地显示广告的系统和方法 | |
CN109542577A (zh) | 广告更新方法、装置及计算机可读存储介质 | |
CN115150507A (zh) | 服务调度方法及系统、电子设备及计算机可读存储介质 | |
WO2021081519A1 (en) | Using system broadcasts to unobtrusively display media content on portable devices | |
CN105025320B (zh) | 一种混合构架的可运营桌面系统及其实现方法 | |
EP2169569A1 (fr) | Procédé et système de communication entre applications web distinctes | |
US11663628B2 (en) | Systems and methods for unobtrusively displaying media content on portable devices | |
CN111614705B (zh) | 多终端设备之间服务决策分发的方法及系统 | |
CN115002274A (zh) | 控制方法及装置、电子设备及计算机可读存储介质 | |
WO2018083679A1 (en) | System and method for providing personalized solutions using bots | |
Cordero Benítez | Modelos emergentes para el desarrollo de aplicaciones móviles sociales: people as a service y social devices. Prueba de concepto. | |
WO2015063494A1 (en) | Context dependent display of information | |
CN118333682A (zh) | 会员有效时长的延时方法、装置、设备、介质及程序产品 | |
KR20140094420A (ko) | 스마트 디바이스의 애플리케이션 소프트웨어의 종료 시의 알림 메시지를 이용한 광고 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1247697 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |