CN107343091A - 数据上报方法及系统 - Google Patents

数据上报方法及系统 Download PDF

Info

Publication number
CN107343091A
CN107343091A CN201710498277.5A CN201710498277A CN107343091A CN 107343091 A CN107343091 A CN 107343091A CN 201710498277 A CN201710498277 A CN 201710498277A CN 107343091 A CN107343091 A CN 107343091A
Authority
CN
China
Prior art keywords
data
operation data
application
server
audit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201710498277.5A
Other languages
English (en)
Inventor
林浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nubia Technology Co Ltd
Original Assignee
Nubia Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nubia Technology Co Ltd filed Critical Nubia Technology Co Ltd
Priority to CN201710498277.5A priority Critical patent/CN107343091A/zh
Publication of CN107343091A publication Critical patent/CN107343091A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/24Arrangements for testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种数据上报方法,所述方法应用于移动终端,所述方法包括:通过软件开发工具包采集对应的应用程序的操作数据;根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值;及将所述审计数据和所述操作数据上报至服务器。本发明还公开了一种数据上报系统、服务器和移动终端。利用本发明可以通过审计数据来校验操作数据,增加了上报数据的准确性。

Description

数据上报方法及系统
技术领域
本发明涉及通信技术领域,尤其涉及一种数据上报方法及系统。
背景技术
近年来,随着移动互联网技术的快速发展,手机、平板电脑等移动终端的功能越来越丰富,用户在移动终端上安装的第三方应用程序的种类和数量也不断增加。一般地,应用开发者会在应用程序中进行埋点采集数据,用以在应用程序运行时,记录相应的数据并将其上报至服务器,便于应用开发者在服务器端对上报的数据进行分析后形成报表,通过报表分析用户的使用习惯,进而改善用户体验。
然而,由于移动通信网络常常不稳定(网络信号不佳)、移动终端的状态不可控(用户采取节电模式、关闭数据流量)、移动终端的储存空间不足等因素制约,移动终端所采集的数据在上报到服务器时,常常出现部分数据漏报、错报、乃至上报失败等状况,导致所上报的应用程序数据不准确,数据分析结果出现偏差。
发明内容
有鉴于此,本发明提出一种数据上报方法及系统,能够在数据上报出现漏报、错报以及上报失败的状况时,及时定位上报出错的数据并进行修正,提高所上报数据的准确性。
首先,为实现上述目的,本发明提出一种移动终端,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据上报系统,所述数据上报系统被所述处理器执行时实现如下步骤:
通过软件开发工具包采集对应的应用程序的操作数据;
根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值;
将所述审计数据和所述操作数据上报至服务器。
可选地,所述将所述审计数据和所述操作数据上报至服务器,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的上报策略;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器。
可选地,所述将所述审计数据和所述操作数据上报至服务器,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的应用类型,所述应用类型包括紧急型应用和普通型应用;
根据所述应用类型确定对应的上报策略,所述上报策略包括实时上报和定期上报;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器;其中,当所述应用类型为紧急型应用时,所述上报策略包括通过预设的紧急接口实时上报所述审计数据和所述操作数据;当所述应用类型为普通型应用时,所述上报策略包括通过预设的普通接口定期上报所述审计数据和所述操作数据。
其次,为实现上述目的,本发明还提出一种服务器,所述服务器包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据上报系统,所述数据上报系统被所述处理器执行时实现如下步骤:
接收移动终端所上报的数据,所述数据包括应用程序的操作数据和审计数据;
根据所述审计数据判断所述操作数据是否异常;
在所述操作数据异常时,根据所述审计数据对所述操作数据进行修正;
根据修正后的操作数据生成数据报表并输出。
可选地,所述数据上报系统被所述处理器执行时还实现如下步骤:
获取移动终端内应用程序的应用标识,并为所述应用标识配置对应的应用类型和上报策略;其中,所述应用类型包括紧急型应用和普通型应用,所述上报策略包括实时上报和定期上报。
此外,为实现上述目的,本发明还提供一种数据上报方法,该方法应用于移动终端,所述方法包括:
通过软件开发工具包采集对应的应用程序的操作数据;
根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值;及
将所述审计数据和所述操作数据上报至服务器。
可选地,所述将所述审计数据和所述操作数据上报至服务器的步骤,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的上报策略;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器。
可选地,所述将所述审计数据和所述操作数据上报至服务器的步骤,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的应用类型,所述应用类型包括紧急型应用和普通型应用;
根据所述应用类型确定对应的上报策略,所述上报策略包括实时上报和定期上报;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器;其中,当所述应用类型为紧急型应用时,所述上报策略包括通过预设的紧急接口实时上报所述审计数据和所述操作数据;当所述应用类型为普通型应用时,所述上报策略包括通过预设的普通接口定期上报所述审计数据和所述操作数据。
进一步地,为实现上述目的,本发明还提供一种数据上报方法,该方法应用于服务器,所述方法包括:
接收移动终端所上报的数据,所述数据包括应用程序的操作数据和审计数据;
根据所述审计数据判断所述操作数据是否异常,并在所述操作数据异常时,根据所述审计数据对所述操作数据进行修正;及
根据修正后的操作数据生成数据报表并输出。
可选地,所述方法还包括:
获取移动终端内应用程序的应用标识,并为所述应用标识配置对应的应用类型和上报策略;其中,所述应用类型包括紧急型应用和普通型应用,所述上报策略包括实时上报和定期上报。
更近一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有数据上报系统,所述数据上报系统可被至少一个处理器执行,以使所述至少一个处理器执行上述数据上报方法的步骤
相较于现有技术,本发明所提出的移动终端、服务器、数据上报系统及数据上报方法,在移动终端侧,通过集成于应用程序内的软件开发工具包(SDK)采集移动终端内应用程序的操作数据,并根据所采集的操作数据生成对应的审计数据,进而将审计数据和操作数据一起上报给服务器。然后,在服务器侧,通过接收移动终端所上报的审计数据和操作数据,根据审计数据来校验操作数据是否异常,进而对异常的操作数据进行修正和输出。这样,通过服务器和移动终端的配合,既保证了数据上报工作的正常进行,又能够及时发现出现漏报、错报、以及上报失败的数据并修正,提高了上报数据的准确性。
附图说明
图1为实现本发明各个实施例一可选的移动终端的硬件结构示意图;
图2为如图1所示的移动终端的无线通信系统示意图;
图3为本发明数据上报系统各个实施例一可选的运行环境示意图;
图4为本发明数据上报系统第一实施例的模块示意图;
图5为本发明数据上报系统第二实施例的模块示意图;
图6和图7为本发明数据上报方法第一实施例的实施流程示意图;
图8为本发明数据上报方法第二实施例的实施流程示意图。
附图标记:
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现在将参考附图描述实现本发明各个实施例的移动终端400。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
移动终端400可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端400。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
图1为实现本发明各个实施例一可选的移动终端400的硬件结构示意图。
移动终端400可以包括,但不限于,存储器20、控制器30、无线通信单元40、显示单元50、输入单元60、接口单元80及电源单元90。图1示出了具有各种组件的移动终端400,但是应当理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端400的元件。
无线通信单元40通常包括一个或多个组件,其允许移动终端400与无线通信系统或网络之间的无线点通信。例如,无线通信单元可以包括广播接收模块、移动通信模块、无线互联网模块、短程通信模块和位置信息模块中的至少一个。
广播接收模块经由广播信道从外部广播管理服务器接收广播信号和/或广播相关信息。广播信道可以包括卫星信道和/或地面信道。广播管理服务器可以是生成并发送广播信号和/或广播相关信息的服务器或者接收之前生成的广播信号和/或广播相关信息并且将其发送给终端的服务器。广播信号可以包括TV广播信号、无线电广播信号、数据广播信号等等。而且,广播信号可以进一步包括与TV或无线电广播信号组合的广播信号。广播相关信息也可以经由移动通信网络提供,并且在该情况下,广播相关信息可以由移动通信模块来接收。广播信号可以以各种形式存在,例如,其可以以数字多媒体广播(DMB)的电子节目指南(EPG)、数字视频广播手持(DVB-H)的电子服务指南(ESG)等等的形式而存在。广播接收模块可以通过使用各种类型的广播系统接收信号广播。特别地,广播接收模块可以通过使用诸如多媒体广播-地面(DMB-T)、数字多媒体广播-卫星(DMB-S)、数字视频广播-手持(DVB-H),前向链路媒体(MediaFLO@)的数据广播系统、地面数字广播综合服务(ISDB-T)等等的数字广播系统接收数字广播。广播接收模块可以被构造为适合提供广播信号的各种广播系统以及上述数字广播系统。经由广播接收模块接收的广播信号和/或广播相关信息可以存储在存储器20(或者其它类型的存储介质)中。
移动通信模块将无线电信号发送到基站(例如,接入点、节点B等等)、外部终端以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。
无线互联网模块支持移动终端400的无线互联网接入。该模块可以内部或外部地耦接到终端。该模块所涉及的无线互联网接入技术可以包括WLAN(无线LAN)(Wi-Fi)、Wibro(无线宽带)、Wimax(全球微波互联接入)、HSDPA(高速下行链路分组接入)等等。
短程通信模块是用于支持短程通信的模块。短程通信技术的一些示例包括蓝牙TM、射频识别(RFID)、红外数据协会(IrDA)、超宽带(UWB)、紫蜂TM等等。
位置信息模块是用于检查或获取移动终端400的位置信息的模块。位置信息模块的典型示例是GPS(全球定位系统)。根据当前的技术,GPS模块计算来自三个或更多卫星的距离信息和准确的时间信息并且对于计算的信息应用三角测量法,从而根据经度、纬度和高度准确地计算三维当前位置信息。当前,用于计算位置和时间信息的方法使用三颗卫星并且通过使用另外的一颗卫星校正计算出的位置和时间信息的误差。此外,GPS模块能够通过实时地连续计算当前位置信息来计算速度信息。
输出单元50被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、警报信号、振动信号等等)。输出单元50可以包括显示单元51、音频输出模块52、警报单元53等等。
显示单元51可以显示在移动终端400中处理的信息。例如,当移动终端400处于电话通话模式时,显示单元51可以显示与通话或其它通信(例如,文本消息收发、多媒体文件下载等等)相关的用户界面(UI)或图形用户界面(GUI)。当移动终端400处于视频通话模式或者图像捕获模式时,显示单元51可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的UI或GUI等等。
同时,当显示单元51和触摸板以层的形式彼此叠加以形成触摸屏时,显示单元51可以用作输入装置和输出装置。显示单元51可以包括液晶显示器(LCD)、薄膜晶体管LCD(TFT-LCD)、有机发光二极管(OLED)显示器、柔性显示器、三维(3D)显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为TOLED(透明有机发光二极管)显示器等等。根据特定想要的实施方式,移动终端400可以包括两个或更多显示单元(或其它显示装置),例如,移动终端400可以包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸输入压力以及触摸输入位置和触摸输入面积。
音频输出模块52可以在移动终端400处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将无线通信单元40接收的或者在存储器20中存储的音频数据转换音频信号并且输出为声音。而且,音频输出模块52可以提供与移动终端400执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出模块52可以包括扬声器、蜂鸣器等等。
警报单元53可以提供输出以将事件的发生通知给移动终端400。典型的事件可以包括呼叫接收、消息接收、键信号输入、触摸输入等等。除了音频或视频输出之外,警报单元53可以以不同的方式提供输出以通知事件的发生。例如,警报单元53可以以振动的形式提供输出,当接收到呼叫、消息或一些其它进入通信(incoming communication)时,警报单元53可以提供触觉输出(即,振动)以将其通知给用户。通过提供这样的触觉输出,即使在用户的移动电话处于用户的口袋中时,用户也能够识别出各种事件的发生。警报单元53也可以经由显示单元51或音频输出模块52提供通知事件的发生的输出。
输入单元60可以根据用户输入的命令生成键输入数据以控制移动终端400的各种操作。输入单元60允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触摸板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等等。特别地,当触摸板以层的形式叠加在显示单元50上时,可以形成触摸屏。
接口单元80用作至少一个外部装置与移动终端400连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别模块可以是存储用于验证用户使用移动终端400的各种信息并且可以包括用户识别模块(UIM)、客户识别模块(SIM)、通用客户识别模块(USIM)等等。另外,具有识别模块的装置(下面称为"识别装置")可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与移动终端400连接。接口单元80可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端400内的一个或多个元件或者可以用于在移动终端400和外部装置之间传输数据。
另外,当移动终端400与外部底座连接时,接口单元80可以用作允许通过其将电力从底座提供到移动终端400的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端400的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端400是否准确地安装在底座上的信号。
存储器20可以存储由控制器30执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储器20可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。
存储器20可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。而且,移动终端400可以与通过网络连接执行存储器20的存储功能的网络存储装置协作。
控制器30通常控制移动终端的总体操作。例如,控制器30执行与语音通话、数据通信、视频通话等等相关的控制和处理。另外,控制器30可以包括用于再现(或回放)多媒体数据的多媒体模块,多媒体模块可以构造在控制器30内,或者可以构造为与控制器30分离。控制器30可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。
电源单元90在控制器30的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器30中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器20中并且由控制器30执行。
至此,己经按照其功能描述了移动终端400。下面,为了简要起见,将描述诸如折叠型、直板型、摆动型、滑动型移动终端400等等的各种类型的移动终端400中的滑动型移动终端400作为示例。因此,本发明能够应用于任何类型的移动终端400,并且不限于滑动型移动终端400。
如图1中所示的移动终端400可以被构造为利用经由帧或分组发送数据的诸如有线和无线通信系统以及基于卫星的通信系统来操作。
现在将参考图2描述其中根据本发明的移动终端400能够操作的通信系统。
这样的通信系统可以使用不同的空中接口和/或物理层。例如,由通信系统使用的空中接口包括例如频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)和通用移动通信系统(UMTS)(特别地,长期演进(LTE))、全球移动通信系统(GSM)等等。作为非限制性示例,下面的描述涉及CDMA通信系统,但是这样的教导同样适用于其它类型的系统。
参考图2,CDMA无线通信系统可以包括多个移动终端400、多个基站(BS)270、基站控制器(BSC)275和移动交换中心(MSC)280。MSC280被构造为与公共电话交换网络(PSTN)290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM,IP、PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的系统可以包括多个BSC2750。
每个BS270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天线覆盖的每个分区放射状地远离BS270。或者,每个分区可以由用于分集接收的两个或更多天线覆盖。每个BS270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱(例如,1.25MHz,5MHz等等)。
分区与频率分配的交叉可以被称为CDMA信道。BS270也可以被称为基站收发器子系统(BTS)或者其它等效术语。在这样的情况下,术语"基站"可以用于笼统地表示单个BSC275和至少一个BS270。基站也可以被称为"蜂窝站"。或者,特定BS270的各分区可以被称为多个蜂窝站。
如图2中所示,广播发射器(BT)295将广播信号发送给在系统内操作的移动终端400。如图1中所示的广播接收模块111被设置在移动终端400处以接收由BT295发送的广播信号。在图2中,示出了几个全球定位系统(GPS)卫星300。卫星300帮助定位多个移动终端400中的至少一个。
在图2中,描绘了多个卫星300,但是理解的是,可以利用任何数目的卫星获得有用的定位信息。如图1中所示的GPS模块115通常被构造为与卫星300配合以获得想要的定位信息。替代GPS跟踪技术或者在GPS跟踪技术之外,可以使用可以跟踪移动终端400的位置的其它技术。另外,至少一个GPS卫星300可以选择性地或者额外地处理卫星DMB传输。
作为无线通信系统的一个典型操作,BS270接收来自各种移动终端400的反向链路信号。移动终端400通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275。BSC提供通话资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270以将正向链路信号发送到移动终端400。
基于上述移动终端400硬件结构以及通信系统,提出本发明的各个实施例。
首先,本发明提出一种数据上报系统。
如图3所示,为本发明所述的数据上报系统的各个实施例一可选的运行环境示意图。本实施例中,所述数据上报系统可应用于包括,但不仅限于,移动终端400、服务器500的运行环境中。其中,所述移动终端400可以是移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动设备,以及诸如数字TV、台式计算机、笔记本、服务器等等的固定终端。所述服务器500可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备,该服务器500可以是独立的服务器,也可以是多个服务器所组成的服务器集群。所述移动终端400通过网络与所述服务器500通信连接。所述网络3可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
进一步地,所述移动终端400内安装有一个或多个应用程序,所述一个或多个应用程序均集成有用于进行数据采集的软件开发工具包(SDK)。当所述移动终端400运行所述数据上报系统时,该移动终端400通过集成于所述一个或多个应用程序内的软件开发工具包(SDK)分别采集对应的应用程序的操作数据,并根据所采集的操作数据生成对应的审计数据,进而通过所述移动终端400与所述服务器500之间的通信连接,将所生成的审计数据和所采集的操作数据一起上报至所述服务器500。对应地,当所述服务器500运行所述数据上报系统时,该服务器500接收所述移动终端400所上报的审计数据和操作数据,并根据所述审计数据校验所述操作数据是否异常,进而对异常的操作数据进行修正和输出,从而完成整个数据上报流程。
参阅图4所示,为本发明所述的数据上报系统第一实施例的功能模块示意图。在本实施例中,所述数据上报系统可以被分割成一个或多个模块,所述一个或多个模块被存储于所述存储设备(本实施例中为存储器)中,并由一个或多个控制器(本实施例中为所述处理器)所执行,以完成本发明。例如,在图4中,所述数据上报系统可以被分割成采集模块401、生成模块402、上报模块403、接收模块501、校验模块502、修正模块503、以及输出模块504。其中,所述模块401-403安装于所述移动终端400的存储器中,所述模块501-504安装于所述服务器500的存储器中。本发明所称的模块是指一种能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述软件在所述移动终端400和所述服务器500中的执行过程。以下将就上述各功能模块401-403、501-504的具体功能进行详细描述。其中:
所述采集模块401,用于在所述移动终端400开机后,通过集成于应用程序内的软件开发工具包(SDK)采集对应的应用程序的操作数据。
本实施例中,所述移动终端400内安装有一个或多个应用程序,所述操作数据是指移动终端用户在使用所述一个或多个应用程序时,对所述一个或多个应用程序进行操作以及在其显示界面上进行操作所产生的数据。该操作数据可包括,但不仅限于,应用程序的启动事件和启动次数、应用程序的会话事件和会话时长、应用程序的崩溃事件和崩溃次数、应用程序显示界面上的触摸事件和有效触摸次数、应用程序的运行时长等数据信息。需要说明的是,所述一个或多个应用程序内集成有用于数据采集的软件开发工具包(SDK),所述软件开发工具包(SDK)能够在用户对所述一个或多个应用程序进行操作时实时记录对应的应用程序的启动信息、页面信息、事件点击信息、CRASH信息、运行时长、有效点击次数等操作数据。故,本实施例中,所述采集模块401可以通过所述软件开发工具包(SDK)采集对应的应用程序的操作数据。
一般地,所述操作数据多表现为所述移动终端400在运行时所产生的事件的条数记录,且多记录在数据表中。例如,下表1示出了本实施例中所述采集模块401所采集的部分操作数据:
事件名称 事件数据 发生时间
事件A 1次 2017-03-27
事件B 1次 2017-03-27
事件A 1次 2017-03-27
表1
可以看出,表1中所记录的操作数据包括了在所述移动终端400运行时移动终端用户对该移动终端400进行操作所产生的事件A和事件B的信息。其中,事件A发生了2次,事件B产生了1次,事件发生的时间均为2017年的3月27日。
所述生成模块402,用于根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值。
一般地,所述采集模块401通过所述软件开发工具包(SDK)所采集的操作数据都是彼此独立且分散的。例如,在表1中,事件A第一次发生时,所述采集模块401在所述表1中新增一次事件A的操作数据记录;事件A再次发生时,所述采集模块401再在所述表1中新增一次事件A的操作数据记录,两次事件A的操作数据记录之间没有任何关联彼此独立。这样的操作数据记录方式,使得所述移动终端400向服务器500上报所采集的操作数据时,每一条被上报的操作数据之间无关联,若某一条操作数据出现漏报或者上报失败,则所述服务器500根本无法察觉。例如,若上表1中后一次事件A的数据上报漏报或上报失败,则所述服务器500只会接收到一次事件A的操作数据记录,造成服务器500端上报数据的异常,影响其准确性。
故,本实施例中,当采集到所述操作数据时,所述生成模块402根据所采集的操作数据生成对应的审计数据。其中,所述审计数据用于对所述移动终端400内所采集的应用程序的操作数据进行汇总统计,将相同类型的操作数据(例如同一事件的数据)汇总至一条操作数据记录内,该操作数据记录包括所述操作数据的特征值,用以在后续向所述服务器500上报对应的操作数据时,同时上报该审计数据至所述服务器500,以使所述服务器500能够根据所述审计数据内的特征值来校验所述操作数据是否出现漏报、错报、或者上报失败等状况。其中,所述特征值可以是如上表2中所记录的所述操作数据的条数,也可以是其他任何能够表征所述操作数据特征的参数值。
需要说明的是,所述审计数据的生成方式可以是根据所述服务器500对所述移动终端400配置的操作数据上报策略而确定或者由移动终端用户自定义。例如,所述审计数据可以是在每次上报所述操作数据之前,通过对所采集的操作数据进行汇总统计而生成;也可以是在每次有操作数据被采集到的同时就实时根据被采集的操作数据来生成对应的审计数据,此处实时生成的审计数据包括所述移动终端400内产生新事件时新增的审计数据和所述移动终端400已有事件再次发生时在原有审计数据基础上进行更新的审计数据等。
举例而言,针对于上文所述的表1,所述生成模块402所生成的审计数据可以如下表2所示:
事件名称 事件数据 发生时间
事件A 2次 2017-03-27
事件B 1次 2017-03-27
表2
可以看出,表2所示的审计数据将前文表1所示的操作数据进行了汇总处理,重复发生过两次的事件A的操作数据被汇总为了一条操作数据记录,其中事件数据2次即为所述事件A的操作数据的特征值。
所述上报模块403,用于将所述审计数据和所述操作数据上报至所述服务器500。
一般地,所述服务器500会针对于所述移动终端400预先配置好该移动终端400向该服务器500进行数据上报的上报策略,并下发所述上报策略至所述移动终端400。因此,本实施例中,所述上报模块400可以根据从所述服务器500所接收到的上报策略将所采集的所述操作数据和与之对应的所述审计数据通过所述服务器500与所述移动终端400之间的通信连接,一起上报至所述服务器500。
以上详细描述了运行于所述移动终端400内的功能模块401-403对应用程序的操作数据进行采集和上报的工作过程。如下将就运行于所述服务器500内的功能模块501-504的工作流程就详细描述:
所述接收模块501,用于接收所述移动终端400所上报的数据,所述数据包括所述操作数据和所述审计数据。
所述校验模块502,用于根据所述审计数据判断所述操作数据是否异常。
从上文可以看出,所述审计数据是对所述操作数据进行汇总统计而生成的,该审计数据记录了所述操作数据的特征值,所述特征值表征了所述移动终端400所采集的上报数据的特征,例如某事件数据的条数等。故。本实施例中,所述校验模块502可以读取所述审计数据内所记载的特征值,进而根据所述特征值校验核对对应的所述操作数据是否与所述审计数据的特征值相匹配。若所述操作数据与所述审计数据的特征值相匹配,则所述校验模块502判定所述操作数据正常;若所述操作数据与所述审计数据的特征值不匹配,则所述校验模块502判定所述操作数据异常,所述异常包括漏报、错报和上报失败等。
具体而言,参上表1和表2所示,假设所述移动终端400的上报模块403在进行数据上报时,同时向所述服务器500上报了上表1中所记录的操作数据和上表2所记载的审计数据,所述服务器500的接收模块501接收了所述操作数据和所述审计数据,而所述校验模块502校验发现,所接收的上报数据中事件A的操作数据记录仅上报了一条,则该校验模块502可判定所述移动终端400所上报的数据异常,可能存在漏报。优选地,当所述移动终端400所上报的数据异常时,所述校验模块502还可以根据所述审计数据对所述操作数据进行遍历查询和比对,在所述操作数据中标识出具体的异常操作数据,即与所述审计数据内记载的特征值不匹配的操作数据。
所述修正模块503,用于在所述操作数据异常时,根据所述审计数据对所述操作数据进行修正。
本实施例中,当发现所述移动终端400所上报的数据出现异常时,所述修正模块503可以对异常的操作数据进行修正。具体地,所述修正模块503获取所述操作数据中的异常操作数据,并从所述审计数据中查询与该异常操作数据对应的特征值,进而根据所述特征值计算出对应的校准值,并将所述校准值以新增字段的形式插入至与所述异常操作数据对应的结果数据中,以便于后续在所述服务器500将所述操作数据的结果输出时,对所述异常操作数据进行特定的处理后再输出。需要说明的是,所述结束数据是指所述服务器500根据用户的设定对所述上报数据进行加工处理后所生成的数据,该数据包括但并不仅限于所述操作数据。
举例而言,下表3示出了本实施例中的一结果数据:
表3
从上表3可以看出,所述服务器500所接收的上报数据内与事件A相关的操作数据出现了异常,所述修正模块503根据对应的审计数据得出所述事件A的操作数据条数应该为2条,而在所述服务器500生成的结果数据查询到上报的事件A的操作数据仅为1条。因此,所述修正模块503可以计算得出所述校准值为1,进而在上表3中与事件A对应的结果数据内新增了异常修正字段,在该异常修正字段内写入出了遗漏的事件A的条数为+1(即需要增加1条,对应的-1表示需要减少1条)。
需要补充的是,本实施例中对异常操作数据的修正并不仅限于上述的修正方式。在其他实施例中,还可以根据不同的操作数据类型专门预先设定不同的偏差值(例如事件A的偏差值为a%;事件B的偏差值为b%),所述偏差值用于衡量在对应的操作数据出现的异常的是否需要修正。具体地,若所述审计数据内记载的操作数据与所述服务器500所接收到的操作数据不匹配,且两者的偏差值未超出预设的偏差值,则所述修正模块503不对所述操作数据进行上述修正。反之,若所述审计数据内记载的操作数据与所述服务器500所接收到的操作数据不匹配,且两者的偏差值超出预设的偏差值,则所述修正模块503对所述操作数据进行上述修正。举例而言,若预设设定的事件A允许的偏差值为2%,且在数据上报时所述审计数据中记载事件A发生了100次,而所述服务器500仅接收到了90条事件A的操作数据记录,则经计算可以得出此次数据上报中事件A的偏差值为10%;由于10%超出了可允许的偏差值2%,故,所述修正模块503会对事件A的操作数据进行上述修正。
所述输出模块504,用于根据修正后的操作数据生成数据报表并输出。
从前文可知,所述服务器500通过所述移动终端400对各个应用程序的操作数据进行采集的目的,是为了根据所述操作数据分析得出移动终端用户的使用习惯和应用程序本身的运行状态等信息(例如应用程序被使用的频次较多和被使用频次较少的都是哪些功能、应用程序运行是否经常崩溃等),进而为应用程序的开发和设计工作提供数据支持。因此,本实施例中,当所述移动终端400所上报的数据中的异常操作数据被修正后,所述输出模块504根据修正后的所述操作数据和服务器用户的输出设定,生成对应的上报数据报表并进行输出,以便服务器用户查看。
通过上述功能模块401-403和501-504,本发明所提出的数据上报系统,通过集成于应用程序内的软件开发工具包(SDK)采集移动终端400内应用程序的操作数据,并根据所采集的操作数据生成对应的审计数据,进而将审计数据和操作数据一起上报给服务器500。然后,在服务器500接收移动终端400所上报的审计数据和操作数据后,根据审计数据来校验操作数据是否异常,进而对异常的操作数据进行修正和输出。这样,通过服务器500和移动终端400的配合,既保证了数据上报工作的正常进行,又能够及时发现出现漏报、错报、以及上报失败的数据并修正,提高了上报数据的准确性。
进一步地,基于上述本发明数据上报系统的第一实施例,提出本发明数据上报系统的第二实施例。
如图5所示,是本发明数据上报系统的第二实施例的模块示意图。在本实施例中,所述服务器500内的数据上报系统还包括配置模块505,其中:
所述配置模块505,用于获取所述移动终端400内应用程序的应用标识,并为所述应用标识配置对应的应用类型和上报策略。
本实施例中,所述服务器500可以预先针对于与之通信连接的移动终端400内所安装的应用程序,设定不同的数据上报策略,然后将所设定的数据上报策略下发至所述移动终端400,以使该移动终端400的以所下发的数据上报策略来上报所述应用程序的数据。其中,不同的应用程序可采用其包名作为其应用程序标识,进而为其设定不同的数据上报策略。
具体地,在一些实施例中,所述服务器500的配置模块505可以首先获取所述移动终端400内所安装应用程序,根据所述应用程序的功能将其分为不同的应用程序类型。所述应用程序类型可包括,但不仅限于,娱乐视频类应用(例如腾讯视频、爱奇艺)、通讯类应用(例如QQ、微信)、工具类应用(例如天气、时钟)等。然后根据所述服务器用户的数据采集需求,为不同类型的应用程序设定不同的数据上报策略。例如,可以设定娱乐视频类应用和工具类应用的操作数据不允许上报,通讯类应用的操作数据允许上报并设定特定的上报策略等。这样,可以满足服务器用户对所述移动终端400内所安装的特定类型的应用程序的操作数据的数据采集需求。
需要补充的是,本实施例中,所述服务器500的配置模块505还可以是根据服务器用户对不同应用程序操作数据的数据采集的紧急程度,来为不同的应用程序设定不同的上报策略。具体地,所述配置模块505可以服务器用户的业务需求,将所述应用程序分的应用类型分为紧急型应用和普通型应用。所述紧急型应用可以是服务器用户即将开发新版本或者即将发布新版本的类型的应用等,针对于该类型的应用,服务器用户急需采集大量的移动终端用户操作数据来分析判断是否需要对新版本应用进行发布或开发前的最后调整。因此,针对于所述紧急型应用,所述配置模块505可以设定其数据上报策略为实时上报,即只要移动终端400采集到所述操作数据就将所述操作数据和对应的审计数据上报至所述服务器500。而就所述普通型应用而言,由于其服务器用户对其数据上报的需求并不迫切,故所述配置模块505可以设定一个常规的频率进行定期数据上报即可(例如一天上报一次等)。
进一步地,在另一些实施例中,所述服务器500的配置模块505还可以首先获取所述移动终端400内所安装应用程序,然后根据所述服务器用户的数据采集需求,针对于每一款所述应用程序单独设定数据上报策略。例如,针对于QQ设定第一上报策略、针对于微信设定第二上报策略等。这样,可以满足服务器用户对所述移动终端400内所安装的每一款应用程序的操作数据的数据采集需求。
一些实施例中,所述配置模块404为所述移动终端400内安装的应用程序设定上报策略的配置表可以如下表4所示:
应用名称 应用包名 上报策略
QQ com.tencent.mobileqq 实时上报
微信 com.tencent.mobileweixin 允许上报
搜狗输入法 com.sohu.inputmethod.sogou 定期上报
…… …… ……
表4
相应地,在一些实施例中,所述移动终端400的所述上报模块403,还用于获取所述应用程序的应用标识和与所述应用标识相对应的上报策略;以及根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器。
本实施例中,若所述服务器500预先配置是上报策略是针对于所述移动终端400内的每一个应用程序单独设定的,则所述上报模块403在执行数据上报操作前,首先获取与所上报数据对应的应用程序的应用标识,所述应用标识包括应用程序包名;然后根据所述应用标识查询所述服务器500所下发的上报策略配置表中与所述应用标识对应的上报策略;进而根据所查询的上报策略向所述服务器500上报所述应用程序的操作数据。
若所述服务器500预先配置是上报策略是针对于所述移动终端400内的不同类型的应用程序而设定的,则所述上报模块403在执行数据上报操作前,首先获取与所上报数据对应的应用程序的应用标识,所述应用标识包括应用程序包名;然后根据所述应用标识查询所述服务器500所下发的上报策略配置表中与所述应用标识对应的应用程序类型;接着根据所述应用程序类型查询对应的上报策略;进而根据所查询的上报策略向所述服务器500上报所述应用程序的操作数据。需要指出的是,当所述应用类型为紧急型应用时,所述上报策略包括通过预设的紧急接口实时上报所述应用程序的审计数据和操作数据;当所述应用类型为普通型应用时,所述上报策略包括通过预设的普通接口定期上报所述应用程序的审计数据和操作数据。其中,所述紧急接口和所述普通接口可以预先通过软件开发工具包(SDK)进行设置。
通过上述功能模块505和403,本发明所提出的数据上报系统,通过预先在服务器500中针对于移动终端400所安装的应用程序进行上报策略的配置,使得不同的应用程序的上报数据可以采用不同的上报策略来进行数据上报工作,满足了服务器用户的不同数据采集需求。
此外,本发明还提出一种数据上报方法。
如图6和图7所示,为本发明数据上报方法第一实施例的实施流程示意图。在本实施例中,根据不同的需求,图6和图7所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。所述数据上报方法包括:
步骤S601,在所述移动终端400开机后,通过集成于应用程序内的软件开发工具包(SDK)采集对应的应用程序的操作数据。
本实施例中,所述移动终端400内安装有一个或多个应用程序,所述操作数据是指移动终端用户在使用所述一个或多个应用程序时,对所述一个或多个应用程序进行操作以及在其显示界面上进行操作所产生的数据。该操作数据可包括,但不仅限于,应用程序的启动事件和启动次数、应用程序的会话事件和会话时长、应用程序的崩溃事件和崩溃次数、应用程序显示界面上的触摸事件和有效触摸次数、应用程序的运行时长等数据信息。需要说明的是,所述一个或多个应用程序内集成有用于数据采集的软件开发工具包(SDK),所述软件开发工具包(SDK)能够在用户对所述一个或多个应用程序进行操作时实时记录对应的应用程序的启动信息、页面信息、事件点击信息、CRASH信息、运行时长、有效点击次数等操作数据。故,本实施例可以通过所述软件开发工具包(SDK)采集对应的应用程序的操作数据。
一般地,所述操作数据多表现为所述移动终端400在运行时所产生的事件的条数记录,且多记录在数据表中。例如,下表1示出了本实施例所采集的部分操作数据:
表1
可以看出,表1中所记录的操作数据包括了在所述移动终端400运行时移动终端用户对该移动终端400进行操作所产生的事件A和事件B的信息。其中,事件A发生了2次,事件B产生了1次,事件发生的时间均为2017年的3月27日。
步骤S602,根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值。
一般地,通过所述软件开发工具包(SDK)所采集的操作数据都是彼此独立且分散的。例如,在表1中,事件A第一次发生时,在所述表1中新增一次事件A的操作数据记录;事件A再次发生时,再在所述表1中新增一次事件A的操作数据记录,两次事件A的操作数据记录之间没有任何关联彼此独立。这样的操作数据记录方式,使得所述移动终端400向服务器500上报所采集的操作数据时,每一条被上报的操作数据之间无关联,若某一条操作数据出现漏报或者上报失败,则所述服务器500根本无法察觉。例如,若上表1中后一次事件A的数据上报漏报或上报失败,则所述服务器500只会接收到一次事件A的操作数据记录,造成服务器500端上报数据的异常,影响其准确性。
故,当采集到所述操作数据时,本实施例根据所采集的操作数据生成对应的审计数据。其中,所述审计数据用于对所述移动终端400内所采集的应用程序的操作数据进行汇总统计,将相同类型的操作数据(例如同一事件的数据)汇总至一条操作数据记录内,该操作数据记录包括所述操作数据的特征值,用以在后续向所述服务器500上报对应的操作数据时,同时上报该审计数据至所述服务器500,以使所述服务器500能够根据所述审计数据内的特征值来校验所述操作数据是否出现漏报、错报、或者上报失败等状况。其中,所述特征值可以是如上表2中所记录的所述操作数据的条数,也可以是其他任何能够表征所述操作数据特征的参数值。
需要说明的是,所述审计数据的生成方式可以是根据所述服务器500对所述移动终端400配置的操作数据上报策略而确定或者由移动终端用户自定义。例如,所述审计数据可以是在每次上报所述操作数据之前,通过对所采集的操作数据进行汇总统计而生成;也可以是在每次有操作数据被采集到的同时就实时根据被采集的操作数据来生成对应的审计数据,此处实时生成的审计数据包括所述移动终端400内产生新事件时新增的审计数据和所述移动终端400已有事件再次发生时在原有审计数据基础上进行更新的审计数据等。
举例而言,针对于上文所述的表1,所生成的审计数据可以如下表2所示:
事件名称 事件数据 发生时间
事件A 2次 2017-03-27
事件B 1次 2017-03-27
表2
可以看出,表2所示的审计数据将前文表1所示的操作数据进行了汇总处理,重复发生过两次的事件A的操作数据被汇总为了一条操作数据记录,其中事件数据2次即为所述事件A的操作数据的特征值。
步骤S603,将所述审计数据和所述操作数据上报至所述服务器500。
一般地,所述服务器500会针对于所述移动终端400预先配置好该移动终端400向该服务器500进行数据上报的上报策略,并下发所述上报策略至所述移动终端400。因此,本实施例可以根据从所述服务器500所接收到的上报策略将所采集的所述操作数据和与之对应的所述审计数据通过所述服务器500与所述移动终端400之间的通信连接,一起上报至所述服务器500。
以上步骤S601-S603详细描述了所述移动终端400对应用程序的操作数据进行采集和上报的工作过程。如下,将就所述服务器500的工作流程进行详细描述:
步骤S604,接收所述移动终端400所上报的数据,所述数据包括所述操作数据和所述审计数据。
步骤S605,根据所述审计数据判断所述操作数据是否异常。
从上文可以看出,所述审计数据是对所述操作数据进行汇总统计而生成的,该审计数据记录了所述操作数据的特征值,所述特征值表征了所述移动终端400所采集的上报数据的特征,例如某事件数据的条数等。故。本实施例可以读取所述审计数据内所记载的特征值,进而根据所述特征值校验核对对应的所述操作数据是否与所述审计数据的特征值相匹配。若所述操作数据与所述审计数据的特征值相匹配,则判定所述操作数据正常;若所述操作数据与所述审计数据的特征值不匹配,则判定所述操作数据异常,所述异常包括漏报、错报和上报失败等。
具体而言,参上表1和表2所示,假设所述移动终端400在进行数据上报时,同时向所述服务器500上报了上表1中所记录的操作数据和上表2所记载的审计数据,所述服务器500接收了所述操作数据和所述审计数据,校验发现,所接收的上报数据中事件A的操作数据记录仅上报了一条,则可判定所述移动终端400所上报的数据异常,可能存在漏报。优选地,当所述移动终端400所上报的数据异常时,还可以根据所述审计数据对所述操作数据进行遍历查询和比对,在所述操作数据中标识出具体的异常操作数据,即与所述审计数据内记载的特征值不匹配的操作数据。
步骤S606,在所述操作数据异常时,根据所述审计数据对所述操作数据进行修正。
本实施例中,当发现所述移动终端400所上报的数据出现异常时,可以对异常的操作数据进行修正。具体地,获取所述操作数据中的异常操作数据,并从所述审计数据中查询与该异常操作数据对应的特征值,进而根据所述特征值计算出对应的校准值,并将所述校准值以新增字段的形式插入至与所述异常操作数据对应的结果数据中,以便于后续在所述服务器500将所述操作数据的结果输出时,对所述异常操作数据进行特定的处理后再输出。需要说明的是,所述结束数据是指所述服务器500根据用户的设定对所述上报数据进行加工处理后所生成的数据,该数据包括但并不仅限于所述操作数据。
举例而言,下表3示出了本实施例中的一结果数据:
事件名称 事件数据 发生时间 异常修正
事件A 1次 2017-03-27 +1次
事件B 1次 2017-03-27
表3
从上表3可以看出,所述服务器500所接收的上报数据内与事件A相关的操作数据出现了异常,根据对应的审计数据得出所述事件A的操作数据条数应该为2条,而在所述服务器500生成的结果数据查询到上报的事件A的操作数据仅为1条。因此,可以计算得出所述校准值为1,进而在上表3中与事件A对应的结果数据内新增了异常修正字段,在该异常修正字段内写入出了遗漏的事件A的条数为+1(即需要增加1条,对应的-1表示需要减少1条)。
需要补充的是,本实施例中对异常操作数据的修正并不仅限于上述的修正方式。在其他实施例中,还可以根据不同的操作数据类型专门预先设定不同的偏差值(例如事件A的偏差值为a%;事件B的偏差值为b%),所述偏差值用于衡量在对应的操作数据出现的异常的是否需要修正。具体地,若所述审计数据内记载的操作数据与所述服务器500所接收到的操作数据不匹配,且两者的偏差值未超出预设的偏差值,则不对所述操作数据进行上述修正。反之,若所述审计数据内记载的操作数据与所述服务器500所接收到的操作数据不匹配,且两者的偏差值超出预设的偏差值,则对所述操作数据进行上述修正。举例而言,若预设设定的事件A允许的偏差值为2%,且在数据上报时所述审计数据中记载事件A发生了100次,而所述服务器500仅接收到了90条事件A的操作数据记录,则经计算可以得出此次数据上报中事件A的偏差值为10%;由于10%超出了可允许的偏差值2%,故,需要对事件A的操作数据进行上述修正。
步骤S607,根据修正后的操作数据生成数据报表并输出。
从前文可知,所述服务器500通过所述移动终端400对各个应用程序的操作数据进行采集的目的,是为了根据所述操作数据分析得出移动终端用户的使用习惯和应用程序本身的运行状态等信息(例如应用程序被使用的频次较多和被使用频次较少的都是哪些功能、应用程序运行是否经常崩溃等),进而为应用程序的开发和设计工作提供数据支持。因此,当所述移动终端400所上报的数据中的异常操作数据被修正后,本实施例可以根据修正后的所述操作数据和服务器用户的输出设定,生成对应的上报数据报表并进行输出,以便服务器用户查看。
通过上述步骤S601-S607,本发明所提出的数据上报方法,通过集成于应用程序内的软件开发工具包(SDK)采集移动终端400内应用程序的操作数据,并根据所采集的操作数据生成对应的审计数据,进而将审计数据和操作数据一起上报给服务器500。然后,在服务器500接收移动终端400所上报的审计数据和操作数据后,根据审计数据来校验操作数据是否异常,进而对异常的操作数据进行修正和输出。这样,通过服务器500和移动终端400的配合,既保证了数据上报工作的正常进行,又能够及时发现出现漏报、错报、以及上报失败的数据并修正,提高了上报数据的准确性。
进一步地,基于上述本发明数据上报方法的第一实施例,提出本发明数据上报方法的第二实施例。
如图8所示,是本发明数据上报方法的第二实施例的实施流程示意图。本实施例中,所述数据上报方法还包括:
步骤S801,获取所述移动终端400内应用程序的应用标识,并为所述应用标识配置对应的应用类型和上报策略。
本实施例中,所述服务器500可以预先针对于与之通信连接的移动终端400内所安装的应用程序,设定不同的数据上报策略,然后将所设定的数据上报策略下发至所述移动终端400,以使该移动终端400的以所下发的数据上报策略来上报所述应用程序的数据。其中,不同的应用程序可采用其包名作为其应用程序标识,进而为其设定不同的数据上报策略。
具体地,在一些实施例中,可以首先获取所述移动终端400内所安装应用程序,根据所述应用程序的功能将其分为不同的应用程序类型。所述应用程序类型可包括,但不仅限于,娱乐视频类应用(例如腾讯视频、爱奇艺)、通讯类应用(例如QQ、微信)、工具类应用(例如天气、时钟)等。然后根据所述服务器用户的数据采集需求,为不同类型的应用程序设定不同的数据上报策略。例如,可以设定娱乐视频类应用和工具类应用的操作数据不允许上报,通讯类应用的操作数据允许上报并设定特定的上报策略等。这样,可以满足服务器用户对所述移动终端400内所安装的特定类型的应用程序的操作数据的数据采集需求。
需要补充的是,本实施例中,还可以是根据服务器用户对不同应用程序操作数据的数据采集的紧急程度,来为不同的应用程序设定不同的上报策略。具体地,可以服务器用户的业务需求,将所述应用程序分的应用类型分为紧急型应用和普通型应用。所述紧急型应用可以是服务器用户即将开发新版本或者即将发布新版本的类型的应用等,针对于该类型的应用,服务器用户急需采集大量的移动终端用户操作数据来分析判断是否需要对新版本应用进行发布或开发前的最后调整。因此,针对于所述紧急型应用,可以设定其数据上报策略为实时上报,即只要移动终端400采集到所述操作数据就将所述操作数据和对应的审计数据上报至所述服务器500。而就所述普通型应用而言,由于其服务器用户对其数据上报的需求并不迫切,故可以设定一个常规的频率进行定期数据上报即可(例如一天上报一次等)。
进一步地,在另一些实施例中,还可以首先获取所述移动终端400内所安装应用程序,然后根据所述服务器用户的数据采集需求,针对于每一款所述应用程序单独设定数据上报策略。例如,针对于QQ设定第一上报策略、针对于微信设定第二上报策略等。这样,可以满足服务器用户对所述移动终端400内所安装的每一款应用程序的操作数据的数据采集需求。
一些实施例为所述移动终端400内安装的应用程序设定上报策略的配置表可以如下表4所示:
应用名称 应用包名 上报策略
QQ com.tencent.mobileqq 实时上报
微信 com.tencent.mobileweixin 允许上报
搜狗输入法 com.sohu.inputmethod.sogou 定期上报
…… …… ……
表4
步骤S802,在数据上报时,获取应用程序的应用标识和与所述应用标识相对应的上报策略,并根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器。
本实施例中,若所述服务器500预先配置是上报策略是针对于所述移动终端400内的每一个应用程序单独设定的,则在执行数据上报操作前,首先获取与所上报数据对应的应用程序的应用标识,所述应用标识包括应用程序包名;然后根据所述应用标识查询所述服务器500所下发的上报策略配置表中与所述应用标识对应的上报策略;进而根据所查询的上报策略向所述服务器500上报所述应用程序的操作数据。
若所述服务器500预先配置是上报策略是针对于所述移动终端400内的不同类型的应用程序而设定的,则在执行数据上报操作前,首先获取与所上报数据对应的应用程序的应用标识,所述应用标识包括应用程序包名;然后根据所述应用标识查询所述服务器500所下发的上报策略配置表中与所述应用标识对应的应用程序类型;接着根据所述应用程序类型查询对应的上报策略;进而根据所查询的上报策略向所述服务器500上报所述应用程序的操作数据。需要指出的是,当所述应用类型为紧急型应用时,所述上报策略包括通过预设的紧急接口实时上报所述应用程序的审计数据和操作数据;当所述应用类型为普通型应用时,所述上报策略包括通过预设的普通接口定期上报所述应用程序的审计数据和操作数据。其中,所述紧急接口和所述普通接口可以预先通过软件开发工具包(SDK)进行设置。
通过上述步骤S801-S802,本发明所提出的数据上报方法,通过预先在服务器500中针对于移动终端400所安装的应用程序进行上报策略的配置,使得不同的应用程序的上报数据可以采用不同的上报策略来进行数据上报工作,满足了服务器用户的不同数据采集需求。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种数据上报方法,应用于移动终端,其特征在于,所述方法包括:
通过软件开发工具包采集对应的应用程序的操作数据;
根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值;及
将所述审计数据和所述操作数据上报至服务器。
2.如权利要求1所述的数据上报方法,其特征在于,所述将所述审计数据和所述操作数据上报至服务器的步骤,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的上报策略;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器。
3.如权利要求1所述的数据上报方法,其特征在于,所述将所述审计数据和所述操作数据上报至服务器的步骤,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的应用类型,所述应用类型包括紧急型应用和普通型应用;
根据所述应用类型确定对应的上报策略,所述上报策略包括实时上报和定期上报;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器;其中,当所述应用类型为紧急型应用时,所述上报策略包括通过预设的紧急接口实时上报所述审计数据和所述操作数据;当所述应用类型为普通型应用时,所述上报策略包括通过预设的普通接口定期上报所述审计数据和所述操作数据。
4.一种数据上报方法,应用于服务器,其特征在于,所述方法包括:
接收移动终端所上报的数据,所述数据包括应用程序的操作数据和审计数据;
根据所述审计数据判断所述操作数据是否异常,并在所述操作数据异常时,根据所述审计数据对所述操作数据进行修正;及
根据修正后的操作数据生成数据报表并输出。
5.一种计算机可读存储介质,所述计算机可读存储介质存储有数据上报系统,所述数据上报系统可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-4中任一项所述的数据上报方法的步骤。
6.一种移动终端,其特征在于,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据上报系统,所述数据上报系统被所述处理器执行时实现如下步骤:
通过软件开发工具包采集对应的应用程序的操作数据;
根据所述操作数据生成对应的审计数据,所述审计数据记录有所述操作数据的特征值;
将所述审计数据和所述操作数据上报至服务器。
7.如权利要求6所述的移动终端,其特征在于,所述将所述审计数据和所述操作数据上报至服务器,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的上报策略;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器。
8.如权利要求6所述的移动终端,其特征在于,所述将所述审计数据和所述操作数据上报至服务器,具体包括:
获取所述应用程序的应用标识和与所述应用标识相对应的应用类型,所述应用类型包括紧急型应用和普通型应用;
根据所述应用类型确定对应的上报策略,所述上报策略包括实时上报和定期上报;
根据所述上报策略将与所述应用标识对应的所述审计数据和所述操作数据上报至服务器;其中,当所述应用类型为紧急型应用时,所述上报策略包括通过预设的紧急接口实时上报所述审计数据和所述操作数据;当所述应用类型为普通型应用时,所述上报策略包括通过预设的普通接口定期上报所述审计数据和所述操作数据。
9.一种服务器,其特征在于,所述服务器包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据上报系统,所述数据上报系统被所述处理器执行时实现如下步骤:
接收移动终端所上报的数据,所述数据包括应用程序的操作数据和审计数据;
根据所述审计数据判断所述操作数据是否异常;
在所述操作数据异常时,根据所述审计数据对所述操作数据进行修正;
根据修正后的操作数据生成数据报表并输出。
10.如权利要求9所述的服务器,其特征在于,所述数据上报系统被所述处理器执行时还实现如下步骤:
获取移动终端内应用程序的应用标识,并为所述应用标识配置对应的应用类型和上报策略;其中,所述应用类型包括紧急型应用和普通型应用,所述上报策略包括实时上报和定期上报。
CN201710498277.5A 2017-06-27 2017-06-27 数据上报方法及系统 Withdrawn CN107343091A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710498277.5A CN107343091A (zh) 2017-06-27 2017-06-27 数据上报方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710498277.5A CN107343091A (zh) 2017-06-27 2017-06-27 数据上报方法及系统

Publications (1)

Publication Number Publication Date
CN107343091A true CN107343091A (zh) 2017-11-10

Family

ID=60220990

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710498277.5A Withdrawn CN107343091A (zh) 2017-06-27 2017-06-27 数据上报方法及系统

Country Status (1)

Country Link
CN (1) CN107343091A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108200546A (zh) * 2017-12-27 2018-06-22 广东欧珀移动通信有限公司 数据上报方法、装置、移动终端及计算机可读介质
CN108363658A (zh) * 2018-02-06 2018-08-03 四川虹美智能科技有限公司 一种用户行为数据采集方法、智能终端、服务端及系统
CN108882223A (zh) * 2018-05-30 2018-11-23 努比亚技术有限公司 应用数据上报方法、移动终端及计算机可读存储介质
WO2019128392A1 (zh) * 2017-12-29 2019-07-04 北京三快在线科技有限公司 提取业务字段的方法、装置、电子设备及存储介质
CN111767201A (zh) * 2020-06-29 2020-10-13 百度在线网络技术(北京)有限公司 用户行为分析方法、终端设备、服务器及存储介质
CN113642912A (zh) * 2021-08-23 2021-11-12 重庆允成互联网科技有限公司 一种报工防错方法、系统、设备及存储介质
CN113778801A (zh) * 2021-09-14 2021-12-10 珠海格力电器股份有限公司 启动事件上报方法、装置、电子设备及存储介质
CN113835921A (zh) * 2021-09-29 2021-12-24 平安普惠企业管理有限公司 接口服务异常的处理方法、装置、设备和存储介质
US11500798B2 (en) 2019-02-26 2022-11-15 Asustek Computer Inc. Data transmission device, data transmission method and non-transitory computer readable medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063308A (zh) * 2013-03-20 2014-09-24 腾讯科技(深圳)有限公司 数据的验证方法及装置
CN104735139A (zh) * 2015-03-11 2015-06-24 小米科技有限责任公司 终端信息统计方法、装置、终端及服务器
CN104899325A (zh) * 2015-06-19 2015-09-09 上海卓悠网络科技有限公司 一种app采集数据的收集方法、终端、服务器及系统
US20150293834A1 (en) * 2014-04-11 2015-10-15 Synechron Holdings, Inc. Methods, Apparatus, and Computer Readable Media for Providing a Governance Framework for Declarative Rule Based Programming
CN105376335A (zh) * 2015-12-15 2016-03-02 北京奇虎科技有限公司 一种采集数据上传方法和装置
CN106027415A (zh) * 2016-05-25 2016-10-12 努比亚技术有限公司 数据上报装置及方法
CN106407077A (zh) * 2016-09-21 2017-02-15 广州华多网络科技有限公司 一种实时告警方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063308A (zh) * 2013-03-20 2014-09-24 腾讯科技(深圳)有限公司 数据的验证方法及装置
US20150293834A1 (en) * 2014-04-11 2015-10-15 Synechron Holdings, Inc. Methods, Apparatus, and Computer Readable Media for Providing a Governance Framework for Declarative Rule Based Programming
CN104735139A (zh) * 2015-03-11 2015-06-24 小米科技有限责任公司 终端信息统计方法、装置、终端及服务器
CN104899325A (zh) * 2015-06-19 2015-09-09 上海卓悠网络科技有限公司 一种app采集数据的收集方法、终端、服务器及系统
CN105376335A (zh) * 2015-12-15 2016-03-02 北京奇虎科技有限公司 一种采集数据上传方法和装置
CN106027415A (zh) * 2016-05-25 2016-10-12 努比亚技术有限公司 数据上报装置及方法
CN106407077A (zh) * 2016-09-21 2017-02-15 广州华多网络科技有限公司 一种实时告警方法及系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108200546A (zh) * 2017-12-27 2018-06-22 广东欧珀移动通信有限公司 数据上报方法、装置、移动终端及计算机可读介质
WO2019128392A1 (zh) * 2017-12-29 2019-07-04 北京三快在线科技有限公司 提取业务字段的方法、装置、电子设备及存储介质
CN108363658B (zh) * 2018-02-06 2021-06-11 四川虹美智能科技有限公司 一种用户行为数据采集方法、智能终端、服务端及系统
CN108363658A (zh) * 2018-02-06 2018-08-03 四川虹美智能科技有限公司 一种用户行为数据采集方法、智能终端、服务端及系统
CN108882223A (zh) * 2018-05-30 2018-11-23 努比亚技术有限公司 应用数据上报方法、移动终端及计算机可读存储介质
US11500798B2 (en) 2019-02-26 2022-11-15 Asustek Computer Inc. Data transmission device, data transmission method and non-transitory computer readable medium
CN111767201A (zh) * 2020-06-29 2020-10-13 百度在线网络技术(北京)有限公司 用户行为分析方法、终端设备、服务器及存储介质
CN111767201B (zh) * 2020-06-29 2023-08-29 百度在线网络技术(北京)有限公司 用户行为分析方法、终端设备、服务器及存储介质
CN113642912A (zh) * 2021-08-23 2021-11-12 重庆允成互联网科技有限公司 一种报工防错方法、系统、设备及存储介质
CN113642912B (zh) * 2021-08-23 2024-05-28 重庆允丰科技有限公司 一种报工防错方法、系统、设备及存储介质
CN113778801A (zh) * 2021-09-14 2021-12-10 珠海格力电器股份有限公司 启动事件上报方法、装置、电子设备及存储介质
CN113778801B (zh) * 2021-09-14 2024-05-03 珠海格力电器股份有限公司 启动事件上报方法、装置、电子设备及存储介质
CN113835921A (zh) * 2021-09-29 2021-12-24 平安普惠企业管理有限公司 接口服务异常的处理方法、装置、设备和存储介质

Similar Documents

Publication Publication Date Title
CN107343091A (zh) 数据上报方法及系统
CN105159533A (zh) 一种移动终端及其验证码自动输入方法
CN105093016A (zh) 移动终端自动化测试方法及装置
CN105100059A (zh) 一种大并发量请求处理方法、装置及系统
CN105303398A (zh) 一种信息显示方法和系统
CN104765543A (zh) 音频播放参数调节方法及装置
CN105100269A (zh) 一种移动终端及基于不同用户的内容推荐方法
CN105183308A (zh) 图片显示方法及装置
CN104700839B (zh) 多声道声音采集的方法、装置、手机及系统
CN105187521A (zh) 业务处理装置及方法
CN104899090A (zh) 快速调度应用进程的方法、装置及移动终端
CN105204992A (zh) 测试脚本生成装置及方法
CN107066290A (zh) 一种根据关联策略启动应用的方法和装置
CN105262819A (zh) 一种移动终端及其实现推送的方法
CN104731411A (zh) 移动终端的单击动作识别方法及装置
CN104951549A (zh) 一种移动终端及其照片/视频分类管理方法
CN105426036A (zh) 应用程序的界面展示升级方法、装置及系统
CN106249989A (zh) 一种分享内容时的社交应用程序图标排列方法及移动终端
CN105101325A (zh) 语音切换方法、终端、服务器及系统
CN104902098A (zh) 一种移动终端的侧边栏切换方法及系统
CN104915137A (zh) 基于无边框终端的音乐演奏方法和装置
CN105554710A (zh) 消息显示方法和装置
CN105335055A (zh) 一种菜单的自响应式实现方法及系统、终端设备
CN104780278A (zh) 基于通信数据的路线生成方法及装置
CN105847576A (zh) 一种应用推荐的方法及终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20171110

WW01 Invention patent application withdrawn after publication