一种移动终端数据分布式上报的装置及方法

文档序号:10661085阅读:386来源:国知局
一种移动终端数据分布式上报的装置及方法
【专利摘要】本发明公开了一种移动终端数据分布式上报的装置及方法,涉及移动终端技术领域,所述装置包括:定义模块,用于将移动终端中包含有数据统计SDK的APP定义为备选APP;竞选模块,用于从所有备选APP中竞选出一个APP作为中控APP;采集上传模块,用于通过中控APP采集所有备选APP内的数据,并统一上传,本发明通过竞选的方式产生一个中控APP,管控各个APP的统计数据,达到了省电、节约流量、减少内存的作用。
【专利说明】
一种移动终端数据分布式上报的装置及方法
技术领域
[0001] 本发明涉及移动终端技术领域,尤其涉及一种移动终端数据分布式上报的装置及 方法。
【背景技术】
[0002] 出于运营的目的,移动APP在使用过程中会统计用户的使用习惯,将记录的数据上 报给服务器,由服务器对数据挖掘,根据结果制定下一个版本的开发计划,目前行业内的做 法是在移动APP中集成数据统计SDK(Software Development Kit,软件开发工具包),由SDK 将采集的数据独立上传给服务器,由于每个APP都独立上报数据,需各自连接网络,会造成 手机电量的损耗,同时上报的数据中有很多重复的基础数据,又会造成流量的浪费。
[0003] 有的硬件生产厂商将每个APP采集的数据传给某个中控APP由其统一上报,虽然能 解决电量和网络问题,但是随着引入了一个新的APP,增加了内存的占用。

【发明内容】

[0004] 本发明的主要目的在于提出一种移动终端数据分布式上报的装置及方法,通过竞 选的方式产生一个中控APP,管控各个APP的统计数据,达到了省电、节约流量、减少内存的 作用。
[0005] 为实现上述目的,本发明提供的一种移动终端数据分布式上报的装置,其特征在 于,包括:
[0006] 定义模块,用于将移动终端中包含有数据统计SDK的APP定义为备选APP;
[0007] 竞选模块,用于从所有备选APP中竞选出一个APP作为中控APP;
[0008] 采集上传模块,用于通过中控APP采集所有备选APP内的数据,并统一上传。
[0009] 可选地,所述竞选模块包括:
[0010] 排序单元,用于对所有备选APP进行排序;
[0011] 比较单元,用于从第一个备选APP开始,依次与之后的备选APP进行竞选,比较正在 竞选的两个备选APP的相关信息的权重,所述权重比较大的相关信息对应的备选APP即为胜 出APP,并将历次竞选结果传递给胜出APP;
[0012 ] 遍历单元,用于遍历所有备选APP,得至丨摊一一个胜出APP,作为中控APP。
[0013] 可选地,所述竞选模块还包括:
[0014] 结果发送单元,用于中控APP向所有备选APP发送最终竞选结果。
[0015] 可选地,所述相关信息的数据结构包括:数据类型的参数、参数的取值和数据类型 的权重。
[0016] 可选地,所述数据类型的参数包括:APP触发频率、是否为内置APP和平均使用时 长;所述数据类型的权重通过服务器端采集到的大数据获取。
[0017] 另一方面,提供的一种移动终端数据分布式上报的方法,所述方法包括步骤:
[0018] 将移动终端中包含有数据统计SDK的APP定义为备选APP;
[0019] 从所有备选APP中竞选出一个APP作为中控APP;
[0020] 通过中控APP采集所有备选APP内的数据,并统一上传。
[0021 ] 可选地,所述从所有备选APP中竞选出一个APP作为中控APP包括:
[0022]对所有备选APP进行排序;
[0023]从第一个备选APP开始,依次与之后的备选APP进行竞选,比较正在竞选的两个备 选APP的相关信息的权重,所述权重比较大的相关信息对应的备选APP即为胜出APP,并将历 次竞选结果传递给胜出APP;
[0024] 遍历所有备选APP,得到唯--个胜出APP,作为中控APP。
[0025] 可选地,所述遍历所有备选APP,得到唯一一个胜出APP,作为中控APP之后,所述通 过中控APP采集所有备选APP内的数据,并统一上传之前还包括:
[0026]中控APP向所有备选APP发送最终竞选结果。
[0027]可选地,所述相关信息的数据结构包括:数据类型的参数、参数的取值和数据类型 的权重。
[0028]可选地,所述数据类型的参数包括:APP触发频率、是否为内置APP和平均使用时 长;所述数据类型的权重通过服务器端采集到的大数据获取。
[0029] 本发明提出的一种移动终端数据分布式上报的装置及方法,所述装置包括:定义 模块,用于将移动终端中包含有数据统计SDK的APP定义为备选APP;竞选模块,用于从所有 备选APP中竞选出一个APP作为中控APP;采集上传模块,用于通过中控APP采集所有备选APP 内的数据,并统一上传,本发明通过竞选的方式产生一个中控APP,管控各个APP的统计数 据,达到了省电、节约流量、减少内存的作用。
【附图说明】
[0030] 图1为实现本发明各个实施例一个可选的移动终端的硬件结构示意图;
[0031] 图2为如图1所示的移动终端的无线通信系统示意图;
[0032]图3为本发明实施例三提供的一种移动终端数据分布式上报的装置示范性结构框 图;
[0033]图4为本发明实施例四提供的一种移动终端数据分布式上报的装置示范性结构框 图;
[0034]图5为本发明实施例一提供的一种移动终端数据分布式上报的方法流程图;
[0035]图6为本发明实施例一提供的一种移动终端APP分布示意图;
[0036]图7为本发明实施例一提供的一种移动终端APP竞选示意图;
[0037]图8为本发明实施例二提供的一种移动终端数据分布式上报的方法流程图。
[0038] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
[0039] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0040] 在后续的描述中,使用用于表示元件的诸如"模块"、"部件"或"单元"的后缀仅为 了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使 用。
[0041] 移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动 电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP (便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固 定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动 目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
[0042] 图1为实现本发明各个实施例一个可选的移动终端的硬件结构示意图。
[0043] 移动终端100可以包括无线通信单元110、A/V(音频/视频)输入单元120、用户输入 单元130、输出单元150、存储器160、接口单元170、控制器180和电源单元190等等。图1示出 了具有各种组件的移动终端,但是应理解的是,并不要求实施所有示出的组件。可以替代地 实施更多或更少的组件。将在下面详细描述移动终端的元件。
[0044] 无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统 或网络之间的无线电通信。例如,无线通信单元可以包括移动通信模块112、无线互联网模 块113、短程通信模块114中的至少一个。
[0045] 移动通信模块112将无线电信号发送到基站(例如,接入点、节点B等等)、外部终端 以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通 话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。 [0046]无线互联网模块113支持移动终端的无线互联网接入。该模块可以内部或外部地 耦接到终端。该模块所涉及的无线互联网接入技术可以包括WLAN(无线LAN) (Wi-Fi)、Wibro (无线宽带)、Wimax(全球微波互联接入)、HSDPA(高速下行链路分组接入)等等。
[0047]短程通信模块114是用于支持短程通信的模块。短程通信技术的一些示例包括蓝 牙TM、射频识别(RFID)、红外数据协会(IrDA)、超宽带(UWB)、紫蜂TM等等。
[0048] A/V输入单元120用于接收音频或视频信号。
[0049] 用户输入单元130可以根据用户输入的命令生成键输入数据以控制移动终端的各 种操作。用户输入单元130允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触摸 板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等 等。
[0050] 接口单元170用作至少一个外部装置与移动终端100连接可以通过的接
[0051] 口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电 器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输 入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别模块可以是存储用于验证用户使用 移动终端100的各种信息并且可以包括用户识别模块ΟΠΜ)、客户识别模块(sn〇、通用客户 识别模块(USIM)等等。另外,具有识别模块的装置(下面称为"识别装置")可以采取智能卡 的形式,因此,识别装置可以经由端口或其它连接装置与移动终端100连接。接口单元170可 以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到 移动终端100内的一个或多个元件或者可以用于在移动终端和外部装置之间传输数据。
[0052] 另外,当移动终端100与外部底座连接时,接口单元170可以用作允许通过其将电 力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其 传输到移动终端的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端是 否准确地安装在底座上的信号。输出单元150被构造为以视觉、音频和/或触觉方式提供输 出信号(例如,音频信号、视频信号、警报信号、振动信号等等)。
[0053] 存储器160可以存储由控制器180执行的处理和控制操作的软件程序等等,或者可 以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而 且,存储器160可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的 数据。
[0054] 存储器160可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多 媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储 器(SRAM)、只读存储器(R0M)、电可擦除可编程只读存储器(EEPR0M)、可编程只读存储器 (PR0M)、磁性存储器、磁盘、光盘等等。而且,移动终端100可以与通过网络连接执行存储器 160的存储功能的网络存储装置协作。
[0055] 控制器180通常控制移动终端的总体操作。例如,控制器180执行与语音通话、数据 通信、视频通话等等相关的控制和处理。
[0056]电源单元190在控制器180的控制下接收外部电力或内部电力并且提供操作各元 件和组件所需的适当的电力。
[0057]这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算 机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路 (ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可 编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的 电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器180中实施。 对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的 软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来 实施,软件代码可以存储在存储器160中并且由控制器180执行。
[0058] 至此,己经按照其功能描述了移动终端。下面,为了简要起见,将描述诸如折叠型、 直板型、摆动型、滑动型移动终端等等的各种类型的移动终端中的滑动型移动终端作为示 例。因此,本发明能够应用于任何类型的移动终端,并且不限于滑动型移动终端。
[0059] 参考图2,⑶MA无线通信系统可以包括多个移动终端100、多个基站(BS)270、基站 控制器(BSC)275和移动交换中心(MSCUSOJSCSSO被构造为与公共电话交换网络(PSTN) 290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。 回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM,IP、 PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的系统可以包括多个BSC2750。
[0060] 每个BS270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天 线覆盖的每个分区放射状地远离BS270。或者,每个分区可以由用于分集接收的两个或更多 天线覆盖。每个BS270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱 (例如,1·25ΜΗζ,5ΜΗζ 等等)。
[0061] 分区与频率分配的交叉可以被称为CDMA信道。BS270也可以被称为基站收发器子 系统(BTS)或者其它等效术语。在这样的情况下,术语"基站"可以用于笼统地表示单个 BSC275和至少一个BS270。基站也可以被称为〃蜂窝站〃。或者,特定BS270的各分区可以被称 为多个蜂窝站。
[0062]如图2中所示,广播发射器(BT)295将广播信号发送给在系统内操作的移动终端 100。如图1中所示的广播接收模块111被设置在移动终端100处以接收由BT295发送的广播 信号。在图2中,示出了几个全球定位系统(GPS)卫星300。卫星300帮助定位多个移动终端 100中的至少一个。
[0063]在图2中,描绘了多个卫星300,但是理解的是,可以利用任何数目的卫星获得有用 的定位信息。
[0064]作为无线通信系统的一个典型操作,BS270接收来自各种移动终端100的反向链路 信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反 向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275ASC提供通话 资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数 据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与 MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270以将正向链路信号 发送到移动终端100。
[0065] 基于上述移动终端硬件结构以及通信系统,提出本发明方法各个实施例。
[0066] 实施例一
[0067]如图3所示,在本实施例中,一种移动终端数据分布式上报的装置,其特征在于,包 括:
[0068]定义模块10,用于将移动终端中包含有数据统计SDK的APP定义为备选APP;
[0069]竞选模块20,用于从所有备选APP中竞选出一个APP作为中控APP;
[0070]采集上传模块30,用于通过中控APP采集所有备选APP内的数据,并统一上传。
[0071]本实施例通过竞选的方式产生一个中控APP,管控各个APP的统计数据,达到了省 电、节约流量、减少内存的作用。
[0072]在本实施例中,如图6所示,移动终端的ROM中存储着许多个APP,数据统计SDK被集 成到APP中,用以统计APP的启动信息、页面信息、事件点击信息和CRASH信息等,中控APP又 称为数据集中上报APP,既可以看做是一个普通的APP,也可以看做是一个特殊的APP,其通 过在各个APP之间比较相关的参数竞选产生,其作用是接收集成了 SDK的APP的数据,存储并 统一上传至云端,达到减少功耗的目的。
[0073]在本实施例中,各个APP之间的竞选过程如下,APP会将自己的相关信息如触发频 率、是否是内置APP、平均使用时长等信息依次发送给其他安装了 SDK的APP,接收方将自己 的信息与之做比较(每类数据分配了一定的权重),所述权重比较大的相关信息对应的备选 APP即为胜出APP,返回结果给发送方,发送方如果发现未能胜出,则终止此轮查询,无法作 为中控APP,等待对方的比较的结果;如果返回结果表明自己胜出,则继续轮循比较,当与所 有其他APP比较都胜出时,则自己就是中控APP,否则等待中控APP被选出的结果。
[0074]在本实施例中,通过定义模块将移动终端中包含有数据统计SDK的APP定义为备选 APP,每个备选APP都有被选为中控APP的机会,但一个移动终端中仅会有一个APP成为中控 APP,APP在启动时会检测自己是否是中控APP,如果是,则将采集到的数据存储到自己的数 据库中,当采集完所有数据时,或者接收到上传数据的命令时,将所述数据库中的数据发送 至云端;否则,向其他集成了SDK的APP发送查询指令,一旦查询成功,找到中控APP,则将采 集的数据通过跨进程的方式传递给中控APP。
[0075]如图7所示,为了减少重复查询,上一个APP在竞选中控APP失败后,会将自己之前 比较过的结果传递给下一个APP,如图7中APP1会将APP2和APP3已经被掉的结果上报 APP4,则APP4只需要从APP5开始比较;如此比较类似于一个神经网络结构一样延伸开来很 快就可以得到最终比较的结果,当APP10发现已经没有比自己更加合适做中控APP的结果 时,会将结果广播发送给每一个APP,从而最终的中控APP产生了。
[0076]在本实施例中,采集上传模块30,用于通过中控APP采集所有备选APP内的数据,当 采集完所有数据时,或者接收到上传数据的命令时,将所述数据库中的数据发送至云端。 [0077]现有的技术中,每个集成了SDK的APP都需要采集公用的设备信息:手机的頂EI号、 MAC地址、终端生产厂商、操作系统、操作系统版本、终端型号等,并上报给服务器,这无疑增 加了很多的冗余数据,本方案中由于推选出了一个中控APP统一采集,因此可以节约耗费的 流量;而且本方案集成了SDK的每个APP都可以作为一个数据上传的中心,不需要引入单独 的中控APP,因此可以减少一个APK,从而节约了手机内存,本实施例通过竞选的方式产生一 个中控APP,管控各个APP的统计数据,达到了省电、节约流量、减少内存的作用。
[0078]在本实施例中,所述相关信息的数据结构包括:数据类型的参数、参数的取值和数 据类型的权重。
[0079]在本实施例中,所述数据类型的参数包括:APP触发频率、是否为内置APP和平均使 用时长;所述数据类型的权重通过服务器端采集到的大数据获取。
[0080] 本实施例中,采用淘汰式的竞选方式,并将竞选结果保存至胜出APP中,减少了APP 之间的重复查询,提高了竞选效率。同时构造了一种扩展性很强的数据结构,充分考虑到了 向后兼容性,降低了升级带来的问题,减少了内存占用量。
[0081] 由于在比较的过程中会采集各种类型的数据,每种类型的数据需要存储不同的字 段信息,每种数据的重要性并不相同,且随着版本的更新,会发现有更加重要的信息会加 入,者会导致用来存储的数据表需要不停的扩展,从而提高了耦合性。
[0082] 因此我们定义了了一种封装的通用数据格式,SDK如果有新的数据产生,不需要升 级数据库,只需要SDK按照下表中的数据格式发送数据即可。
[0084] 我们可以定义一种通用格式数据格式如(不仅仅如下):
[0085] (paraml,valuel,weight 1),(param2,value2,weight2), ···,
[0086] (paramn-1,valuen-l,weightn-l)),(paramn,valuen,weightn)
[0087] param代表某类型数据的参数,如APP的触发频率、是否是内置APP、平均使用时长 等,value代表参数param的取值,如30秒一次、3天之前、20分钟。
[0088] weight代表某类型数据的权重,因为每一种类型的数据的重要性是不一样的,而 且随着时间的推移,重要性也会发生变化,因此权重的取值是从服务器获取的,服务器端可 利用收集到的大数据,不断更新每类数据的权重。
[0089] 例如APP如果是内置APP相对于第三方APP更加有可能成为中控APP,因为内置的 APP是不允许被卸载的,稳定性好,第三方APP随时可能被卸载。
[0090]数据的格式不一定是要求是上面的格式,可以是任何类型,只要能够区分数据的 参数和取值即可,例如json格式也能满足需求。
[0091] 在本实施例中,构造了一种扩展性很强的数据结构,充分考虑到了向后兼容性,降 低了升级带来的问题,减少了内存占用量。
[0092] 实施例二
[0093] 如图4所示,在本实施例中,基于实施例一,所述竞选模块20包括:
[0094] 排序单元21,用于对所有备选APP进行排序;
[0095]比较单元22,用于从第一个备选APP开始,依次与之后的备选APP进行竞选,比较正 在竞选的两个备选APP的相关信息的权重,所述权重比较大的相关信息对应的备选APP即为 胜出APP,并将历次竞选结果传递给胜出APP;
[0096] 遍历单元23,用于遍历所有备选APP,得到唯--个胜出APP,作为中控APP。
[0097]在本实施例中,所述竞选模块20还包括:
[0098] 结果发送单元24,用于中控APP向所有备选APP发送最终竞选结果。
[0099] 在本实施例中,所述相关信息的数据结构包括:数据类型的参数、参数的取值和数 据类型的权重。
[0100] 在本实施例中,所述数据类型的参数包括:APP触发频率、是否为内置APP和平均使 用时长;所述数据类型的权重通过服务器端采集到的大数据获取。
[0101] 本实施例中,采用淘汰式的竞选方式,并将竞选结果保存至胜出APP中,减少了APP 之间的重复查询,提高了竞选效率。同时构造了一种扩展性很强的数据结构,充分考虑到了 向后兼容性,降低了升级带来的问题,减少了内存占用量。
[0102] 由于在比较的过程中会采集各种类型的数据,每种类型的数据需要存储不同的字 段信息,每种数据的重要性并不相同,且随着版本的更新,会发现有更加重要的信息会加 入,者会导致用来存储的数据表需要不停的扩展,从而提高了耦合性。
[0103]因此我们定义了了一种封装的通用数据格式,SDK如果有新的数据产生,不需要升 级数据库,只需要SDK按照下表中的数据格式发送数据即可。
[0105] 在本实施例中,构造了一种扩展性很强的数据结构,充分考虑到了向后兼容性,降 低了升级带来的问题,减少了内存占用量。
[0106] 实施例三
[0107] 如图5所示,本实施例提出一种移动终端数据分布式上报的方法,所述方法包括步 骤:
[0108] S10、将移动终端中包含有数据统计SDK的APP定义为备选APP;
[0109] S20、从所有备选APP中竞选出一个APP作为中控APP;
[0110] S30、通过中控APP采集所有备选APP内的数据,并统一上传。 在本实施例中,如图6所示,移动终端的ROM中存储着许多个APP,数据统计SDK被集 成到APP中,用以统计APP的启动信息、页面信息、事件点击信息和CRASH信息等,中控APP又 称为数据集中上报APP,既可以看做是一个普通的APP,也可以看做是一个特殊的APP,其通 过在各个APP之间比较相关的参数竞选产生,其作用是接收集成了 SDK的APP的数据,存储并 统一上传至云端,达到减少功耗的目的。
[0112] 在本实施例中,各个APP之间的竞选过程如下,APP会将自己的相关信息如触发频 率、是否是内置APP、平均使用时长等信息依次发送给其他安装了 SDK的APP,接收方将自己 的信息与之做比较(每类数据分配了一定的权重),所述权重比较大的相关信息对应的备选 APP即为胜出APP,返回结果给发送方,发送方如果发现未能胜出,则终止此轮查询,无法作 为中控APP,等待对方的比较的结果;如果返回结果表明自己胜出,则继续轮循比较,当与所 有其他APP比较都胜出时,则自己就是中控APP,否则等待中控APP被选出的结果。
[0113] 在本实施例中,每个集成了SDK的APP都有被选为中控APP的机会,但一个移动终端 中仅会有一个APP成为中控APP,APP在启动时会检测自己是否是中控APP,如果是,则将采集 到的数据存储到自己的数据库中,当采集完所有数据时,或者接收到上传数据的命令时,将 所述数据库中的数据发送至云端;否则,向其他集成了 SDK的APP发送查询指令,一旦查询成 功,找到中控APP,则将采集的数据通过跨进程的方式传递给中控APP。
[0114] 如图7所示,为了减少重复查询,上一个APP在竞选中控APP失败后,会将自己之前 比较过的结果传递给下一个APP,如图7中APP1会将APP2和APP3已经被Μ掉的结果上报 APP4,则APP4只需要从APP5开始比较;如此比较类似于一个神经网络结构一样延伸开来很 快就可以得到最终比较的结果,当APP10发现已经没有比自己更加合适做中控APP的结果 时,会将结果广播发送给每一个APP,从而最终的中控APP产生了。
[0115]现有的技术中,每个集成了SDK的APP都需要采集公用的设备信息:手机的頂EI号、 MAC地址、终端生产厂商、操作系统、操作系统版本、终端型号等,并上报给服务器,这无疑增 加了很多的冗余数据,本方案中由于推选出了一个中控APP统一采集,因此可以节约耗费的 流量;而且本方案集成了SDK的每个APP都可以作为一个数据上传的中心,不需要引入单独 的中控APP,因此可以减少一个APK,从而节约了手机内存,本实施例通过竞选的方式产生一 个中控APP,管控各个APP的统计数据,达到了省电、节约流量、减少内存的作用。
[0116]实施例四
[0117]如图8所示,在本实施例中,基于实施例三,所述步骤S20包括:
[0118] S21、对所有备选APP进行排序;
[0119] S22、从第一个备选APP开始,依次与之后的备选APP进行竞选,比较正在竞选的两 个备选APP的相关信息的权重,所述权重比较大的相关信息对应的备选APP即为胜出APP,并 将历次竞选结果传递给胜出APP;
[0120] S23、遍历所有备选APP,得到唯--个胜出APP,作为中控APP。
[0121 ]在本实施例中,所述步骤S23之后,还包括:
[0122] S24、中控APP向所有备选APP发送最终竞选结果。
[0123] 本实施例中,采用淘汰式的竞选方式,并将竞选结果保存至胜出APP中,减少了APP 之间的重复查询,提高了竞选效率。
[0124] 在本实施例中,所述相关信息的数据结构包括:数据类型的参数、参数的取值和数 据类型的权重。
[0125] 在本实施例中,所述数据类型的参数包括:APP触发频率、是否为内置APP和平均使 用时长;所述数据类型的权重通过服务器端采集到的大数据获取。
[0126] 由于在比较的过程中会采集各种类型的数据,每种类型的数据需要存储不同的字 段信息,每种数据的重要性并不相同,且随着版本的更新,会发现有更加重要的信息会加 入,者会导致用来存储的数据表需要不停的扩展,从而提高了耦合性。
[0127]因此我们定义了了一种封装的通用数据格式,SDK如果有新的数据产生,不需要升 级数据库,只需要SDK按照下表中的数据格式发送数据即可。
[0129]在本实施例中,构造了一种扩展性很强的数据结构,充分考虑到了向后兼容性,降 低了升级带来的问题,减少了内存占用量。
[0130]需要说明的是,在本文中,术语"包括"、"包含"或者其任何其他变体意在涵盖非排 他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而 且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有 的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括该 要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0131] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0132] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方 法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下 前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做 出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质 (如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,月艮 务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0133] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发 明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技 术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1. 一种移动终端数据分布式上报的装置,其特征在于,包括: 定义模块,用于将移动终端中包含有数据统计SDK的APP定义为备选APP; 竞选模块,用于从所有备选APP中竞选出一个APP作为中控APP; 采集上传模块,用于通过中控APP采集所有备选APP内的数据,并统一上传。2. 根据权利要求1所述的一种移动终端数据分布式上报的装置,其特征在于,所述竞选 丰吴块包括: 排序单元,用于对所有备选APP进行排序; 比较单元,用于从第一个备选APP开始,依次与之后的备选APP进行竞选,比较正在竞选 的两个备选APP的相关信息的权重,所述权重比较大的相关信息对应的备选APP即为胜出 APP,并将历次竞选结果传递给胜出APP; 遍历单元,用于遍历所有备选APP,得到唯一一个胜出APP,作为中控APP。3. 根据权利要求2所述的一种移动终端数据分布式上报的装置,其特征在于,所述竞选 模块还包括: 结果发送单元,用于中控APP向所有备选APP发送最终竞选结果。4. 根据权利要求2所述的一种移动终端数据分布式上报的装置,其特征在于,所述相关 信息的数据结构包括:数据类型的参数、参数的取值和数据类型的权重。5. 根据权利要求4所述的一种移动终端数据分布式上报的装置,其特征在于,所述数据 类型的参数包括:APP触发频率、是否为内置APP和平均使用时长;所述数据类型的权重通过 服务器端采集到的大数据获取。6. -种移动终端数据分布式上报的方法,其特征在于,所述方法包括步骤: 将移动终端中包含有数据统计SDK的APP定义为备选APP; 从所有备选APP中竞选出一个APP作为中控APP; 通过中控APP采集所有备选APP内的数据,并统一上传。7. 根据权利要求6所述的一种移动终端数据分布式上报的方法,其特征在于,所述从所 有备选APP中竞选出一个APP作为中控APP包括: 对所有备选APP进彳丁排序; 从第一个备选APP开始,依次与之后的备选APP进行竞选,比较正在竞选的两个备选APP 的相关信息的权重,所述权重比较大的相关信息对应的备选APP即为胜出APP,并将历次竞 选结果传递给胜出APP; 遍历所有备选APP,得到唯--个胜出APP,作为中控APP。8. 根据权利要求7所述的一种移动终端数据分布式上报的方法,其特征在于,所述遍历 所有备选APP,得到唯--个胜出APP,作为中控APP之后,所述通过中控APP采集所有备选 APP内的数据,并统一上传之前还包括: 中控APP向所有备选APP发送最终竞选结果。9. 根据权利要求7所述的一种移动终端数据分布式上报的方法,其特征在于,所述相关 信息的数据结构包括:数据类型的参数、参数的取值和数据类型的权重。10. 根据权利要求9所述的一种移动终端数据分布式上报的方法,其特征在于,所述数 据类型的参数包括:APP触发频率、是否为内置APP和平均使用时长;所述数据类型的权重通 过服务器端采集到的大数据获取。
【文档编号】H04M1/725GK106027757SQ201610280919
【公开日】2016年10月12日
【申请日】2016年4月28日
【发明人】黄小峰
【申请人】努比亚技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1