一种移动应用运行异常状态下的场景数据抓取方法和装置与流程

文档序号:11843705阅读:169来源:国知局
一种移动应用运行异常状态下的场景数据抓取方法和装置与流程

本发明涉及数据处理领域,具体涉及一种移动应用运行异常状态下的场景数据抓取方法和装置。



背景技术:

随着移动终端的普及,移动应用,简称APP,种类越来越多样化。由于APP开发商的开发水平不一,同时对于APP质量把关标准不同,导致不同开发商的APP的质量高低不等。对于质量较低的APP,其发生运行异常的几率就会较大。另外,不同的移动终端所处的网络环境、所使用的操作系统、屏幕分辨率等因素也会影响APP的运行,如诱发APP的崩溃(crash)、导致APP运行缓慢等性能问题的发生。

为了能够及时修复上述问题,进一步完善APP的整体性能,APP开发者需要及时了解APP运行异常的原因。

目前,当APP发生异常时,移动终端会记录发生异常的代码堆栈,如代码的调用关系,或者会记录异常发生时的表层信息,如网络异常的url地址。但是,上述记录的信息仅能够启到告知APP开发者异常已经发生,以及发生在哪个步骤,并不能为APP开发者提供找到APP运行异常的最终原因的依据。



技术实现要素:

为了给APP开发者提供运行异常的分析依据,本发明提供了一种移动应用运行异常状态下的场景数据抓取方法和装置。

本发明提供了一种移动应用运行异常状态下的场景数据抓取方法,所述方法包括:

实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;

一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态 下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。

优选地,所述方法还包括:

将抓取的所述场景数据上传至服务器;

当所述APP的开发者访问所述服务器时,所述服务器为所述APP的开发者提供所述场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因。

优选地,所述抓取所述APP在所述运行异常状态下的场景数据,包括:

通过访问系统API接口,获取当前移动终端的属性信息,所述属性信息包括操作系统、内存大小、屏幕分辨率、运营商信息以及自定义的用户信息。

优选地,所述方法还包括:

实时记录用户对所述APP的操作路径,并将所述操作路径存储在内存;

相应的,所述抓取所述APP在所述运行异常状态下的场景数据,包括:

通过读取内存,获取所述用户的最新操作路径,所述最新操作路径为所述用户在本次异常之前的连续N次操作路径,所述N为自然数。

优选地,所述方法还包括:

以预设的频率,检测所述内存中的操作路径的数量;

当所述内存中的操作路径大于M条时,删除最早存储的操作路径,以便所述内存中保持存有M条最新操作路径,所述M为自然数。

本发明还提供了一种移动应用运行异常状态下的场景数据抓取装置,所述装置包括:

监控判断模块,用于实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;

抓取模块,用于一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据 和\或当前移动终端的属性信息。

优选地,所述装置还包括:

上传模块,用于将抓取的所述场景数据上传至服务器;其中,当所述APP的开发者访问所述服务器时,所述服务器为所述APP的开发者提供所述场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因。

优选地,所述抓取模块,包括:

获取子模块,用于通过访问系统API接口,获取当前移动终端的属性信息,所述属性信息包括操作系统、内存大小、屏幕分辨率、运营商信息以及自定义的用户信息。

优选地,所述装置还包括:

记录存储模块,用于实时记录用户对所述APP的操作路径,并将所述操作路径存储在内存;

相应的,所述抓取模块,包括:

获取模块,用于通过读取内存,获取所述用户的最新操作路径,所述最新操作路径为所述用户在本次异常之前的连续N次操作路径,所述N为自然数。

优选地,所述装置还包括:

检测模块,用于以预设的频率,检测所述内存中的操作路径的数量;

删除模块,用于当所述内存中的操作路径大于M条时,删除最早存储的操作路径,以便所述内存中保持存有M条最新操作路径,所述M为自然数。

本发明中,实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。与现有技术相比,本发明中APP开发者能够根据异常发生时系统抓取的场景数据,分析得出APP运行异常的原因,以便解决运行异常的问题,进一步完善APP的功能。

附图说明

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

图1为本发明实施例提供的一种移动应用运行异常状态下的场景数据抓取方法流程图;

图2为本发明实施例提供的另一种移动应用运行异常状态下的场景数据抓取方法流程图;

图3为本发明实施例提供的一种移动应用运行异常状态下的场景数据抓取装置结构图;

图4为本发明提供的客户端的部分结构示意图。

具体实施方式

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

参考图1,为本发明实施例提供的一种移动应用运行异常状态下的场景数据抓取方法流程图,所述方法具体可以包括:

S101:实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值。

本实施例中,移动终端安装APP后,只要所述APP处于运行状态,系统则会实时监控所述APP的运行状态。同时,系统会判断所述APP的运行状态是否为运行异常状态。也就是说,系统可以判断所述APP的当前运行状态是否为所述APP发生崩溃的状态,或者是否为所述APP的运行速度低于速度阈值,具体的,所述速度阈值可以是当前移动终端的用户自己设置的,也可以是在当前移动终端联网时,服务器统一下发的。另外,速度阈值可以根据用户需 要进行修改,可以在移动终端自行修改,也可以是服务器统一修改并统一下发。

S102:一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。

本实施例中,如果系统在判断所述APP的运行状态是否为运行异常状态时,确定所述APP的运行状态为运行异常状态,则立即抓取所述APP在所述运行异常状态下的场景数据。其中,运行异常状态下的场景数据包括与本次发生异常相关的实时数据、当前移动终端的属性信息。具体的,与本次发生异常相关的实时数据可以包括当前移动终端的内存剩余量、CPU使用率。当前移动终端的属性信息可以包括当前移动终端的操作系统、内存大小、屏幕分辨率、运营商信息以及自定义的用户信息,如用户邮箱等。APP开发者通过分析发生异常的APP所安装的移动终端的属性信息,可以判断是否某类异常的发生与某种类型的移动终端有关。另外,移动终端的内存剩余量、CPU使用率等也会导致某种类型的APP运行异常。实际操作中,通过访问系统API接口,获取与本次异常相关的实时数据,以及当前移动终端的属性信息。所述APP的开发者可以根据所述场景数据分析所述APP运行异常的原因。

另外,场景数据中与本次异常相关的实时数据还可以包括所述APP的操作用户的操作路径。实际操作中,一旦系统确定所述APP处于运行异常状态,则获取用户对该APP的操作路径。事实上,在APP运行的过程中,系统可以实时的记录操作用户对所述APP的操作路径,并将记录的操作路径存储在系统的内存中。当系统确定所述APP处于运行异常状态时,系统可以通过读取内存,获取所述用户的最新操作路径,如用户点击或触摸所述APP的各个功能按键的先后顺序等。具体的,APP开发者可以根据用户的操作路径分析该APP的异常原因。

值得注意的是,系统通过读取内存获取的最新操作路径为所述用户在本次异常之前的连续N次操作路径,所述N为自然数。也就是说,只有距异常发生最近的若干次操作,才可能是导致APP运行异常的原因。

另外,实际操作中,本实施例还可以通过删除早期存储的操作路径的方法 管理系统的内存。具体的,系统可以以预设的频率,检测所述内存中的操作路径的数量。如每天十二点检测一次内存的操作路径数量。当检测到所述内存中的操作路径大于M条时,删除最早存储的操作路径,以便所述内存中保持存有M条最新操作路径,所述M为自然数。具体的,M可以设置为30。

本发明实施例中,系统实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值。一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。与现有技术相比,本发明中APP开发者能够根据异常发生时系统抓取的场景数据,分析得出APP运行异常的原因,以便解决运行异常的问题,进一步完善APP的功能。

参考图2,为本发明实施例提供的另一种移动应用运行异常状态下的场景数据抓取方法流程图,所述方法包括:

S201:实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;

S202:一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。

S201、S202与S101、S102分别相同,可以参照理解,在此不再赘述。

S203:将抓取的所述场景数据上传至服务器。

实际操作中,移动终端可以将抓取的各个APP的场景数据上传至同一服务器。具体的,所述服务器可以用于管理各个APP的场景数据,并供APP开发者查看。

S204:当所述APP的开发者访问所述服务器时,所述服务器为所述APP的开发者提供所述场景数据,以便所述APP的开发者根据所述场景数据分析 所述APP运行异常的原因。

实际操作中,APP开发者可以通过预先注册的用户名和密码登录服务器。同时,可以查看或者下载所述APP的场景数据,以便根据这些场景数据分析所述APP运行异常的原因。

通过本实施例的方法,APP开发者能够统一登录到服务器了解APP运行异常的场景数据,并根据这些场景数据分析得出所述APP运行异常的原因。

参考图3,为本发明实施例提供的一种移动应用运行异常状态下的场景数据抓取装置,所述装置具体包括:

监控判断模块301,用于实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;

抓取模块302,用于一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。

实际操作中,所述装置还可以包括:上传模块,用于将抓取的所述场景数据上传至服务器;其中,当所述APP的开发者访问所述服务器时,所述服务器为所述APP的开发者提供所述场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因。

一种实现方式中,所述抓取模块可以包括:

获取子模块,用于通过访问系统API接口,获取当前移动终端的属性信息,所述属性信息包括操作系统、内存大小、屏幕分辨率、运营商信息以及自定义的用户信息。

另一种实现方式中,所述抓取模块可以包括:

获取子模块,用于在所述监控判断模块的判断结果为是时,获取当前安装所述APP的移动终端的属性信息,所述属性信息包括操作系统、内存大小、CPU占比、屏幕分辨率、运营商信息以及自定义的用户信息。

为了更方便APP开发人员分析APP运行异常的原因,所述装置还包括:

记录存储模块,用于实时记录用户对所述APP的操作路径,并将所述操作路径存储在内存;

相应的,所述抓取模块,包括:

获取模块,用于通过读取内存,获取所述用户的最新操作路径,所述最新操作路径为所述用户在本次异常之前的连续N次操作路径,所述N为自然数。

为了维护系统内存的反映性能,所述装置还可以包括:

检测模块,用于以预设的频率,检测所述内存中的操作路径的数量;

删除模块,用于当所述内存中的操作路径大于M条时,删除最早存储的操作路径,以便所述内存中保持存有M条最新操作路径,所述M为自然数。

本发明实施例中,监控判断模块,用于实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;抓取模块,用于一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。与现有技术相比,本发明中APP开发者能够根据异常发生时系统抓取的场景数据,分析得出APP运行异常的原因,以便解决运行异常的问题,进一步完善APP的功能。

本发明实施例还提供了一种终端,如图4所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑、个人计算机等任意终端设备,以终端为手机为例:

图4示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图4,手机包括:射频(Radio Frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图4中示出的手机结构并不构成对手机的限定,可以包括比图示 更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图4对手机的各个构成部件进行具体的介绍:

RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE))、电子邮件、短消息服务(Short Messaging Service,SMS)等。

存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

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

显示单元440可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图4中,触控面板431与显示面板441是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现手机的输入和输出功能。

手机400还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路460、扬声器461,传声器462可提供用户与手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器761,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一手机,或者将音频数据输 出至存储器420以便进一步处理。

WiFi属于短距离无线传输技术,手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了WiFi模块470,但是可以理解的是,其并不属于手机400的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器480是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器480可包括一个或多个处理单元;优选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。

手机400还包括给各个部件供电的电源490(比如电池),优选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机400还可以包括摄像头、蓝牙模块等,在此不再赘述。

具体在本实施例中,终端中的处理器480会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器420中,并由处理器480来运行存储在存储器420中的应用程序,从而实现以下功能:

实时监控APP的运行状态,并判断所述运行状态是否为运行异常状态,所述运行异常状态包括所述APP发生崩溃,或者所述APP的运行速度低于速度阈值;

一旦所述APP处于运行异常状态,则抓取所述APP在所述运行异常状态下的场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因,所述场景数据包括与本次异常相关的实时数据和\或当前移动终端的属性信息。

优选地,所述方法还包括:

将抓取的所述场景数据上传至服务器;

当所述APP的开发者访问所述服务器时,所述服务器为所述APP的开发 者提供所述场景数据,以便所述APP的开发者根据所述场景数据分析所述APP运行异常的原因。

优选地,所述抓取所述APP在所述运行异常状态下的场景数据,包括:

通过访问系统API接口,获取当前移动终端的属性信息,所述属性信息包括操作系统、内存大小、屏幕分辨率、运营商信息以及自定义的用户信息。

优选地,所述方法还包括:

实时记录用户对所述APP的操作路径,并将所述操作路径存储在内存;

相应的,所述抓取所述APP在所述运行异常状态下的场景数据,包括:

通过读取内存,获取所述用户的最新操作路径,所述最新操作路径为所述用户在本次异常之前的连续N次操作路径,所述N为自然数。

优选地,所述方法还包括:

以预设的频率,检测所述内存中的操作路径的数量;

当所述内存中的操作路径大于M条时,删除最早存储的操作路径,以便所述内存中保持存有M条最新操作路径,所述M为自然数。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括 所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明实施例所提供的一种移动应用运行异常状态下的场景数据抓取方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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