无线网络接入的功耗处理方法及装置 |
|||||||
申请号 | CN201410396176.3 | 申请日 | 2014-08-12 | 公开(公告)号 | CN105338606A | 公开(公告)日 | 2016-02-17 |
申请人 | 中兴通讯股份有限公司; | 发明人 | 何祥; 张磊; | ||||
摘要 | 本 发明 提供了一种无线网络接入的功耗处理方法及装置,其中,上述方法包括:在终端的无线网络接入功能实体开启时,获取终端当前运行应用列表中所有应用的网络连接信息,其中,该网络连接信息用于反映所述当前运行应用是否具有网络连接权限;根据所有应用的网络连接信息调整无线网络接入功能实体的功耗模式,其中,在所有应用中至少一个应用的网络连接信息指示不具备网络连接权限时,将功耗模式调整为第一功耗模式,否则,将功耗模式调整为第二功耗模式;第一功耗模式的功耗小于第二功耗模式的功耗。采用本发明提供的上述技术方案,可以优化无线接入网络的功耗处理,节省终端电量,增加终端的续航时间。 | ||||||
权利要求 | 1.一种无线网络接入的功耗处理方法,其特征在于,包括: |
||||||
说明书全文 | 无线网络接入的功耗处理方法及装置技术领域[0001] 本发明涉及通信领域,尤其是涉及一种无线网络接入的功耗处理方法及装置。 背景技术[0002] 目前,随着通信技术、移动互联网以及相关终端产品的快速发展,人们越来越多地使用智能终端实现出了基础通信之外的诸如社交、多媒体娱乐、办公等功能,逐渐地,智能终端尤其是安卓(Android)手机的功能和使用场景也朝着多元化的方向不断地在拓展,而这其中一个重要的业务应用便是无线保真(WIreless-Fidelity,简称为WiFi)无线上网。 [0003] 由于WiFi连接操作简单、可以高速接入宽带网络,并且具有流量费用等方面的优点,在很多与网络接入、数据传输相关的场景得到使用,不过由于WiFi芯片在工作时,其功耗往往较大,这样也对手机的续航能力提出了更高的要求,而续航能力直接影响到用户的使用体验,也在较大程度上影响了产品本身的竞争力。 [0004] 针对相关技术中的上述问题,尚无有效地解决方案。 发明内容[0005] 针对相关技术中,无线网络接入时功耗较大等技术问题,本发明提供了一种无线网络接入的功耗处理方法及装置,以至少解决上述技术问题。 [0006] 根据本发明的一个方面,提供了一种无线网络接入的功耗处理方法,包括:在终端的无线网络接入功能实体开启时,获取终端当前运行应用列表中所有应用的网络连接信息,其中,该网络连接信息用于反映所述当前运行应用是否具有网络连接权限;根据所述所有应用的网络连接信息调整无线网络接入功能实体的功耗模式,其中,在所述所有应用中至少一个应用的所述网络连接信息指示不具备网络连接权限时,将所述功耗模式调整为第一功耗模式,否则,将所述功耗模式调整为第二功耗模式;所述第一功耗模式的功耗小于第二功耗模式的功耗。 [0007] 优选地,根据所述所有应用的所述网络连接信息调整无线网络接入功能实体的功耗模式,包括:根据所述所有应用的网络连接信息调整对无线接入点的扫描间隔,其中,所述第一功耗模式对应的扫描间隔大于所述第二功耗模式对应的扫描间隔。 [0008] 优选地,获取终端当前运行应用列表中所有应用的网络连接信息之前包括:获取所述无线网络接入功能实体的开关状态变化信息或无线网络的接入状态信息;根据所述开关状态变化信息或所述接入状态信息进入或退出所述第一功耗模式,其中,在所述开关状态变化信息指示关闭无线网络接入功能实体或者所述无线网络接入功能实体已经接入网络时,退出所述第一功耗模式;否则,进入所述第一功耗模式。 [0009] 优选地,获取所述无线网络接入功能实体的开关状态变化信息或无线网络的接入状态信息:接收来自网络侧的广播消息;从所述广播消息中获取所述开关状态变化信息或所述接入状态信息。 [0010] 优选地,获取终端当前运行应用列表中所有应用的网络连接信息,还包括:周期性更新所述当前运行应用列表,并获取更新后的应用列表中的网络连接信息。 [0011] 优选地,所述无线网络接入功能实体包括:无线保真WiFi模块。 [0012] 根据本发明的另一个方面,提供了一种无线网络接入的功耗处理装置,包括:第一获取模块,用于在终端的无线网络接入功能实体开启时,获取终端当前运行应用列表中所有应用的网络连接信息,其中,该网络连接信息用于反映所述当前运行应用是否具有网络连接权限;第一调整模块,用于根据所述所有应用的网络连接信息调整无线网络接入功能实体的功耗模式,其中,在所述所有应用中至少一个应用的所述网络连接信息指示不具备网络连接权限时,将所述功耗模式调整为第一功耗模式,否则,将所述功耗模式调整为第二功耗模式;所述第一功耗模式的功耗小于第二功耗模式的功耗。 [0013] 优选地,所述第一调整模块,还用于根据所述所有应用的网络连接信息调整对无线接入点的扫描间隔,其中,所述第一功耗模式对应的扫描间隔大于所述第二功耗模式对应的扫描间隔。 [0014] 优选地,上述装置还包括:第二获取模块,用于获取所述无线网络接入功能实体的开关状态变化信息或无线网络的接入状态信息;第二调整模块,用于根据所述开关状态变化信息或所述接入状态信息进入或退出所述第一功耗模式,其中,在所述开关状态变化信息指示关闭无线网络接入功能实体或者所述无线网络接入功能实体已经接入网络时,退出所述第一功耗模式;否则,进入所述第一功耗模式。 [0015] 优选地,所述第二获取模块包括:接收单元,用于接收来自网络侧的广播消息;获取单元,用于从所述广播消息中获取所述开关状态变化信息或所述接入状态信息。 [0016] 通过本发明,采用根据终端中应用是否具备网络连接权限来调整无线网络接入功能实体的功耗模式的技术手段,解决了相关技术中,无线网络接入时功耗较大等技术问题,从而可以优化无线接入网络的功耗处理,节省终端电量,增加终端的续航时间。附图说明 [0018] 图1为根据本发明实施例的无线网络接入的功耗处理方法的流程图; [0019] 图2为根据本发明实施例的无线网络接入的功耗处理装置的结构框图; [0020] 图3为根据本发明实施例的无线网络接入的功耗处理装置的另一结构框图; [0021] 图4为根据本发明优选实施例的在该低功耗优化模式下的无线网络接入的功耗处理流程图; [0022] 图5为根据本发明实施例的WiFi扫描控制的流程图; [0023] 图6为根据本发明实施例的WiFi低功耗模式管理的流程图。 具体实施方式[0024] 下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。 [0025] 针对相关技术中无线网络接入时存在功耗较大等问题,本发明实施例提供了相应的解决方案,以解决上述技术问题。以下详细说明。需要说明的是,以下方案可以应用于运行以下之一操作系统的终端中,但不限于此:安卓系统、Window操作系统、UNIX系统、IOS操作系统。 [0026] 图1为根据本发明实施例的无线网络接入的功耗处理方法的流程图。如图1所示,该方法包括: [0027] 步骤S102,在终端的无线网络接入功能实体开启时,获取终端当前运行应用列表中所有应用的网络连接信息,其中,该网络连接信息用于反映当前运行应用是否具有网络连接权限; [0028] 步骤S104,根据所有应用的网络连接信息调整无线网络接入功能实体的功耗模式,其中,在所有应用中至少一个应用的网络连接信息指示不具备网络连接权限时,将功耗模式调整为第一功耗模式,否则,将功耗模式调整为第二功耗模式(即所有应用中至少一个应用的网络连接信息指示具备网络连接权限时,将功耗模式调整为第二功耗模式);第一功耗模式的功耗小于第二功耗模式的功耗。 [0029] 通过上述处理步骤,由于可以根据网络连接信息调整无线网络接入功能实体的功耗模式,并且,在所有应用中至少一个应用的网络连接信息指示不具备网络连接权限时,将功耗模式调整为第一功耗模式,因此,可以解决无线接入时的功耗较大问题,节省终端电量,提高终端的续航能力。 [0030] 步骤S104的实现方式有多种,例如可以降低无线网络接入实体的信号接收功率,在一个优选实施方式中,可以根据终端上当前运行的所有应用的网络连接信息调整对无线接入点的扫描间隔,其中,第一功耗模式对应的扫描间隔大于第二功耗模式对应的扫描间隔。这样,由于增大了扫描时间间隔,因此,可以减小功耗。在上述无线网络接入实体表现为WiFi模块时,上述无线接入点可以表现为WiFi热点。 [0031] 在一个优选实施过程中,可以在步骤S102之前执行以下处理过程:获取无线网络接入功能实体的开关状态变化信息或无线网络的接入状态信息;根据开关状态变化信息或接入状态信息进入或退出上述第一功耗模式,其中,在开关状态变化信息指示关闭无线网络接入功能实体或者无线网络接入功能实体已经接入网络时,退出第一功耗模式;否则,进入第一功耗模式。从上述处理过程也可以看出,可以将处于低功耗模式的第一功耗模式设置为无线网络接入实体在开启时的初始默认模式,以更好地减小功耗。此时,步骤S102中将功耗模式调整为第一功耗模式可以表现为保持第一功耗模式,但不限于此。 [0032] 在上述处理过程中,可以通过以下方式获取上述无线网络接入功能实体的开关状态变化信息或无线网络的接入状态信息,但不限于此:接收来自网络侧的广播消息;从上述广播消息中获取上述开关状态变化信息或上述接入状态信息。 [0033] 在一个优选实施例中,还可以对上述应用列表进行更新,此时,步骤S102可以表现为以下形式,但不限于此:周期性更新上述当前运行应用列表,并获取更新后应用列表中的网络连接信息。 [0034] 在本实施例中,还提供了一种无线网络接入的功耗处理装置,用于实现上述方法,如图2所示,该装置包括: [0035] 第一获取模块20,用于在终端的无线网络接入功能实体开启时,获取终端当前运行应用列表中所有应用的网络连接信息,其中,该网络连接信息用于反映上述当前运行应用是否具有网络连接权限; [0036] 第一调整模块22,连接至第一获取模块20,用于根据上述所有应用的网络连接信息调整无线网络接入功能实体的功耗模式,其中,在上述所有应用中至少一个应用的上述网络连接信息指示不具备网络连接权限时,将上述功耗模式调整为第一功耗模式,否则,将上述功耗模式调整为第二功耗模式;第一功耗模式的功耗小于第二功耗模式的功耗。 [0037] 通过上述各个模块实现的功能,同样可以实现减少终端在无线接入网络时的功耗,提高终端的续航能力。 [0038] 在一个优选实施例中,第一调整模块22,还用于根据上述所有应用的网络连接信息调整对无线接入点的扫描间隔,其中,第一功耗模式对应的扫描间隔大于上述第二功耗模式对应的扫描间隔。 [0039] 如图3所示,本发明实施例的一个优选实施方式中提供的无线网络接入的功耗处理装置,还可以包括: [0040] 第二获取模块24,用于获取上述无线网络接入功能实体的开关状态变化信息或无线网络的接入状态信息; [0041] 第二调整模块26,连接至第二获取模块24,用于根据上述开关状态变化信息或上述接入状态信息进入或退出上述第一功耗模式,其中,在上述开关状态变化信息指示关闭无线网络接入功能实体或者上述无线网络接入功能实体已经接入网络时,退出上述第一功耗模式;否则,进入上述第一功耗模式。 [0042] 在一个优选实施例中,第二获取模块24包括以下处理单元:接收单元240,用于接收来自网络侧的广播消息;获取单元242,连接至接收单元240,用于从上述广播消息中获取上述开关状态变化信息或上述接入状态信息 [0044] 为了更好地理解上述实施例,以下结合优选实施例详细说明。 [0045] 以下实施例以基于Android系统的智能终端的WiFi扫描策略优化为例进行说明。本实施例的主要设计思想在于,通过动态获取当前用户运行程序列表的特定权限属性,对应控制底层WiFi扫描时间间隔,并进行定时更新、同步刷新,使得当前应用程序的运行状态发生改变时,可以及时地根据最新的应用程序权限信息对应判断是否需要调整扫描参数。另外还可以根据若干特定的系统广播消息对WiFi低功耗模式进行动态管理。 [0046] 先描述本发明的常见使用场景的一个参考实例。 [0047] 用户打开WiFi后,连接到一个热点,启动某应用程序(例如视频客户端)进行上网,一段时间后,退出该应用,不过没有关闭WiFi;随后走到另外一个地方,打开其他不使用WiFi与网络的本地应用例如计算器、记事本等,这时候由于离热点较远(已超出范围),手机与热点的连接会断开,系统自动开始周期性的扫描。实际上,结合用户实际正在运行的应用程序,此时的WiFi扫描对于用户当前操作基本上没有实际意义,这种情况下就可以增加扫描间隔,减少由于后台扫描带来的电量消耗。 [0048] 下面结合附图进一步说明: [0049] 图4所示流程包括了低功耗模式的初始化与运行中的程序信息判断的主体流程。如图4所示: [0050] S401-S402:手机开机,系统在完成初始化之后进入待机状态; [0051] S403:根据WiFi开启以及连接状态,初始化WiFi低功耗模式;具体来说,这里如果WiFi已经打开,并且没有连接到某个热点,则进入WiFi低功耗模式,设置相关变量;否则复位相关变量(不进入WiFi低功耗模式)。这里低功耗模式是下述各种判断处理的前提条件。 [0052] S404:判断当前运行模式,如果已经进入WiFi低功耗模式,则继续下一步的获取运行程序权限信息。 [0053] S405:在WiFi低功耗模式下,获取当前正在运行的应用程序列表,并依次查询每个应用程序所具有的权限,如果当前程序既没有WIFI权限、也没有INTERNET网络权限,则继续判断下一个应用程序,否则设置当前WiFi扫描周期为默认值之后转到S407;如果遍历完所有应用程序,都没有WIFI权限、INTERNET网络权限,转到S406; [0054] S406:由于当前运行程序都没有WIFI权限和网络权限,WiFi扫描操作可以增加时间间隔,也即设置一个较长的扫描周期,例如5分钟; [0055] S407:更新定时器相关控制对象(例如发送一个延时消息),以使得一段时间之后,上述S404-S407的步骤可以自动执行。 [0056] S408:流程处理完毕,返回。 [0057] 图5所示流程包括应用程序信息查询与WiFi扫描周期设置操作,如图5所示,包括以下流程: [0058] S501:获取当前正在运行的应用程序列表(可以通过ActivityManager和PackageInfo等对象完成); [0059] S502:循环遍历该列表,逐个查询应用程序的所使用的权限信息(可以通过PackageManager完成); [0060] S503:判断当前应用程序的权限信息中,是否有WIFI权限(如"android.permission.ACCESS_WIFI_STATE"),如果没有该权限则继续下一步,否则直接转到S507; [0061] S504:判断当前应用程序的权限信息中,是否有网络权限(如"android.permission.INTERNET"),如果没有该权限则继续下一步,否则直接转到S507; [0062] S505:判断是否已经遍历完整个运行程序列表,如果已经遍历完成,则继续下一步,否则转到S502继续遍历操作。 [0064] S507:恢复默认的WiFi扫描周期,使得系统扫描操作按照默认配置进行。 [0065] 图6所示流程包括相关广播消息的处理以及状态变量的设置,具体如下: [0066] S601:注册一个广播接收器(BroadcastReceiver),并登记WiFi开关状态、网络连接变化方面的广播消息; [0067] S602:在WiFi开关状态变化,或者网络连接状态变化时,该广播接收器收到对应的消息(Intent); [0068] S603:判断是否WiFi被关闭的消息,如果是WiFi被关闭,则转到S605[0069] ,退出低功耗模式,因为这种情况下不需要再去遍历查询运行程序的权限信息,否则继续下一步; [0070] S604:判断是否WiFi网络连接上(Connected)的消息,如果已经连接上,由于Android系统在WiFi连接上之后不会继续扫描操作,所以也是转到S605,退出低功耗模式;否则转到S606。 [0071] S605:退出低功耗模式,设置对应的状态变量; [0072] S606:进入低功耗模式,设置对应的状态变量。 [0073] 需要说明的是,进入低功耗模式后,本实施例中的扫描控制流程才会根据实际正在运行程序的权限信息判断是否需要修改扫描周期参数,或者是恢复默认的扫描周期,这是一个动态过程。 [0074] 本发明实施例中的低功耗优化方法适用于但不限于智能手机,平板电脑等终端。 [0075] 本发明提供的上述优选实施例实现了以下有益效果:在不影响用户常规使用的前提下,通过对周期性的WiFi扫描策略进行优化,并根据相关的系统广播消息对WiFi低功耗模式的智能管理,以达到节省电量、增加续航时间的目的,从而提升用户体验与产品综合竞争力。 [0076] 在另外一个实施例中,还提供了一种软件,该软件用于执行上述实施例及优选实施方式中描述的技术方案。 [0078] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。 [0079] 以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 |