数据流量的处理方法、装置、终端及计算机存储介质与流程

文档序号:19903071发布日期:2020-02-11 14:07阅读:176来源:国知局
数据流量的处理方法、装置、终端及计算机存储介质与流程

本发明涉及通信技术领域,尤其涉及一种数据流量的处理方法、装置、终端及计算机存储介质。



背景技术:

随着智能终端的普及,以及智能终端的多种应用程序广泛使用,且在一些应用程序的被使用过程中需要连接网络,然而在没有wifi的情况下,人们不得不使用运营商的移动数据流量来连接并访问网络,从而会对智能终端产生流量资费,目前市面上的流量监控软件大同小异,现有的流量监控软件虽然会将每个应用程序所消耗的移动流量统计出来并显示统计结果,但是相关技术中都是对单个应用程序进行数据流量统计,这种数据流量的统计结果的零散,即没有归总和分类等,用户根据统计结果中快速做出流量控制策略的参考性不大,用户体验不佳。



技术实现要素:

本发明实施例提供了一种数据流量的处理方法、装置、终端及计算机存储介质。

本发明实施例的技术方案是这样实现的:

本发明实施例提供了一种数据流量的处理方法,应用于终端,所述方法包括:

统计所述终端的应用程序所产生的第一类数据流量;

针对所述应用程序进行分类;

按照应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序处理。

本发明实施例提供了一种数据流量的处理装置,应用于终端,所述装置包括:

统计模块,用于统计所述终端的应用程序所产生的第一类数据流量及针对所述应用程序进行分类;

排序模块,用于按照应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序处理。

本发明实施例还提供一种终端,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中所述处理器用于运行所述计算机程序时,实现如上述所述的数据流量的处理方法。

本发明实施例还提供一种计算机存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现如上述所述的数据流量的处理方法。

上述实施例所提供的数据流量的处理方法、装置、终端及计算存储介质,通过统计终端应用程序所产生的第一类数据流量,以及针对所述应用程序进行分类,并按照应用程序的分类,对同一类别的应用程序的第一类数据流量进行排序处理。这里,由于会对同一类别的应用程序的第一类数据流量进行排序,实现对应用程序进行分类后的流量管理,相对于将所有的应用程序统计流量后,呈现零散的统计结果而言,本发明实施例对同一类的应用程序的第一类数据流量进行排序得到一个分类的统计结果,由于在统计结果中对应用程序进行了分类管理,可以进行分类查看,使得管理起来更加方便,进而帮助用户快速得到应用程序流量管理的有用信息,为用户快速做出流量控制策略提供了有利的参考;而且,由于在统计结果中对应用程序进行了分类管理,可以快速且清楚地知晓每个应用程序所产生的流量在同一类别的应用程序中的流量排行情况,如此,针对完成同类功能的同类应用程序,基于第一类数据流量的高低排序,选择性的关闭第一类数据流量较高的应用程序,减少第一类数据流量较高的应用程序的优先使用,从而减少第一类数据流来的消耗;从而减少第一类数据流量较高的应用程序的流量费用,以提高用户的设备使用满意度。

附图说明

图1为本发明实施例所提供的数据流量的处理方法流程示意图;

图2为本发明实施例所提供的数据流量的处理装置功能结构示意图;

图3为本发明具体实施例所提供的数据流量的处理装置功能结构示意图;

图4为本发明具体实施例所提供的数据流量的处理方法的流量示意图;

图5为本发明具体实施例所提供的数据流量的处理方法的另一流程示意图;

图6为本发明具体实施例所提供的应用程序分类方法流程示意图;

图7a为本发明具体实施例所提供的数据流量的处理场景下界面1的示意图;

图7b为本发明具体实施例所提供的数据流量的处理场景下界面2的示意图;

图7c为本发明具体实施例所提供的数据流量的处理场景下界面3的示意图;

图8为本发明具体实施例所提供的数据流量的处理的另一场景示意图;

图9为本发明实施例所提供的网关的硬件结构示意图。

具体实施方式

本发明实施例提供一种数据流量的处理方法,通过统计终端应用程序所产生的第一类数据流量,及针对所述应用程序进行分类,并按照应用程序的分类,对同一类别的应用程序的第一类数据流量进行排序处理。这里,由于会对同一类别的应用程序的第一类数据流量进行排序,实现对应用程序进行分类后的流量管理,相对于将所有应用程序统计流量后,呈现零散的统计结果而言,本发明实施例对同一类的应用程序的第一类数据流量进行排序得到一个分类的统计结果,由于在统计结果中对应用程序进行了分类管理,可以进行分类查看,使得管理起来更加方便,进而帮助用户快速得到应用程序流量管理的有用信息,为用户快速做出流量控制策略提供了有利的参考;而且,由于在统计结果中对应用程序进行了分类管理,可以快速且清楚地知晓每个应用程序所产生的流量在同一类别的应用程序中的流量排行情况,从而有利于用户对同类应用程序作出相应的流量管理策略,进而更好地管理和控制同一类应用程序中不同应用程序的流量使用,在更好地管理和控制流量使用的情况下可以节省流量资费;最终提高了用户体验。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明,应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例提供一种数据流量的处理方法,应用于终端,图1为本发明实施例所提供的数据流量的处理方法的流程示意图,如图1所示,所述方法包括以下步骤:

步骤101:统计所述终端的应用程序所产生的第一类数据流量。

具体地,终端统计所述终端的应用程序上网所产生的第一类数据流量,这里,应用程序上网所产生的第一类数据流量可为终端通过移动通信网络上网所产生的移动数据流量。这里,所述移动通信网络包括移动基站、传播媒介、交换设备、接收终端等,在本实施例中,所述第一类数据流量可以理解为终端通过通用分组无线服务技术(gprs,generalpacketradioservice)、时分同步码分多址(td-scdma,timedivision-synchronouscodedivisionmultipleaccess)、高速下行分组接入(hsdpa,highspeeddownlinkpacketaccess)、宽带码分多址(wcdma,widebandcodedivisionmultipleaccess)、cdma2000、长期演进(lte,longtermevolution)、以及第五代无线通信技术5g等移动通信技术上网或使用相关数据增值业务所产生的移动数据流量。

在一些实施方式中,所述终端的应用程序上网所产生的第一类数据流量可以理解为,终端通过移动通信网络上网所产生的需要付费的移动数据流量,具体地,所述终端与运营商签订针对所述应用程序的预定流量的移动数据流量包,只有在超过该预定流量的移动数据流量包之外再产生的移动数据流量才认为是需要付费的移动数据流量。总的来说,所述终端的应用程序上网所产生的第一类数据流量,可以理解的是,终端中所述应用程序所产生的需要付费的移动数据流量。

在另一些实施方式中,所述步骤101,包括:统计所述终端的应用程序的总数据流量;确定所述终端的应用程序所产生的第二类数据流量;根据所述总数据流量及所述第二类数据流量,计算出所述第一类数据流量。

这里,终端统计所述终端的应用程序的总数据流量,可以理解为,终端通过统计所述应用程序的数据收发接口的数量流量来统计所述应用程序所产生的总的数据流量,这里,总的数据流量是指所述应用程序在任何网络环境下所接受和发送的数据量。

所述第一类数据流量和所述第二类数据流量为不同类型的数据流量;所述第一类数据流量和所述第二类数据流量的差异可包括以下至少之一:

使用的通信协议或通信制式不同;例如,利用移动通信技术(例如,2g、3g、4g或5g)的数据流量和利用wifi传输产生的数据流量可以分别对应于上述第一类数据流量和第二类数据流量;

数据流量的计费方式不同;例如,第一计费方式:按照数据流量的可使用时长进行计费;第二计费方式:按照数据流量所对应的数据量进行计费;例如,利用wifi传输的数据流量是按照wifi使用的账号的可使用时长进行计费的,而手机无线连接到基站使用的数据流量可能是按照传输的数据量进行计费的。以上,第一计费方式和第二计费方式仅是举例,具体实现时,数据流量的计费方式还可包括:其他计费方式,例如,第三计费方式;所述第三计费方式时按照数据传输速率或传输带宽进行计费的;

接入设备不同,例如,wifi使用的接入设备可能是公司或家庭等用户所持有的wifi设备;而利用手机或平板等连接到基站传输的数据流量,显然接入设备是基站、射频拉远单元等。接入设备的不同可包括:接入设备的归属不同,例如,wifi设备归属用户,基站归属于通信运营商;接入设备的连接属性不同,例如,wifi设备仅对部分用户开放,是一种私有接入设备;而基站可以对使用该运营商的所有用户开放,故基站可认为是一种公共接入设备;接入设备所遵循的通信协议不同。

总之,所述第一类数据流量和所述第二类数据流量的不同有多种,不限于上述任意一种。

进一步地,可以理解的是,所述终端分别统计各应用程序所产生的总数据流量,例如,终端统计a应用程序所产生的总数据流量为300mb,而终端统计b应用程序所产生的总数据流量为500mb,相应地,根据终端分别统计的各应用程序的总数据流量,再分别确定出各应用程序所产生的第一类数据流量,以下有关数量流量的统计的方案中,均以是对单个的应用程序所产生的流量进行单独统计的。以安装安卓android系统的终端为例,终端统计所述终端系统中应用程序的总数据流量,可以通过android系统的流量监控类来实现对所述应用程序的流量统计的操作,例如,通过在android2.2版本中加入trafficsates类来实现对所述应用程序的流量统计的操作,其实trafficsates类自身也是依靠读取linus下保存流量信息的文件并进行解析来实现的。android.net.trafficstats类中提供了多种静态方法,具体地,所述应用程序的流量消耗可以通过trafficstats类的getuidrxbytes(intuid)和getuidtxbytes(intuid)接口来统计应用程序的发送和接收的数据,且uid通过packagemanager的getpackageinfo接口获取指定应用包名的uid属性,以此来统计应用程序的总数据流量。需要说明的是,在其他的系统中,例如,ios系统、symbian塞班系统等,也是通过加入相应的流量监控程序来实现对所述应用程序的流量统计的操作,即利用相应的流量监控程序来读取应用程序的收发接口的数据流量来实现对所述应用程序的总数据流量的统计。

这里,确定所述终端的应用程序所产生的第二类数据流量,可以理解为,所述终端确定所述应用程序在局域网内所产生的局域网数据流量,例如,所述终端确定所述应用程序在热点连接的情况下所产生的数据流量,其中,所述热点为所述局域网的一个无线接入点,例如无线路由器,通常地,通过打开终端wifi设备连接预定的热点所产生的数据流量。具体地,确定所述终端的应用程序所产生的第二类数据流量,包括:记录第一时刻的总数据流量,其中,所述第一时刻为所述终端与预定热点建立连接的时刻;记录第二时刻的总数据流量,其中,所述第二时刻为:所述终端与所述预定热点断开所述连接的时刻;根据所述第一时刻的总数据流量和所述第二时刻的总数据流量,确定第二类数据流量。总的来说,所述终端的应用程序上网所产生的第二类数据流量,可以理解为,终端中所述应用程序所产生的局域网数据流量,且不属于移动数据流量付费范畴。

具体地,在第一时刻终端与预定热点建立连接之后,终端可以通过预定热点连接到网络,并通过该网络与其他设备进行数据交互。若终端有与热点建立连接,则优先使用热点进行数据传输,不使用第一类数据流量进行数据传输。

所述第二时刻晚于所述第一时刻。在第二时刻,终端与预定热点断开连接,表示终端无法通过预定热点连接到网络。例如,终端离开预定热点的覆盖范围,自然就与预定热点断开连接。若用户指示断开与预定热点的连接,所述终端也会断开与预定热点的连接。

此处的预定热点,可为wifi路由器,或者,作为热点的其他终端设备。该预定热点可为:终端所在位置所对应范围内的热点,也可以是指示连接的热点,还可以是终端设备设置为自动连接的热点,所述预定热点的确定方式和种类很多,不局限于上述任意一种。

在另一实施方式中,所述步骤101中统计所述第一类数据流量,还可以理解为,包括统计所述终端与运营商确定签订的针对所述应用程序的预定流量的移动数据流量包以外的移动数据流量,但不包括局域网数据流量,具体地,基于统计的所述应用程序的总流量与所述应用程序在热点连接情况下的第二类流量,计算出所述应用程序所消耗的移动数据流量,判断该移动数据流量是否大于预定流量的移动数据流量包的流量值,若大于,则超出的部分记录为所述应用程序的第一类数据流量,若不大于,则作为历史移动数据流量存储在流量数据库中,以便下一次统计时进行累加。

进一步地,所述统计所述终端的应用程序所产生的第一类数据流量包括:从所述终端的开机时刻开始统计的总数据流量;若所述开机时刻位于历史统计周期内,结合所述开机时刻开始统计的总数据流量及历史统计周期的总数据流量,计算得到当前统计周期的总数据流量;根据当前统计周期的总数据流量,确定所述终端的应用程序在所述当前统计周期内所产生的第一类数据流量。

这里,所述统计周期可以是一个预定的时间周期,例如,一年、一个月、一个星期等,即可以是任意的长度的时间段作为一个流量统计的统计周期,通常地,该统计周期由运营商指定,目前主要以一个月作为一个统计周期。这里,统计周期是通过设置在终端的定时器来实现,定时器在统计周期结束后从零开始计时;这里的定时器可以按照以下两种方式开始计时,一种是按照特定的时间来开始计时,另一种是按照指定的预定单位的时间数(例如,毫秒数)后调用计时函数开始计时。通常地,若是以月为周期,定时器按照内置于终端的日历时间中每个月第一个时刻开始计时,也就是上述的第一种计时方式开始计时,到本月的最后一个时刻结束一个周期。这里,本月的第一个时刻和最后一个时刻是根据定时器的灵敏度来确定的,例如可以是秒为计时单位进行计时,如,以每月第一天的零点的零一秒作为每月的第一个时刻,相应地,以每月最后一天的24点59秒为每月的最后一个时刻,还可以毫秒为计时单位进行计时。

需要说明的是,在一些实施方式中,所述终端关机或重启会将统计的流量数据进行清零处理,这时,终端在接收到关机或重启指令后,应当预先保存已统计的数据流量信息,以便统计周期内对所统计的数据流量进行累加即可。请继续以android系统为例,在android系统中,通过trafficstats统计的数据流量信息在终端重启的时候会被清空,所以,如果要对数据流量信息进行持续的统计需要将数据流量信息保存到数据库中,这样,终端在统计数据流量时将保存的数据流量信息读出并进行累加即可。这里,数据流量信息,包括:数据流量值及所述数据流量对应的应用程序。

这里,从所述终端的开机时刻开始统计总数据流量,具体地,终端在检测到开机指令后,启动流量统计流程,开始进行流量统计。

终端检测到开机指令之后,会完成对终端内的部分功能器件的上电,启动基本输入输出(bios),并启动操作系统。所述启动流量统计流程可为在终端启动操作系统之后,自动启动所述流量统计流程。例如,终端的操作系统被启动之后,操作系统内进行流量统计的插件被自动启动,或者,进行流量统计的应用程序被启动,从而开始进行流量统计。

为了实现精确的流量统计,启动流量统计流程可与终端的网络功能开启关联,即在开启网络连接之前或使用网络连接之前,就完成所述流量统计的启动。此处的网络连接可包括:移动数据的网络连接和/或热点的网络连接。

这里,所述开机时刻位于历史统计周期内,结合所述开机时刻开始统计的总数据流量及历史统计周期的总数据流量,计算得到当前统计周期的总数据流量。具体地,所述终端判断在所述历史统计周期内是否检测到开机指令,这里历史统计周期是指当前统计周期之前的统计周期,若所述开机时刻位于历史统计周期内,也就是说在当前统计周期中不存在开机作业,那么,当前统计周期的总数据流量为开机时刻开始统计的总数据流量减去历史统计周期的总流量,这里,需要说明的是,在终端检测到定时器重新开始计时,也就是一个统计周期结束后,将开机时刻到定时器重新开始计时时刻统计的所述应用程序的数据流量作为历史统计周期的总数据流量,由此,可以计算出当前统计周期的总数据流量。

在另一实施方式中,若所述开机时刻不在历史统计周期内,结合当前的数据流量及当前统计周期的历史数据流量的累积计算出当前统计的总数据流量。可以理解的是,终端每检测到一次关机或重启指令,均会将当前的数据流量的流量信息保存在流量数据库中,作为历史数据流量,以便后续的流量计算。

需要补充的是,若在当前统计周期中存在第二类数据流量,或存在所述终端与运营商确定签订的针对所述应用程序的预定流量的移动数据流量包以内的数据流量时,仍需将这些数据流量统计出来后,再根据当前统计周期内所述应用程序所产生的总数据流量与当前统计周期内所述应用程序所产生的上述的移动数据流量,计算得到所述应用程序的第一类数据流量。

另外,还需要补充的是,所述统计所述终端的应用程序所产生的第一类数据流量的触发,可以是通过预定时间触发终端统计所述终端的应用程序所产生的第一类数据流量,例如,每隔1s并进行统计所述终端的应用程序所产生的第一类数据流量的操作;还可以是终端检测到有流量产生时,进行统计所述终端的应用程序所产生的第一类数据流量的操作,或者在检测到预定数量的流量变化(例如设置10mb为预定的流量变化值)时,才进行统计所述终端的应用程序所产生的第一类数据流量的操作。这样,在流量变化时才去触发统计,可以节省终端的能耗。

步骤102:针对所述应用程序进行分类。

这里,所述步骤102包括以下步骤:

终端获取所述应用程序的标识信息;根据所述应用程序的标识信息,确定所述应用程序的分类。

具体地,所述标识信息是指用于标识所述应用程序类别的信息,可用于区分不同的应用程序的类别。其中,应用程序的标识信息可以是被封装在应用程序的对象信息中以特定字符串信息来表示所述应用程序的标识信息,还可以是通过用户输入的用于区别应用程序的分类标识来确定所述应用程序的标识信息。

具体地,在一实施方式中,可以将终端的应用程序分成至少以下几类:系统应用程序和非系统应用程序(即第三方应用),其中,系统应用程序是指终端在出厂前预先安装在所述终端总的应用程序。具体地,系统应用程序又可以分为非自研应用,自研应用程序,其中,自研应用程序是指所述终端所在厂家自行研发的应用程序,并在出厂前安装在所述终端中的这一类应用程序,相应地,非自研应用程序,是不属于所述终端所在厂家自行研发的,但在出厂前安装在所述终端的这一类应用程序。若按照本实施例的分类,具体的分类方式为:终端获取应用程序的info对象,例如,info.applicationinfo.flags&applicationinfo.flag_system,由此可以判断该应用是否属于系统应用,如果属于系统应用,则再根据info.packagename中是否包含自研应用固定字符串“xxx”来判断是否属于自研应用,如果是自研应用,将info加入到selfinfolist中,否则为非自研应用,可直接将这类应用程序的info加入到sysinfolist中,在本实施例中,该类应用程序应当理解为,系统应用程序中非自研应用类;如果是非系统应用(即第三方应用),则将info加入到thirdinfolist中。这里,需要说明的是,所述字符串“xxx”通常表示厂家的名称。

在另一实施方式中,所述终端将应用程序分成至少以下几类:社交类应用程序、游戏类应用程序、金融类应用程序、视听类应用程序等,用户自定的各类应用程序。这里,终端可以根据软件名称智能的判断所述应用程序属于哪一个类应用程序,或者还可以根据用户输入的针对所述应用程序的分类标识来判断所述应用程序属于哪一类应用程序。例如终端接收用户针对所述应用程序输入的分类标识符,对所述应用程序进行自定义的分类,例如在对应用程序进行分类时,接收了用户针对所述第一类应用程序的分类标识符“s”,则表示该应用程序为社交类应用程序,再如接收了用户针对所述第二类应用程序的分类标识符“g”,则表示该应用程序为游戏类应用程序。上述分类标识符为用户自行定义的,除了可以用字母表示之外,还可以用数字或其他符号表示。

在其他实施方式中,也可以根据应用程序的其他参数进行分类,例如,根据应用程序的使用频率等。具体地,如按照所述应用程序的使用频率由高到低可以对应用程序分成多个类,具体的分类方式可以为:通过预先设定使用频率范围确定所述应用程序的分类。假设,按照所述应用程序的使用频率由高到低对应用程序分成三类,分别为“使用率高”“使用率一般”以及“使用率低”三类,则可以设定使用频率范围在80%以上则归为“使用率高”的一类,使用频率在50%-80%之间则归为“使用率一般”的一类,使用率在50%以下则归为“使用率低”的一类。在确定所述应用程序的分类时,通过统计所述应用程序的使用频率值,比较所述使用频率值与预先设定使用频率范围的匹配关系,从而确定所述应用程序的分类,例如当统计所述应用程序的使用频率为85%时,则确定所述应用程序为“使用率高”的一类。

步骤103:按照应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序处理。

具体地,基于对每个应用程序的第一类数量流量的统计结果及应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序处理。

具体地,根据排序的结果,依次显示同一类应用程序的图标。这里,根据所述排序的结果,在终端的界面上可依次显示同一类应用程序的图标。进一步地,可按照类别依次显示,例如在前显示系统类应用软件,在后显示非系统类应用软件。

进一步地,在一实施例方式中,可以根据用户的设置需求,设置预定类别的应用程序的显示位置,例如,可以将预定类别的应用程序显示至流量排行榜的特定显示位置(如排行榜的第一位置),其他类别则默认依次显示。

进一步地,在另一实施方式中,所述终端还可以将特定应用程序的对应图标显示在目标位置。具体地,所述终端根据设置,将特定应用程序的对应图标显示到总的流量统计列表的目标位置;或者,将特定应用程序的对应图标显示到所在应用类别的流量统计列表的目标位置;或者,将特定应用程序的对应图标及第一类数据流量信息显示在显示屏的指定位置。这里,所述特定的应用程序可以是用户所关注的应用程序,所述目标位置可以是所述统计列表的第一个位置,或最后一个位置,或者显示屏的中间位置。从而可以方便用户查看自己所关注的应用程序的数据流量情况。

需要补充的是,在统计所述终端的应用程序所产生的第一类数据流量之前,所述方法还包括:获取所述应用程序的上网权限信息,根据所述应用程序的上网权限信息,判断所述应用程序是否具备上网权限,若具备上网权限,则执行统计所述应用程序所产生的第一类数据流量的步骤,否则,不执行所述统计所述应用程序所产生的第一类数据流量的步骤。这样,可以预先排查出不具备上网权限的应用程序,无需对这些应用程序也进行数据流量的统计,节省了终端的资源及能耗。

进一步地,在一些实施方式中,针对特殊的应用程序,例如,终端与运营商签订了关于针对该应用程序免流量的协议的这类应用程序,在统计所述终端的应用程序所产生的第一类数据流量之前,所述方法还包括以下步骤:

第一步:获取所述应用程序的标识信息;

这里,所述标识信息可以用来标识应用程序的协议信息,也可以用来标识应用程序的来源信息。

第二步:识别所述应用程序的标识信息;根据识别的标识信息判断所述应用程序是否属于特殊的应用程序。

第三步:若属于特殊的应用程序,则不执行所述统计所述应用程序所产生的第一类数据流量的步骤;否则,执行所述统计所述应用程序所产生的第一类数据流量的步骤。

具体地,例如,腾讯的大王卡套餐业务作为终端与运营商签订的关于针对腾讯的所有应用程序免流量的协议,也就是说所有腾讯的应用程序所产生的移动数据流量均不需要付费。终端获取所述应用程序的标识信息,这里,所述标识信息为应用程序的包名信息中是否包含有“tencent”字符串,识别所述标识信息,判断所述应用程序是否属于腾讯的应用程序,若属于,则不执行所述统计所述应用程序所产生的第一类数据流量的步骤;否则,执行所述统计所述应用程序所产生的第一类数据流量的步骤。这样,排查出免流量的应用程序,无需再对这些应用程序进行数据流量的统计,同样也节省了终端的资源及能耗。

需要补充的是,终端根据排序的结果,对所述应用程序进行控制处理。这里,终端根据排序的结果,对所述应用程序进行控制处理,具体可以包括:终端根据排序的结果,对第一类数据流量的总排行中排在预定位置的应用程序执行预设操作,或者对同一类应用程序的第一类数据流量的排行中排在预定位置的应用程序执行预设操作。

例如,若对第一类数据流量按照从高到低排序,对第一类数据流量的总排行中排在第一位、第二位的应用程序执行预设操作,或者,对同一类应用程序的第一类数据流量的排行中排在第一位的应用程序执行预设操作。

这里,所述对所述应用程序执行预设操作,包括:对应用程序进行流量提醒,其中,所述提醒处理包括:由终端输出的针对所述应用程序的控制提示信息,这里的提示信息包括但不限于以下至少之一:语音提示信息、文本提示信息、震动提示。例如,当所述应用程序再次产生第一类数据流量时,终端发出提示信息,或者在终端的流量监控页面输出提示对话框,将文本提示信息显示在所述提示对话框中。

这里,所述对所述应用程序执行预设操作,还包括:对应用程序进行流量的使用控制,具体地,终端输出控制指令限制所述应用程序的第一类数据流量的使用,例如,终端产生关闭指令以关闭所述应用程序。进一步地,所述对应用程序进行流量的使用控制,还包括:为应用程序提供流量使用的选择,具体地,在终端的界面上输出针对应用程序的流量控制使用选择键,以供用户选择是否继续使用所述应用程序的第一类数据流量,这里,基于作用于“使用”或“不使用”的虚拟控件的用户输入,选择是否停止所述应用程序的第一类数据流量的使用。

本发明实施例提供数据流量的处理方法、装置、终端及计算存储介质,通过统计终端应用程序所产生的第一类数据流量,以及针对所述应用程序进行分类,并按照应用程序的分类,对同一类别的应用程序的第一类数据流量进行排序处理。这里,由于会对同一类别的应用程序的第一类数据流量进行排序,实现对应用程序进行分类后的流量管理,相对于将所有的应用程序统计流量后,呈现零散的统计结果而言,本发明实施例对同一类的应用程序的第一类数据流量进行排序得到一个分类的统计结果,由于在统计结果中对应用程序进行了分类管理,可以进行分类查看,使得管理起来更加方便,进而帮助用户快速得到应用程序流量管理的有用信息,为用户快速做出流量控制策略提供了有利的参考;而且,由于在统计结果中对应用程序进行了分类管理,可以快速且清楚地知晓每个应用程序所产生的流量在同一类别的应用程序中的流量排行情况,如此,针对完成同类功能的同类应用程序,基于第一类数据流量的高低排序,选择性的关闭第一类数据流量较高的应用程序,减少第一类数据流量较高的应用程序的优先使用,从而减少第一类数据流量的消耗;从而减少第一类数据流量较高的应用程序的流量费用,以提高用户的设备使用满意度。

进一步地,本发明实施例还提供了一种数据流量的处理装置,图2为本发明实施例所提供的数据流量的处理装置功能结构示意图,如图2所示,所述装置包括:统计模块21和排序模块22;

所述统计模块21,用于统计所述终端的应用程序所产生的第一类数据流量及针对所述应用程序进行分类;

所述排序22,用于按照应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序。

在一实施方式中,所述装置还用于:根据排序的结果,依次显示同一类应用程序的图标。

在一实施方式中,所述统计模块21具体用于:

统计所述终端的应用程序的总数据流量;

确定所述终端的应用程序所产生的第二类数据流量;

根据所述总数据流量及所述第二类数据流量,计算出所述第一类数据流量。

在一实施方式中,所述统计模块21还用于:

记录第一时刻的总数据流量,其中,所述第一时刻为:所述终端与预定热点建立连接的时刻;

记录第二时刻的总数据流量,其中,所述第二时刻为:所述终端与所述预定热点断开所述连接的时刻;

根据所述第一时刻的总数据流量和所述第二时刻的总数据流量,确定所述第二类数据流量。

在一实施方式中,所述统计模块21还用于:

从所述终端的开机时刻开始统计总数据流量;

若所述开机时刻位于历史统计周期内,结合所述开机时刻开始统计的总数据流量及历史统计周期的总数据流量,计算得到当前统计周期的总数据流量;

根据当前统计周期的总数据流量,确定所述终端的应用程序在所述当前统计周期内所产生的第一类数据流量。

在一实施方式中,所述统计模块21还用于:,获取所述应用程序的标识信息;根据所述应用程序的标识信息,确定所述应用程序的分类。

在一实施方式中,所述装置还用于:将特定应用程序的对应图标显示在目标位置。

进一步地,基于上述实施方式所提供的方法,还提供了一具体实施方式,仍以安装有安卓系统的终端为例,在本实施例中,以下所述的数据流量应当理解为上述所述的第一类数据流量;以下的流量数据应当理解为上述的数据流量信息中的数据量信息,也就是流量消耗的数量;以下的wifi接入时可以理解为上述的第一时刻,以下的wifi断开时可以理解为上述的第二时刻。以下的任何动态例如,开机、关机、wifi的接入、断开等都将通知(以下称之为注册)所述终端的处理,并记录下关于开机、关机、wifi的接入、断开等的操作标识、操作时间及该时刻的当前数据流量的流量数据;以下以自然月作为统计周期,对每个月的各应用程序进行第一类数据流量的统计。

本实施例提供的数据流量的处理方法流程如下:

终端对系统中应用程序的数据流量消耗进行分类排行,数据流量信息按月进行统计。

其中,统计的所述应用程序的数据流量只包含移动数据流量,例如2/3/4/5g数据流量,不包含wifi流量。

其中,所述应用程序的数据流量通过trafficstats类的getuidrxbytes(intuid)和getuidtxbytes(intuid)接口来统计应用的发送和接收的数据,uid通过packagemanager的getpackageinfo接口获取指定应用包名的uid属性,以此进行应用程序的数据流量的统计。

进一步地,由于trafficstats类所统计到的数据在关机时被清空,因此在所述应用程序的数据流量统计过程中,应当记录所述终端的关机、月份变化、流量变化以及wifi状态切换等,在终端关机时,如果是本月关机标识位为false,则用当前的总流量减去上次开机到本月起始时间的总流量,并将该计算出的流量保存到本月历史流量数据中,置本月关机标识位为false,否则本月关机标志位为true,则统计本次的流量数据叠加到本月历史流量数据中。在月份变化时,保存当前的流量数据并清空历史流量数据和已使用wifi数据;同时在终端开机时,保存开机时的时间。在wifi接入时记录此时的流量数据值,在wifi断开时统计当前的流量数据值并减去之前存储的流量数据值,叠加到已使用wifi数据中,将相关的应用程序流量数据信息保存到所述应用程序的流量数据库中。

进一步地,所述流量数据库字段包括应用程序包名/类名componentname、上次开机到本月初流量startdata、最近一次开机时间closeboottime、已使用流量useddata、本月关机标识hasshutdown、已使用wifi数据wifidata。

进一步地,需要说明的是,终端每隔预定时间将对所述应用程序进行数据流量的刷新统计,统计当前时刻的各应用程序的数据流量。每当收到流量变化广播刷新数据时,根据最近一开开机时间来判断是在本月起始时间的流量再减去wifi已使用流量;如果最近一次开机在本月起始时间之后,则本月的第一数据流量的消耗为本月的历史流量加上当前统计到的流量再减去wifi已使用流量。对所有具有internet权限的应用程序执行上述操作后,封装各应用程序的第一类数据流量信息到info对象中。根据应用程序类型将info对象保存到相关info列表中,对不同的info列表按照各应用程序的本月第一类数据流量消耗进行从高到底的排序,分类按照顺序分别将不同类别的应用程序的第一数据流量排行结果显示在相关分类的视图中,以便用户根据分类排行能快速得到关于流量管理的有用信息,为用户快速做出流量控制策略提供了有利参考;而且由于在流量统计中对应用程序进行了分类管理,可以快速且清楚地知晓每个应用程序所产生的流量在同一类别的应用程序中的流量排行情况,从而还有利于用户对同类应用程序做出相应的流量管理策略,进而更好地管理和控制同一类应用程序中不同应用程序的流量使用,节省流量资费;最终提高了用户体验。

在另一实施方式中,所述终端还可以对特定的应用程序进行在整个应用程序流量排行的置顶或置底操作,或者还可以对特定的应用程序在相应的类别的排行中进行置顶或置底操作。这里,特定的应用程序为用户可根据自己的需求选出的应用程序。这样,可以对用户自身关注的应用程序进行特别的排行处理,这样,用户对这些应用程序的流量排行更加一目了然,因此,可以更进一步为用户快速做出流量管理策略提供了有利的参考,提高了用户体验。

在另一实施方式中,所述终端还可根据用户对所述终端与运营商签订的流量套餐对特殊应用程序进行隐藏,这里的隐藏,可以理解为对这些特殊的应用程序进行筛选,并不对其进行后续的流量统计。

在另一实施方式中,所述终端还可以根据用户的需求,对应用程序进行自定义的分类,终端接收用户针对所述应用程序输入的分类标识符,对所述应用程序进行自定义的分类,例如在对应用程序进行分类时,接收了用户针对所述第一类应用程序的分类标识符“s”,则表示该应用程序为社交类应用程序,再如接收了用户针对所述第二类应用程序的分类标识符“g”,则表示该应用程序为游戏类应用程序。上述分类标识符为用户自行定义的,除了可以用字母表示之外,还可以用数字或其他符号表示。

进一步地,为了实现上述实施例所述的方法,本发明实施例还提供了一个数据流量的处理装置的具体实施例,请参阅图3,图3为本发明具体实施例所提供的数据流量的处理装置功能结构示意图,如图3所示,所述数据流量的处理装置包括:广播注册模块31、历史数据模块32、流量刷新模块33、分类排序模块34和分类显示模块35。其中,

所述广播注册模块31,用于各应用程序流量历史数据计算相关的广播的注册,例如,上述所述的开机、或关机指令的通知,wifi接入或断开的通知等均由广播注册模块将这些指令信息通知到终端的处理器。

所述历史数据模块32,用于各应用程序历史数据的计算和存储。例如,对历史统计周期内,各应用程序的总数据流量的存储,及各应用程序的第二类数据流量的计算等。这里,所述历史数据模块32可以相当于上述的统计模块21。

所述流量刷新模块33,用于在流量变化时对各应用程序实时流量进行计算。可以理解为当侦测到有流量产生时,触发终端监测各应用程序的所产生的数据,刷新各应用程序的数据流量。

所述分类排序模块34,用于对各应用程序进行分类,并分别对各类的应用程序按照流量消耗进行排序。这里,流量消耗具体为应用程序的第一类流量消耗。这里分类排序模块34可以理解为上述的排序模块22。

所述分类显示模块35,用于将分类排序产生的信息分别刷新显示到对应的视图中。

基于此,仍以自然月作为统计周期,对终端的应用程序的第一类数据流量进行统计,请参照图4,图4为本发明具体实施例所提供的数据流量的处理方法流量示意图;如图4所示,所述方法步骤为:

步骤401:初始化数据库;

具体地,终端对应用程序的数据流量的数据库进行初始化处理,所述数据流量的数据库字段包括应用包名/类名componentname、上次开机到本月初数据流量startdata、最近一次开机时间closeboottime、本月已使用数据流量useddata、本月关机标志hasshutdown、已使用wifi数据流量wifidata。

步骤402:注册开机、关机、月份变化、wifi状态切换和流量变化广播接收器,这里广播接收器可以理解为终端的处理器,用于记录上述开机、关机、月份变化、wifi状态切换、流量变化等指令,并执行相应的处理的。

具体的执行步骤如下:

步骤403:收到开机广播时,执行步骤4031,所述步骤4031:保存当前时间,具体地,获取当前的系统事件保存到数据库的closeboottime字段中,记录最近一次开机时间。

步骤404:收到关机广播时,执行步骤4041,所述步骤4041:计算历史流量,具体地,判断关机标志位是否为true,如果是true,则将在数据库查询到的本月历史流量和统计到的应用程序当前流量数据叠加,更新到数据库usedate字段中。如果是false,则用统计到的应用程序的当前的流量减去数据库查询到的上次开机到本月起始时间的流量,再更新到数据库useddate字段中,将本月关机标识位置为true。

步骤405:收到月份变化广播时,执行步骤4051:保存当前流量,具体地,将统计到的当前流量数据保存到数据库startdata字段中,并清空历史流量数据useddata字段和已使用的wifi数据wifidata字段。

步骤406:收到wifi广播时,也就是收到wifi状态切换广播时,执行步骤4061:存储wifi流量,具体地,接收到wifi状态变化广播时,当wifi为打开且与预定的热点为接入状态时,根据wifi数据wifidata字段,当wifi为与预定的热点断开状态时,统计当前的数据值并减去之前存储的数据值,从数据库中获取到叠加到已使用wifi数据中并更新到wifidata字段中。从而记录wifi接入状态下,各应用程序所产生的第二类数据流量。

步骤407:收到流量广播时,执行步骤4071:计算刷新视图,具体地,这里可以设置10mb为刷新间隔,也就是每检测到终端的流量变化10mb时,则对应用程序进行流量统计,更新各应用程序的本月已使用的流量数据,并刷新视图,即刷新应用程序的流量排行。

基于此,本发明实施例还提供了一个用于实现所述应用程序排序的具体的方法流程,请参阅图5,图5为本发明具体实施例所提供的数据流量的处理方法的另一流程示意图,如图5所示,所述方法步骤为:

步骤501:获取终端系统中所有的应用程序;

步骤502:获取一个应用程序;

步骤503:判断所述应用程序是否有网络访问权限;如果是则执行步骤504,如果否则返回步骤502;

步骤504:判断最近开机时间是否在本月前,如果是,则执行步骤505,若果不是,则执行步骤506;

步骤505:根据当前数据流量和本月数据流量,计算本月已使用的第一类流量;

步骤506:根据当前数据流量和本月历史数据流量,计算本月已使用的第一类流量;

步骤507:将应用程序信息封装到info对象,分类加入相关列表;

步骤508:判断是否已遍历完所有应用;若是,则执行步骤509,若否,则返回步骤502;

步骤509:按照应用程序分类对第一类数据流量消耗进行排序。

具体地,终端通过包管理器packagemanager的getinstalledpackages()方法获取到系统中配置权限信息的应用集合。遍历所有集合中的应用,判断应用是否具有网络internet访问权限,如果有则读取数据库closeboottime字段与本月起始时间进行比较,如果最近开机时间在本月起始前,则用当前统计到的流量减去数据库startdata字段值和wifidata字段值得到本月该应用已使用的第一类数据流量;如果最近开机时间在本月起始后,则用当前统计到的流量加上useddata字段值再减去wifidata字段值得到本月该应用已使用的第一类数据流量。将该应用包名、图标、名称以及本月已使用流量信息保存到info对象中。根据info对象中的应用类型进行分类。

进一步地,应用程序的分类方法,请参阅图6,图6为本发明具体实施例所提供的应用程序分类方法流程示意图,如图6所示,所述方法包括以下步骤:

步骤601:获取info对象;

步骤602:判断是否属于系统应用;如果是,则执行步骤603,如果否,则执行步骤604;

步骤603:判断是否属于自研应用;如果是,则执行步骤605,如果否,则执行步骤606;

步骤604:将info加入到thirdinfolist中;

步骤605:将info加入到sysinfolist中;

步骤606:将info加入到selfinfolist中。

具体地,所述应用程序的类别的判断方式为:获取应用的info对象,根据info.applicationinfo.flags&applicationinfo.flag_system来判断该应用程序是否属于系统应用,如果属于系统应用,则再根据info.packagename中是否包含自研应用固定字符串“xxx”来判断是否属于自研应用,如果是自研应用,将info加入到selfinfolist中,否则为非自研应用,可直接将这类应用程序的info加入到sysinfolist中,在本实施例中,该类应用程序应当理解为,系统应用程序的非自研应用程序类;如果是非系统应用(即第三方应用),则将info加入到thirdinfolist中。当遍历完所有应用程序时,对不同应用程序类型的列表分别根据各info中的流量值从高到底对各info列表进行排序。

进一步地,针对特殊流量套餐进行定制化设计,比如对使用腾讯大王卡的用户,将腾讯系的应用从具有网络权限的所有应用列表中删除,只保留非腾讯系的应用流量统计信息。应用是否为腾讯系应用通过应用的包名信息中是否包含“tencent”字符串来判断。最后将不同列表的数据分别更新显示到对应的用户界面视图中。例如,图7a为本发明具体实施例所提供的数据流量的处理场景下界面1的示意图;如图7a所示,在流量排行界面顶端展示了运营商名称,在列表前展示应用程序的类别名称,并按照分类,对应用程序进行数据流量的排序,这里,界面1中展示的是系统应用(非自研应用类)的流量排序,一侧用于展示应用程序的图标及应用程序的名称,这里用labeln表示对应用程序的名称,用daten表示对应应用程序的第一类数据流量的流量数据;接着,图7b为本发明具体实施例所提供的数据流量的处理场景下界面1的示意图;如图7b所示,界面2中展示的是自研应用的流量排序,同样,一侧用于展示应用程序的图标及应用程序的名称,这里用labeln表示对应用程序的名称,用daten表示对应应用程序的第一类数据流量的流量数据;接着,图7c为本发明具体实施例所提供的数据流量的处理场景下界面3的示意图,如图7c所示,界面3中展示的是市场应用的流量排序,同样,一侧用于展示应用程序的图标及应用程序的名称,这里用labeln表示对应用程序的名称,用daten表示对应应用程序的第一类数据流量的流量数据。在另实施方式中,所述应用程序的分类可根据用户自定义进行分类,请参阅图8,图8为本发明具体实施例所提供的数据流量的处理的另一场景示意图,如图8所示,在流量排行界面顶端展示了运营商名称,在列表前展示应用程序的类别名称,这里的类别为用户自定义类别,并按照分类,对应用程序进行数据流量的排序,这里,展示的是自定义分类1和自定义分类2应用的流量排序,一侧用于展示应用程序的图标及应用程序的名称,这里用labeln表示对应用程序的名称,用daten表示对应应用程序的第一类数据流量的流量数据。

这样,由于对同一类别的应用程序的第一类数据流量进行了排序,实现对应用程序进行分类后的流量管理,相对于将所有的应用程序统计流量后,呈现零散的统计结果而言,对同一类的应用程序的第一类数据流量进行排序得到一个分类的统计结果,也由于在流量统计中对应用程序进行了分类管理,可以进行分类查看,使得管理起来更加方便,进而帮助用户快速得到应用程序流量管理的有用信息,为用户快速做出流量控制策略提供管理了有利的参考;而且,由于在流量统计中对应用程序进行了分类管理,可以快速且清楚地知晓每个应用程序所产生的流量在同一类别的应用程序中的流量排行情况,如此,针对完成同类功能的同类应用程序,基于第一类数据流量的高低排序,选择性的关闭第一类数据流量较高的应用程序,减少第一类数据流量较高的应用程序的优先使用,从而减少第一类数据流量的消耗;从而减少第一类数据流量较高的应用程序的流量费用,以提高用户的设备使用满意度。

进一步地,为实现本发明实施例的方法,本发明实施例还提供了一种终端,用于实现本发明数据流量的处理的方法的具体细节,达到相同的效果。

图9为本发明实施例所提供的终端的硬件结构示意图,如图9所示,所述网关,包括:处理器91,以及用于存储能够在处理器91上运行的计算机程序的存储器92;其中,

所述处理器91,用于运行所述计算程序时,执行:

统计所述终端的应用程序所产生的第一类数据流量;

针对所述应用程序进行分类;

按照应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序。

在一实施方式中,所述处理器91,还用于运行所述计算程序时,执行:

根据排序的结果,依次显示同一类应用程序的图标。

在一实施方式中,所述处理器91用于运行所述统计所述终端的应用程序所产生的第一类数据流量的程序,执行:

统计所述终端的应用程序的总数据流量;

确定所述终端的应用程序所产生的第二类数据流量;

根据所述总数据流量及所述第二类数据流量,计算出所述第一类数据流量。

在一实施方式中,所述处理器91用于运行所述统计所述终端的应用程序所产生的第二类数据流量的程序,执行:

记录第一时刻的总数据流量,其中,所述第一时刻为:所述终端与预定热点建立连接的时刻;

记录第二时刻的总数据流量,其中,所述第二时刻为:所述终端与所述预定热点断开所述连接的时刻;

根据所述第一时刻的总数据流量和所述第二时刻的总数据流量,确定所述第二类数据流量。

在一实施方式中,所述第一业务类型信息包括:网络访问权限信息;

所述处理器91,用于运行述统计所述终端的应用程序所产生的第一类数据流量的程序,执行:

从所述终端的开机时刻开始统计总数据流量;

若所述开机时刻位于历史统计周期内,结合所述开机时刻开始统计的总数据流量及历史统计周期的总数据流量,计算得到当前统计周期的总数据流量;

根据当前统计周期的总数据流量,确定所述终端的应用程序在所述当前统计周期内所产生的第一类数据流量。

在一实施方式中,所述处理器91,用于运行所述针对应用程序进行分类的程序,执行:

获取所述应用程序的标识信息;

根据所述应用程序的标识信息,确定所述应用程序的分类。

在一实施方式中,所述处理器91,用于运行所述计算机程序,执行:

将特定应用程序的对应图标显示在目标位置。

进一步地,本发明还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行程序,所述可执行程序被处理器执行时实现以下步骤:

统计所述终端的应用程序所产生的第一类数据流量;

针对所述应用程序进行分类

按照应用程序的分类,对同一类应用程序的所述第一类数据流量进行排序。

在一实施方式中,所述可执行程序被处理器执行时还实现以下步骤:

根据排序的结果,依次显示同一类应用程序的图标。

在一实施方式中,所述可执行程序被处理器执行时,以具体实现所述统计所述终端的应用程序所产生的第一类数据流量的步骤:

统计所述终端的应用程序的总数据流量;

确定所述终端的应用程序所产生的第二类数据流量;

根据所述总数据流量及所述第二类数据流量,计算出所述第一类数据流量。

在一实施方式中,所述可执行程序被处理器执行时,以具体实现所述统计所述终端的应用程序所产生的第二类数据流量的步骤:

记录第一时刻的总数据流量,其中,所述第一时刻为:所述终端与预定热点建立连接的时刻;

记录第二时刻的总数据流量,其中,所述第二时刻为:所述终端与所述预定热点断开所述连接的时刻;

根据所述第一时刻的总数据流量和所述第二时刻的总数据流量,确定所述第二类数据流量。

在一实施方式中,所述可执行程序被处理器执行时,以具体实现所述统计所述终端的应用程序所产生的第一类数据流量的步骤:

从所述终端的开机时刻开始统计总数据流量;

若所述开机时刻位于历史统计周期内,结合所述开机时刻开始统计的总数据流量及历史统计周期的总数据流量,计算得到当前统计周期的总数据流量;

根据当前统计周期的总数据流量,确定所述终端的应用程序在所述当前统计周期内所产生的第一类数据流量。

在一实施方式中,所述可执行程序被处理器执行时,以具体实现所述按照应用程序的分类,所述针对所述应用程序进行分类的步骤:

获取所述应用程序的标识信息;

根据所述应用程序的标识信息,确定所述应用程序的分类。

在一实施方式中,所述可执行程序被处理器执行时,以具体实现以下步骤:

将特定应用程序的对应图标显示在目标位置。

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

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