浏览器驱动的功率节省的制作方法_3

文档序号:9575553阅读:来源:国知局
对常用视频网站诸如YouTubeJimeo等进行维护。特定于用户的白名单任 选地被生成,例如在用户点击来自特定来源的插件从而与该插件进行交互时,来源信息被 自动添加至来源白名单,该来源白名单在预先确定的时间(诸如30天)内由浏览器125(或 进程)进行维护;用户可在偏好设置中编辑用户白名单以添加或移除来源。被点击的插件 作为网页URL和插件URL的组合被添加至用户白名单。该过程限制了准许插件仅在其所 出现的网页上,从而防止点击一次广告的用户无意中自动激活所访问的每个网页上的来自 广告提供商的所有插件广告。此外,又一个否定性规则任选地响应于用户动作而不加载插 件。例如,如果用户点击按钮或启动插件的其他用户界面元件,则用户很可能想要运行插 件,从而不应使该特定插件实例省电。该实例常常针对与游戏相关联的插件而发生。浏览 器125(或其他进程)查看插件是否由于用户输入(例如,鼠标、按键、触摸的时间戳)而被 启动,或者在插件启动之前是否在N秒(例如,五秒)内发生用户动作。
[0052] 如果(肯定性或否定性)规则不适用,则管理功率的进程(例如,浏览器125)允 许370插件在不应用功率节省过程330的情况下加载。如果规则中的一个规则被应用,则 浏览器(或进程)创建325用于所识别的插件的单独执行过程,例如经由内容提取模块150 复制用于相关D0M部件的子树并将它们置于新的进程中,并且基于模式的UI配置模块155 继而控制所复制的子树使其不被显示。浏览器(或进程)继而执行功率节省过程330。
[0053] 再次参见图4的实例,主要资源部分410中的插件415将被归类为网页的主要资 源,因此不对其应用功率节省过程。然而,插件435将应用功率节省过程,因为该插件不是 主要资源(例如,不出现在白名单上,或甚至可能由于其为广告而出现在来源黑名单上)。
[0054] -旦功率节省过程被启动330,插件所消耗的电量便会减少(例如,通过阻止插件 在网页上播放)。在对用户不可见的单独进程中,一个或多个图像作为来自插件的快照被捕 获335,以可能用作静态图像从而在插件出现在所接收的网页上时对其进行替换。例如由 图像选择模块160从一个或多个所捕获的图像中选择340作为替换图像的图像,如结合图 6更详细所述的。
[0055] 接下来,管理功率的进程(例如,浏览器125)利用经由单独进程(例如,由基于模 式的UI配置模块155)所选择340的静态图像来替换345所识别的插件,以更新所显示的 网页以包括静态图像而不是插件的视频(或其他内容)。不允许插件435继续运行(例如, 阻止插件运行、暂停插件或以其他方式使插件停止)使计算设备100节省了大量的计算功 率和电池寿命。
[0056] 现在参见图5A,其示出了网页500,在该网页中插件435已按照上述替换步骤345 由与插件435对应的静态图像440来替换。如图5B所示,如果用户悬停于静态图像440上 或触摸屏上的对应动作诸如保持该触摸静止于静态图像440上,则通知445"插件暂停一一 点击重启"出现。如果用户在静态替换图像440处进行选择动作或触摸动作,则在网页上重 载相同类型的插件。
[0057] 该进程涉及媒体插件,诸如包括视频、音频或包括视频或其他可视化部件的某种 组合的那些媒体插件。对于不具有可视化部件的插件类型,可应用下文结合图8-11所述的 功率减少进程(基于浏览器的节流或其他进程控制的节流)(例如,减少更新、暂停等)来 代替上述功率节省过程330。
[0058] 返回至图3,如果在稍后的时间处,如步骤345和350之间箭头中的虚线所表示的, 浏览器125 (或进程)接收到350与插件相关的用户动作,则浏览器125 (或进程)确定355 该动作是否为重载类型的动作。根据各种实施例,重载类型的动作包括点击静态图像440 或通知445,或者指示用户想要重载插件435的其他动作。如果动作是重载类型的,则浏览 器125 (或进程)重载360插件,例如由基于模式的用户界面配置模块155重新配置网页以 供渲染。
[0059] 如果动作不是重载类型的,诸如调整插件435的尺寸或点击与网页上的功率节省 插件对应的不同静态图像440,则进程返回到步骤320以检查对应插件435是否满足任何进 一步的省电规则。在该实例中,规则为在上文中结合步骤320描述的,或任选地与步骤350 的用户动作(例如,针对调整尺寸的动作)相关,在一些情况下,该规则为插件435的尺寸 是否已被调整成超过上述最大尺寸阈值(从而指示浏览器或进程不进一步使插件省电)。 对于与重载网页上不同插件435对应的动作,在一些情况下,该规则为插件435是否为相同 类型以及是否来自相同的内容来源,在这种情况下,再次不使插件435省电。此外,浏览器 125 (或进程)任选地在网页上运行插件435的双重检查以检查暂停的插件435是否对应于 网页的主要资源部分(诸如图4的410)以及是否为大尺寸。在该实例中,浏览器125(或进 程)具有网页上的典型主要资源的坐标信息(例如,在网页的中间部分,但不完全在顶部), 并且其可确定插件是否在这些坐标的区域内。如果规则不适用,则重载360插件435。
[0060] 方法流稈:替换图像诜择
[0061] 功率节省过程330有益地进行操作以提供替换图像,该替换图像将给予用户网页 上的插件正常运行而并未损坏的印象。这是因为如果插件只是简单地停止而不具有替换 图像,则用户可能错误地推断插件或网页未正常运行。现在参见图6,其示出流程图,该流 程图示出根据一个实施例的用于选择性地应用功率节省过程330以选择合适的静态图像 以用于替换网页上的插件的方法。单独进程(线程)例如图像选择模块160首先从浏览器 125(或进程)接收605插件435,例如作为启动图3的功率节省过程330的结果。
[0062] 首先,从浏览器125(或管理功率的进程)接收610用于省电的所选择的插件。程 序循环620开始用于处理N个图像,在该实例中为图像1到图像N。如结合图3所描述的, 从插件435捕获630 -个或多个图像(图3的步骤335)。
[0063] 接下来,进程例如根据各种标准来确定640所捕获的图像是否适于作为静态替换 图像进行显示。根据一个实施例,通过生成图像的颜色直方图来分析图像以检测存在于图 像中的颜色。对直方图颜色进行检查以确定640图像是否满足用作静态替换图像的标准。
[0064] 用于将图像用作替换图像的标准基于直方图中的颜色的分布将不表示插件435 的内容的图像排除在外。例如,全部(或基本上例如98%)黑色像素或全部(或基本上全 部)白色像素,或者更一般地基本上全部一个颜色的静态图像被拒绝作为候选替换图像, 因为它们造成插件或网页"损坏"的印象。图7显示了用于显示不满足用作替换图像的标 准的假设的静态图像710的网页700的实例。在该实例中,静态图像为来自视频的一个时 亥IJ,其中整个图像为单一颜色,例如全黑。全黑静态图像不满足上述标准,因为其可能使观 看者误认为插件"损坏"而不是仅仅停止。
[0065] 返回至图6,如果图像满足标准,则选择图像并作为替换图像被提供670至浏览器 125 (或进程)。否则,循环递增650候选图像的数量,并且循环继续返回至步骤620处的起 点。如果已对最大数量的图像(例如,N= 20)进行分析并且未找到满足标准的图像,则使 用660最后捕获的图像并将其提供670至浏览器125 (或进程)。此外,对于图中所示的两 个场景,即分析最多至N个图像直到找出满足标准的图像(此时进程停止),或者分析N个 图像直到进程选择第N个图像,另外两个场景对于选择该图像作为替代的进程来说是可能 的。首先,在最简单的实例中,可仅从该插件捕获630图像一次,并且可将该图像作为替换 图像提供670至浏览器125 (或进程)。如上所述,该选项面临着用户认为插件或网页损坏 的风险。另选地,不使用与所捕获和所分析640的图像的数量限制对应的循环,而可使用针 对图像的捕获和分析640设定时间限制的循环例如捕获一段时间t内的图像,该时间段可 为在加载网页之后预先确定的秒数(或更短时间增量),例如2秒。对所捕获和所分析的图 像的数量的这一数值限制或时间限制针对在选择图像之前被考虑用作静态图像的图像的 数量设定限制,即使其不满足标准也是如此。考虑多个图像可有助于提供作为静态图像而 显示的"最佳"图像,同时对数量设有限制有助于避免针对该步骤使用太多处理/功率,该 处理/功率过多将使减少功率使用的目标大打折扣。
[0066] 后台讲稈的功率节省
[0067] 除了与主要网页上的插件相关的上述功率节省过程之外,浏览器125(或进程)还 可通过减少或暂停在后台网页的不可见部分上发生的进程诸如后台(不被显示的)标签、 最小化的网页和被完全遮挡或被部分遮挡的网页来提供附加功率节省。
[0068] 在一些具体实施中,进程的操作系统层级控件(功率节流)可减少或暂停正在浏 览器应用程序125 (或浏览器)内的进程中运行的所有网页,并且浏览器应用程序125 (或 功率管理进程)可选择性地减少单个网页的进程执行。这是因为操作系统可确定哪些进程 正在运行但并不具有关于哪些网页具有焦点的信息,以及哪些在显示器上是可见的与被遮 挡的。因此,在一些情况下,操作系统使所有进程运行,或者在其他情况下,操作系统减少所 有进程。由于浏览器应用程序125 (或进程)具有关于哪些网页可见/具有焦点的信息,因 此浏览器125 (或进程)可选择性地控制非焦点网页的执行。
[0069] 图8为示出了用于识别和选择性地控制后台进程的执行以减少这些后台进程的 功率消耗(其在本文称为"节流")的过程的流程图,该过程任选地由计算设备105或存储 于本文的非暂态计算机可读存储介质中的一个或多个程序来执行。首先,管理功率的进程 (例如,web浏览器125)确定在浏览器125中打开的网页。在其他实施例中,浏览器125 (或 与浏览器相关联的进程)可将网页可见性信息报告给0S,并且0S可执行功率管理。例如, D0M处理模块135生成用于网页的D0M树,并且渲染模块140对D0M树进行渲染。例如,如 果三个不同网页均为打开的,则三个渲染进程用于渲染网页:每个网页对应一个渲染进程。 另选地,在一些情况下,多个网页在单个进程中运行。例如,前N个网页在其自身的进程中 运行并且之后的网页(N+1等)共享一个进程,这对于浏览器125来说是典型的。类似地, 来自相同域的网页能够在同一进程中运行。许多其他配置也是可能的。
[0070] 浏览器125(或进程)确定820网页的内容是否可见。浏览器125(或进程)跟踪 网页的可见性状态,该可见性状态可基于网页是否处于后台标签中、浏览器窗口是否被最 小化或者内容是否被另一窗口部分遮挡或完全遮挡使其不可见而被设置为不可见的可见 性状态。图9为根据一个实施例的在后台标签中显示网页的实例的GUI900的屏幕截图。 CNN新闻网页在后台中,如由出现在后台标签910上的标题所示出的,而Apple网页920在 前面的标签中。在该实例中,CNN新闻网页不可见,并且将例如经由可见性模块1
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1