一种应用程序网速的控制方法及移动终端与流程

文档序号:12134414阅读:338来源:国知局
一种应用程序网速的控制方法及移动终端与流程

本发明涉及移动通信技术领域,尤其涉及一种应用程序网速的控制方法及移动终端。



背景技术:

随着移动终端的普及,进一步加速了移动互联网时代的发展,在移动终端领域,出现了越来越多的基于互联网的应用程序。如视频应用、音乐应用、社交应用、游戏、新闻阅读浏览器、云盘类的存储应用等。移动终端上越来越多的应用都需要联网运行,包括应用程序本身也需要联网进行版本更新。因此,在同一时刻,移动终端上可能存在多个应用在联网运行,与应用服务器进行数据交互。

然而,在网络带宽不充足或不稳定的情况下,受网速的影响,移动终端上的前台应用,如浏览器、视频应用等,在与网络侧的服务器端进行数据交互时,经常会出现加载缓慢、图片加载失败,或者卡顿等情况,严重影响了用户体验。

可见,现有技术中在网速受限的情况下,无法保证前台应用程序的流畅运行。



技术实现要素:

本发明提供一种应用程序网速的控制方法及移动终端,解决现有技术中在网速受限的情况下,导致前台应用程序无法流畅运行的问题。

第一方面,本发明实施例提供了一种应用程序网速的控制方法,应用于移动终端,包括:

获取所述移动终端的实时网速;

确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速;

根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

第二方面,本发明实施例还提供了一种移动终端,包括:

实时网速获取模块,用于获取所述移动终端的实时网速;

前台应用确定模块,用于确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速;

网速调整模块,用于根据所述实时网速获取模块获取的所述移动终端的实时网速和所述前台应用确定模块确定的第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

本发明实施例公开的应用程序网速的控制方法,通过获取所述移动终端的实时网速,然后确定在所述移动终端前台运行的第一前台应用程序所占用所述实时网速,最后,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性。另一方面,通过动态调整后台应用程序所占用的实时网速,也保障了具有网速要求的后台应用程序的流畅运行。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明的实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一的应用程序网速的控制方法的流程图;

图2是本发明实施例二的应用程序网速的控制方法的流程图;

图3是本发明实施例三的应用程序网速的控制方法的流程图;

图4是本发明实施例四的移动终端的结构图之一;

图5是本发明实施例四的移动终端的结构图之二;

图6是本发明实施例四的移动终端的结构图之三;

图7是本发明实施例四的移动终端的结构图之四;

图8是本发明实施例五的移动终端结构图;

图9是本发明实施例六的移动终端结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一:

本实施例提供了一种应用程序网速的控制方法,如图1所示,该方法包括:步骤100至步骤120。

步骤100,获取所述移动终端的实时网速。

获取所述移动终端的实时网速具体为获取所述移动终端的所有TCP/IP网络端口的网速之和。本发明的实施例中,以获取下行网速为例说明获取移动终端的实时网速的具体方法。具体实施时,可以通过向每个TCP/IP网络端口发送测试数据包,申请下载数据;然后统计每个TCP/IP网络端口单位时间内下载数据量,将所有TCP/IP网络端口单位时间内下载数据量的总和,作为所述移动终端在当前网络连接状态下的最大实时网速。

步骤110,确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速。

首先,确定所述移动终端上运行的应用程序中占用所述实时网速的所有应用程序。具体实施时,当移动终端的应用程序调用操作系统提供的网络接口进行数据传输时,通过在所述网络接口注册监控事件或钩子函数,可以获得占用网速的应用程序的标识,如应用程序名,以及,该应用程序所占用的TCP/IP端口。通过调用操作系统提供的网络接口,还可以获取每个TCP/IP端口的网速。然后,在占用所述实时网速的所有应用程序中确定占用所述实时网速的在前台运行的第一前台应用程序。确定在移动终端前台运行的应用程序的具体方案参见现有技术。通过将确定的第一前台应用程序的标识与确定的占用所述实时网速的所有应用程序的标识进行匹配,即可以确定第一前台应用程序是否占用实时网速,也即确定了所述移动终端上运行的占用实时网速的第一前台应用程序。在实际应用中,每个应用程序可能在占用多个TCP/IP端口进行数据传输,每个应用程序占用的实时网速为该应用程序占用的所有TCP/IP端口的网速之和。通过计算所述第一前台应用程序占用的所有TCP/IP端口的网速之和得到所述第一前台应用程序所占用的实时网速。

步骤120,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

在确定占用实时网速的应用程序中存在第一前台应用程序之后,进一步根据所述移动终端的实时网速、所述第一前台应用程序所占用的实时网速判断是否需要对占用实时网速的后台应用程序进行控制,以减小后台应用程序占用的实时网速,将更多的实时网速分配给第一前台应用程序,以保证前台应用程序运行的流畅性,进一步提升了用户体验。具体实施时,可以通过暂停至少一个后台应用程序或者降低至少一个后台应用程序所占用的实时网速等方式减小后台应用程序占用的实时网速。

本发明实施例公开的应用程序网速的控制方法,通过获取所述移动终端的实时网速,然后确定在所述移动终端前台运行的第一前台应用程序所占用所述实时网速,最后,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性。另一方面,通过动态调整后台应用程序所占用的实时网速,也保障了具有网速要求的后台应用程序的流畅运行。

实施例二:

参见图2,本实施例提供了一种应用程序网速的控制方法,该方法包括:步骤200至步骤230。

步骤200,检测移动终端的网络连接状态是否发生变化,若是,执行步骤210,否则结束。

所述网络连接状态发生变化包括:开启移动网络、连接WIFI、从第一网络切换至第二网络中的至少一种。所述获取所述移动终端的实时网速的步骤之前,所述方法还包括:检测移动终端的网络连接状态;若检测到所述网络连接状态发生变化,则执行所述获取所述移动终端的实时网速的步骤。比如,当移动终端发生从GSM数据网络进入到无线网络,或移动终端开启4G网络,或移动终端接入网线等网络状态变化时,移动终端接入网络的网速通常会发生变化。移动终端的网络连接模块实时监测移动终端的网络连接状态,包括移动终端的网络接口接入网络设备的连接和断开状态、移动终端的网络设置的开启和关闭、连接状态等的网络连接状态的变化。

步骤210,获取所述移动终端的实时网速。

所述获取所述移动终端的实时网速包括:获取所述移动终端至少三个时间段内的网速;基于所述至少三个时间段内的网速,判断所述移动终端的网速是否稳定;若网速稳定,则将所述三个时间段内的网速的平均值确定为所述移动终端的实时网速;若网速不稳定,则将所述至少三个时间段中取值最大的网速确定为所述移动终端的实时网速。本发明的实施例中,以获取下行网速为例说明获取移动终端的实时网速的具体方法。具体实施时,可以通过向每个TCP/IP网络端口发送测试数据包,申请下载数据;然后统计每个TCP/IP网络端口单位时间内下载数据量,将所有TCP/IP网络端口单位时间内下载数据量的总和,作为所述移动终端在当前网络连接状态下的最大实时网速。优选的,重复测量所述最大实时网速的多次,以判断当前网络连接是否稳定,若多次测量得到的所述最大实时网速差值在预设范围内,说明当前网络连接稳定,否则,说明当前网络连接不稳定。在当前网络连接稳定的情况下,将所述多次测量得到的所述最大实时网速的平均值作为所述移动终端的实时网速;在当前网络连接不稳定的情况下,选择一个最大实时网速作为所述移动终端的实时网速。通过多次测量网速值,以判断网速是否稳定,并根据网速的稳定状态计算移动终端的实时网速,使得获取的实时网速更准确,进一步提高了网速控制的准确性。

步骤220,确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速。

确定所述移动终端上运行的前台应用程序所占用的实时网速的具体实施方式参见实施例一种的县官步骤,此处不再赘述。

具体实施时,可以建立TCP端口映射表,用于记录占用实时网速的应用程序,以及每个应用程序占用的TCP/IP端口,以及各TCP/IP端口对应的实时网速,如下表所示。

表1:TCP端口映射表

然后,在占用所述实时网速的所有应用程序中确定占用所述实时网速的第一前台应用程序。确定移动终端上运行的第一前台应用程序的具体方案参见现有技术。例如,在Android平台上,获取当前运行的应用堆栈,处于所述应用堆栈最顶层的应用程序如APP5就是第一前台应用程序。在移动终端运行的应用程序中,同一时间只有一个前台应用程序,可以有多个后台应用程序。最后,将获取的第一前台应用程序APP5的标识与确定的占用所述实时网速的所有应用程序的标识依次进行匹配,若匹配成功,则说明所述占用所述实时网速的应用程序中包含第一前台应用程序,所述第一前台应用程序即占用所述实时网速的前台应用程序。

步骤230,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

在确定占用实时网速的应用程序中存在第一前台应用程序之后,进一步根据所述移动终端的实时网速、所述第一前台应用程序所占用的实时网速判断是否需要对占用实时网速的后台应用程序进行控制,以减小后台应用程序占用的实时网速,将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性,进一步提升用户体验。具体实施时,可以通过暂停至少一个后台应用程序或者降低后至少一个台应用程序占用的实时网速等方式减小后台应用程序占用的实时网速。具体实施时,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速包括:将所述第一前台应用程序所占用的实时网速与预设第一网速阈值进行比较;若所述第一前台应用程序所占用的实时网速小于所述预设第一网速阈值,则调整至少一个后台应用程序所占用的实时网速。其中,所述预设第一网速阈值等于预设比例系数与所述移动终端的实时网速的乘积,所述预设比例系数大于0且小于1。为了合理的分配前后台应用程序占用的网速,首先对移动终端的每个应用程序设置期在前台运行时相应的预设第一网速阈值,如预设第一网速阈值=N*Vmax,当第一前台应用程序所占用的实时网速大于或等于相应的预设第一网速阈值时,不需要调整后台应用程序占用的实时网速,而是不断检测第一前台应用程序所占用的网速;当第一前台应用程序所占用的实时网速小于相应的预设第一网速阈值时,降低后台应用程序占用的网速。其中,N为预设比例系数,例如取值为0.8;Vmax为实时网速。在调整后台应用程序占用的实时网速时,为了充分利用网络速度,在保证第一前台应用程序流畅运行的前提下,使后台应用程序也得到适当的运行,采用逐个调整的方式。即对一个后台应用程序占用的实时网速进行调整后,重复检测第一前台应程序所占用的实时网速,若当第一前台应用程序所占用的实时网速达到了预设第一网速阈值,则不再调整其他后台应用程序占用的实时网速,否则,继续调整下一个后台应用程序占用的实时网速。

为了提高调整网速的效率,可以优先调整占用实时网速最多的后台应用程序所占用的实时网速。具体实施时,所述调整至少一个后台应用程序所占用的实时网速,包括:按照所占用实时网速由高到低的顺序,对在所述移动终端后台运行的至少一个后台应用程序进行排序;依次调整排序后的所述至少一个后台应用程序所占用的实时网速,直至所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值。所述依次调整排序后的所述至少一个后台应用程序所占用的实时网速,直至所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值,包括:依次降低排序后的所述至少一个后台应用程序所占用的实时网速;在调整所述至少一个后台应用程序所占用的实时网速的过程中,检测所述第一前台应用程序所占用的实时网速;若检测到所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值,则停止所述至少一个后台应用程序所占用的实时网速的调整。以表1中的应用程序为例,后台应用程序包括:APP1、APP2、APP3和APP4,占用网速的后台应用程序按照占用实时网速由高到低的顺序排列后,得到的后台应用程序序列为:APP1、APP2、APP4、APP3。然后,从前向后,优先调整第一个后台应用程序APP1占用的实时网速。之后,重新确定所述第一前台应用程序所占用的实时网速。若所述第一前台应用程序所占用的实时网速小于预设第一网速阈值,则继续调整后台应用程序APP2占用的实时网速。依此类推,每调整一个后台应用程序之后,重新确定所述第一前台应用程序所占用的实时网速,若所述第一前台应用程序所占用的实时网速小于预设第一网速阈值,则继续调整后台应用程序;若所述第一前台应用程序所占用的实时网速大于或等于预设第一网速阈值,则不需要再调整其他后台应用程序。直至所述第一前台应用程序所占用的实时网速大于或等于预设第一网速阈值。

优选的,为了保证用户体验,对于一些重要的后台应用程序,不能停止运行,可以通过在保证该后台应用程序占用进行可能少的实时网速的前提下,调整至少一个后台应用程序所占用实时网速。具体实施时,可以预先设置网速白名单,对于网速白名单中的应用程序保证其占用的最低实时网速,对于白名单之外的后台应用程序,通过将其暂停降低其占用的实时网速。所述依次降低排序后的所述至少一个后台应用程序所占用的实时网速,包括:对于排序后的所述至少一个后台应用程序中的每个应用程序,判断所述后台应用程序是否在预设的网速白名单中;若所述后台应用程序在预设的网速白名单中,则将所述后台应用程序所占用的实时网速的调整至预设第二网速阈值;若所述后台应用程序不在预设的网速白名单中,则暂停所述后台应用程序的运行。

仍以表1中所示的应用程序为例,其中:APP5为第一前台应用程序,APP1、APP2、APP4、APP3为后台应用程序,移动终端的实时网速为200KB/S,应用程序APP5的预设第一网速阈值为0.8×200=160KB/S,后台应用程序APP1在预设的网速白名单中。将后台应用程序按照所占用实时网速由高到低的顺序排列后,得到的后台应用程序序列为:APP1、APP2、APP4、APP3。然后,从前向后,优先调整第一个后台应用程序APP1占用的实时网速。因为APP1在预设的网速白名单中,因此,首先将后台应用程序APP1占用的实时网速降低至对应的预设第二网速阈值,如60KB/S。之后,重新确定所述第一前台应用程序所占用的实时网速,若所述第一前台应用程序所占用的实时网速为80KB/S,所述第一前台应用程序所占用的实时网速仍小于预设第一网速阈值,则继续调整下一个后台应用程序APP2。后台应用程序APP2不再预设的网速白名单中,因此,暂停后台应用程序APP2。之后,重新确定所述第一前台应用程序所占用的实时网速,若所述第一前台应用程序所占用的实时网速为135KB/S,所述第一前台应用程序所占用的实时网速仍小于预设第一网速阈值,则继续调整下一个后台应用程序APP4。依此类推,每暂停或降低一个后台应用程序占用的网速之后,重新确定所述第一前台应用程序所占用的实时网速,若所述第一前台应用程序所占用的实时网速小于预设第一网速阈值,则继续调整后台应用程序占用的实时网速;若所述第一前台应用程序所占用的实时网速大于或等于预设第一网速阈值,则不需要再调整其他后台应用程序。直至所述第一前台应用程序所占用的实时网速大于或等于预设第一网速阈值。

当所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值之后,结束网速调整。

通过优先调整占用实时网速最多的后台应用程序所占用的实时网速,进一步提高了调整网速的效率。

本发明实施例公开的应用程序网速的控制方法,通过检测移动终端的网络连接状态是否发生变化,若是则获取所述移动终端的实时网速,然后确定在所述移动终端前台运行的第一前台应用程序所占用所述实时网速,最后,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证前台应用程序运行的流畅性。通过预先设置网速白名单,不仅可以有效的保障前台应用程序的流畅运行,对于重要的后台应用程序,也能够保障其流畅运行。

实施例三:

参见图3,本实施例提供了一种应用程序网速的控制方法,该方法包括:步骤300至步骤350。

步骤300,检测移动终端的网络连接状态是否发生变化,若是,执行步骤310,否则结束。

检测移动终端的网络连接状态是否发生变化的具体实施方式参见实施例二,此处不再赘述。

步骤310,获取所述移动终端的实时网速。

的具体实施方式参见实施例二,此处不再赘述。

步骤320,确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速。

获取所述移动终端的实时网速的具体实施方式参见实施例二,此处不再赘述。

步骤330,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速的具体实施方式参见实施例二,此处不再赘述。

步骤340,检测在所述移动终端前台运行的应用程序的变化信息。

移动终端前台和后台运行的应用程序会动态改变,即:前台应用程序可能结束运行,或者转为后台运行;后台应用程序可能转为前台运行,或者结束运行,为了及时、准确地对应用程序的网速进行控制,需要实时监控所述应用程序的运行状态。所述根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速的步骤之后,还包括:检测在所述移动终端前台运行的应用程序的变化信息;若检测到所述变化信息为:在所述移动终端前台运行的应用程序由所述第一前台应用程序切换至第二前台应用程序,则执行所述获取所述移动终端的实时网速的步骤。

具体实施时,检测在所述移动终端前台运行的应用程序的变化信息可以采用现有技术,例如在安卓系统中,通过判断当前运行的应用堆栈中栈顶的应用程序是否变化,可以检测在所述移动终端前台运行的应用程序的变化信息。

步骤350,判断所述移动终端前台运行的应用程序是否由所述第一前台应用程序切换至第二前台应用程序,若是,则跳转至步骤310,否则结束。

当所述移动终端前台运行的应用程序是否所述第一前台应用程序切换至第二前台应用程序后,重新获取移动终端的实时网速,并根据当前运行的的前台应用程序和后台应用程序,重新进行网速调整。

通过优先调整占用实时网速最多的后台应用程序所占用的实时网速,进一步提高了调整网速的效率。

通过实时监控应用程序的变化信息,根据前台应用程序的变化信息重新获取移动终端的实时网速,以及后台运行的至少一个应用程序所占用的实时网速,以进行网速控制,可以及时、准确地对应用程序的网速进行控制,进一步提高了网速控制的准确性。

本发明实施例公开的应用程序网速的控制方法,通过检测移动终端的网络连接状态是否发生变化,若是则获取所述移动终端的实时网速,然后确定在所述移动终端前台运行的第一前台应用程序所占用所述实时网速,最后,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证前台应用程序运行的流畅性。通过预先设置网速白名单,不仅可以有效的保障前台应用程序的流畅运行,对于重要的后台应用程序,也能够保障其流畅运行。

实施例四:

参考图4,相应地,本发明实施例还公开了一种移动终端40,能实现实施例一至实施例三中的应用程序网速的控制方法的细节,并达到相同的效果。所述移动终端40,包括:

实时网速获取模块410,用于获取所述移动终端的实时网速;

前台应用确定模块420,用于确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速;

网速调整模块430,用于根据所述实时网速获取模块410获取的所述移动终端的实时网速和所述前台应用确定模块420确定的第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

本发明实施例公开的移动终端,通过获取所述移动终端的实时网速,然后确定在所述移动终端前台运行的第一前台应用程序所占用所述实时网速,最后,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性。

可选的,如图5所示,所述网速调整模块430包括:

判断单元4301,用于将所述第一前台应用程序所占用的实时网速与预设第一网速阈值进行比较,并判断所述第一前台应用程序所占用的实时网速是否小于预设第一网速阈值;

网速调整单元4302,用于若所述第一前台应用程序所占用的实时网速小于所述预设第一网速阈值,则调整至少一个后台应用程序所占用的实时网速;

其中,所述预设第一网速阈值等于预设比例系数与所述移动终端的实时网速的乘积,所述预设比例系数大于0且小于1。

具体实施时,所述移动终端还包括端口映射模块(图中未示出),用于通过建立端口映射表记录所述移动终端上运行的应用程序占用的网络端口,以及各网络端口被占用的实时网速,以及各应用程序的应用网速。可选的,所述端口映射模块还用于记录占用网络端口的应用程序为前台应用程序或网速白名单中的应用程序或普通后台应用程序。

可选的,如图6所示,所述网速调整单元4302包括:

排序子单元43021,用于按照所占用实时网速由高到低的顺序,对在所述移动终端后台运行的至少一个后台应用程序进行排序;

网速调整子单元43022,用于依次调整排序后的所述至少一个后台应用程序所占用的实时网速,直至所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值。

可选的,所述网速调整子单元43022用于:

依次降低排序后的所述至少一个后台应用程序所占用的实时网速;

在调整所述至少一个后台应用程序所占用的实时网速的过程中,检测所述第一前台应用程序所占用的实时网速;

若检测到所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值,则停止所述至少一个后台应用程序所占用的实时网速的调整。

可选的,所述依次降低排序后的所述至少一个后台应用程序所占用的实时网速,包括:

对于排序后的所述至少一个后台应用程序中的每个应用程序,判断所述后台应用程序是否在预设的网速白名单中;

若所述后台应用程序在预设的网速白名单中,则将所述后台应用程序所占用的实时网速的调整至预设第二网速阈值;

若所述后台应用程序不在预设的网速白名单中,则暂停所述后台应用程序的运行。

可选的,如图7所示,所述移动终端40还包括:

网络连接状态检测模块440,用于检测移动终端的网络连接状态;

第一跳转模块450,用于若检测到所述网络连接状态发生变化,则调用所述实时网速获取模块,以获取所述移动终端的实时网速。其中,所述网络连接状态发生变化包括:开启移动网络、连接WIFI、从第一网络切换至第二网络中的至少一种。

所述实时网速获取模块410包括:

网速获取单元,用于获取所述移动终端至少三个时间段内的网速;

网速判断单元,用于基于所述网速获取单元获取的至少三个时间段内的网速,判断所述移动终端的网速是否稳定;

第一网速确定单元,用于若网速稳定,则将所述三个时间段内的网速的平均值确定为所述移动终端的实时网速;

第二网速确定单元,用于若网速不稳定,则将所述至少三个时间段中取值最大的网速确定为所述移动终端的实时网速。

可选的,如图7所示,所述移动终端40还包括:

切换检测模块460,用于检测在所述移动终端前台运行的应用程序的变化信息;

第二跳转模块470,用于若所述切换检测模块460检测到所述变化信息为:在所述移动终端前台运行的应用程序由所述第一前台应用程序切换至第二前台应用程序,则执行所述获取所述移动终端的实时网速的步骤。

通过优先调整占用实时网速最多的后台应用程序所占用的实时网速,进一步提高了调整网速的效率。

通过实时监控应用程序的变化信息,根据前台应用程序的变化信息重新获取移动终端的实时网速,以及后台运行的至少一个应用程序所占用的实时网速,以进行网速控制,可以及时、准确地对应用程序的网速进行控制,进一步提高了网速控制的准确性。

本发明实施例公开的移动终端,通过检测移动终端的网络连接状态是否发生变化,若是则获取所述移动终端的实时网速,然后确定在所述移动终端前台运行的第一前台应用程序所占用所述实时网速,最后,根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性。另一方面,通过预先设置网速白名单,不仅可以有效的保障前台应用程序的流畅运行,对于重要的后台应用程序,也能够保障其流畅运行。

实施例五:

图8是本发明另一个实施例的移动终端的框图。图8所示的移动终端800包括:至少一个处理器801、存储器802、至少一个网络接口804和用户接口803。移动终端800中的各个组件通过总线系统805耦合在一起。可理解,总线系统805用于实现这些组件之间的连接通信。总线系统805除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图8中将各种总线都标为总线系统805。

其中,用户接口803可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板、触摸屏或者触控板等。本实施例通过触摸屏检测用户对桌面文件夹的触发操作,如点击、按压等。

可以理解,本发明实施例中的存储器802可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(ProgrammableROM,PROM)、可擦除可编程只读存储器(ErasablePROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(RandomAccessMemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(StaticRAM,SRAM)、动态随机存取存储器(DynamicRAM,DRAM)、同步动态随机存取存储器(SynchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleDataRate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(SynchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambusRAM,DRRAM)。本文描述的系统和方法的存储器802旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器802存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统8021和应用程序8022。存储器802还用于缓存上行信号和下行信号。

其中,操作系统8021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序8022,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序8022中。在本发明实施例中,通过调用存储器802存储的程序或指令,具体的,可以是应用程序8022中存储的程序或指令。通过用户接口803中的触摸屏检测用户使用应用程序的操作,并检测用户点击桌面文件夹的触发操作或打开桌面文件夹的触发操作,以及检测启动应用程序的触发操作。处理器801用于获取所述移动终端的实时网速;确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速;根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

上述本发明实施例揭示的方法部分可以应用于处理器801中,或者由处理器801实现。处理器801可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器801中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器801可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器802,处理器801读取存储器802中的用户对应用程序的使用次数,结合其硬件完成上述方法的步骤。

可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

可选地,处理器801还用于:将所述第一前台应用程序所占用的实时网速与预设第一网速阈值进行比较;若所述第一前台应用程序所占用的实时网速小于所述预设第一网速阈值,则调整至少一个后台应用程序所占用的实时网速;其中,所述预设第一网速阈值等于预设比例系数与所述移动终端的实时网速的乘积,所述预设比例系数大于0且小于1。

可选地,处理器801还用于:按照所占用实时网速由高到低的顺序,对在所述移动终端后台运行的至少一个后台应用程序进行排序;依次调整排序后的所述至少一个后台应用程序所占用的实时网速,直至所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值。

可选地,处理器801还用于:依次降低排序后的所述至少一个后台应用程序所占用的实时网速;在调整所述至少一个后台应用程序所占用的实时网速的过程中,检测所述第一前台应用程序所占用的实时网速;若检测到所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值,则停止所述至少一个后台应用程序所占用的实时网速的调整。

可选地,处理器801还用于:对于排序后的所述至少一个后台应用程序中的每个应用程序,判断所述后台应用程序是否在预设的网速白名单中;若所述后台应用程序在预设的网速白名单中,则将所述后台应用程序所占用的实时网速的调整至预设第二网速阈值;若所述后台应用程序不在预设的网速白名单中,则暂停所述后台应用程序的运行。

可选地,处理器801还用于:检测移动终端的网络连接状态;若检测到所述网络连接状态发生变化,则执行所述获取所述移动终端的实时网速的步骤。其中,所述网络连接状态发生变化包括:开启移动网络、连接WIFI、从第一网络切换至第二网络中的至少一种。

可选地,处理器801还用于:获取所述移动终端至少三个时间段内的网速;基于所述至少三个时间段内的网速,判断所述移动终端的网速是否稳定;若网速稳定,则将所述三个时间段内的网速的平均值确定为所述移动终端的实时网速;若网速不稳定,则将所述至少三个时间段中取值最大的网速确定为所述移动终端的实时网速。

可选地,处理器801还用于:检测在所述移动终端前台运行的应用程序的变化信息;若检测到所述变化信息为:在所述移动终端前台运行的应用程序由所述第一前台应用程序切换至第二前台应用程序,则执行所述获取所述移动终端的实时网速的步骤。

移动终端800能够实现前述实施例中移动终端实现的各个过程,为避免重复,这里不再赘述。

通过本发明的实施例,调整所述移动终端上运行的后台应用程序占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性,解决了现有技术中前台应用程序无法流畅运行的问题。通过优先调整占用实时网速最多的后台应用程序所占用的实时网速,进一步提高了调整网速的效率。通过预先设置网速白名单,不仅可以有效的保障前台应用程序的流畅运行,对于重要的后台应用程序,也能够保障其流畅运行。

实施例六:

图9是本发明另一个实施例的移动终端的结构示意图。具体地,图9中的移动终端可以为手机、平板电脑、个人数字助理(PersonalDigital Assistant,PDA)、或车载电脑等。

图9中的移动终端包括射频(Radio Frequency,RF)电路910、存储器920、输入单元930、显示单元940、处理器960、音频电路970、通信模块980和电源990。

其中,输入单元930可用于接收用户输入的触发操作,以及产生与移动终端的用户设置以及功能控制有关的信号输入。具体地,本发明实施例中,该输入单元930可以包括触控面板931。触控面板931,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板931上的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板931可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给该处理器960,并能接收处理器960发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

其中,显示单元940可用于显示由用户输入的信息或提供给用户的信息以及移动终端900的各种菜单界面。显示单元940可包括显示面板941,可选的,可以采用LCD或有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板941。

应注意,触控面板931可以覆盖显示面板941,形成触摸显示屏,当该触摸显示屏检测到在其上或附近的触摸操作后,传送给处理器960以确定触摸事件的类型,随后处理器960根据触摸事件的类型在触摸显示屏上提供相应的视觉输出。

触摸显示屏包括应用程序界面显示区及常用控件显示区。该应用程序界面显示区及该常用控件显示区的排列方式并不限定,可以为上下排列、左右排列等可以区分两个显示区的排列方式。该应用程序界面显示区可以用于显示应用程序的界面。每一个界面可以包含至少一个应用程序的图标和/或widget桌面控件等界面元素。该应用程序界面显示区也可以为不包含任何内容的空界面。该常用控件显示区用于显示使用率较高的控件,例如,设置按钮、界面编号、滚动条、电话本图标等应用程序图标等。

其中处理器960是移动终端900的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在第一存储器921内的软件程序和/或模块,以及调用存储在第二存储器922内的数据,执行移动终端900的各种功能和处理数据,从而对移动终端900进行整体监控。可选的,处理器960可包括一个或多个处理单元。

在本发明实施例中,通过调用存储该第一存储器921内的软件程序和/或模块和/或该第二存储器922内的数据,处理器960用于获取所述移动终端的实时网速;确定在所述移动终端前台运行的第一前台应用程序所占用的实时网速;根据所述移动终端的实时网速和所述第一前台应用程序所占用的实时网速,调整在所述移动终端后台运行的至少一个后台应用程序所占用的实时网速。

可选地,处理器960用于将所述第一前台应用程序所占用的实时网速与预设第一网速阈值进行比较;若所述第一前台应用程序所占用的实时网速小于所述预设第一网速阈值,则调整至少一个后台应用程序所占用的实时网速;其中,所述预设第一网速阈值等于预设比例系数与所述移动终端的实时网速的乘积,所述预设比例系数大于0且小于1。

可选地,处理器960还用于:按照所占用实时网速由高到低的顺序,对在所述移动终端后台运行的至少一个后台应用程序进行排序;依次调整排序后的所述至少一个后台应用程序所占用的实时网速,直至所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值。

可选地,处理器960还用于:依次降低排序后的所述至少一个后台应用程序所占用的实时网速;在调整所述至少一个后台应用程序所占用的实时网速的过程中,检测所述第一前台应用程序所占用的实时网速;若检测到所述第一前台应用程序所占用的实时网速大于或等于所述预设第一网速阈值,则停止所述至少一个后台应用程序所占用的实时网速的调整。

可选地,处理器960还用于:对于排序后的所述至少一个后台应用程序中的每个应用程序,判断所述后台应用程序是否在预设的网速白名单中;若所述后台应用程序在预设的网速白名单中,则将所述后台应用程序所占用的实时网速的调整至预设第二网速阈值;若所述后台应用程序不在预设的网速白名单中,则暂停所述后台应用程序的运行。

可选地,处理器960还用于:检测移动终端的网络连接状态;若检测到所述网络连接状态发生变化,则执行所述获取所述移动终端的实时网速的步骤。其中,所述网络连接状态发生变化包括:开启移动网络、连接WIFI、从第一网络切换至第二网络中的至少一种。

可选地,处理器960还用于:获取所述移动终端至少三个时间段内的网速;基于所述至少三个时间段内的网速,判断所述移动终端的网速是否稳定;若网速稳定,则将所述三个时间段内的网速的平均值确定为所述移动终端的实时网速;若网速不稳定,则将所述至少三个时间段中取值最大的网速确定为所述移动终端的实时网速。

可选地,处理器960还用于:检测在所述移动终端前台运行的应用程序的变化信息;若检测到所述变化信息为:在所述移动终端前台运行的应用程序由所述第一前台应用程序切换至第二前台应用程序,则执行所述获取所述移动终端的实时网速的步骤。

可见,通过本实施例的移动终端,通过调整所述移动终端上运行的后台应用程序占用的实时网速,以将更多的实时网速分配给第一前台应用程序,以保证第一前台应用程序运行的流畅性,解决了现有技术中前台应用程序无法流畅运行的问题。通过优先调整占用实时网速最多的后台应用程序所占用的实时网速,进一步提高了调整网速的效率。通过预先设置网速白名单,不仅可以有效的保障前台应用程序的流畅运行,对于重要的后台应用程序,也能够保障其流畅运行。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的移动终端的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于移动终端实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1