具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
本发明的原理使用许多其它泛用性或特定目的运算、通信环境或组态来进行操作。所熟知的适合用于本发明的运算系统、环境与组态的范例可包括(但不限于)手持电话、个人计算机、服务器、多处理器系统、微电脑为主的系统、主架构型计算机、及分布式运算环境,其中包括了任何的上述系统或装置。
本文所使用的术语「模块」可看做为在该运算系统上执行的软件对象。本文所述的不同组件、模块、引擎及服务可看做为在该运算系统上的实施对象。而本文所述的装置及方法优选的以软件的方式进行实施,当然也可在硬件上进行实施,均在本发明保护范围之内。
请参阅图1,图1为本发明实施例提供的基于地理位置的应用程序的故障处理系统的结构示意图,所述基于地理位置的应用程序的故障处理系统包括客户端11以及服务器12。
其中所述客户端11是使用者为了利用网络服务而使用的通信终端装置,其可通过通信网路与所述服务器12连接。所述基于地理位置的应用程序的故障处理系统中可以包括多个所述客户端11,所述客户端11不仅可以由桌上型计算机构成,还可以由笔记型计算机、工作站、掌上型计算机、UMPC(Ultra MobilePersonal Computer:超移动个人计算机)、平板PC、个人数字助理(Personal DigitalAssistant,PDA)、连网板(web pad)、可携式电话等具备储存单元并安装有微处理器而具有运算能力的终端机构成。
其中所述客户端11与所述服务器12之间的所述通信网路可以包括将局域网络(Local Area Network,LAN)、都会网络(Metropolitan Area Network,MAN)、广域网络(Wide Area Network,WAN)、因特网等包括在内的数据通信网络,还包括电话网络等,不分有线和无线,使用任何通信方式均无关。
而所述服务器12存储有用于表示地理位置的地图,例如,所述服务器12预设有基于位置的服务(LBS,Location Based Service)地图,其中,LBS是指通过电信移动运营商的无线电通讯网络或外部定位方式,获取客户端11用户的位置信息,在地理信息系统(GIS,Geographic Information System)平台的支持下,为用户提供相应服务的一种增值业务。
本发明实施例中,所述客户端11运行某一应用程序出现程序错误BUG时,向所述服务器12发起应用程序故障的通知,其中,本发明实施例中程序错误BUG是指应用程序运行中因程序本身有错误或者受客户端11的环境影响而造成的功能不正常、死机、数据丢失、非正常中断等现象。所述服务器12接收所述应用程序故障的通知后,所述服务器12自动获取所述客户端11当前的地理位置信息和环境信息,从而在预设的地图中获取所述客户端11所处的故障区域,以及获取所述故障区域内上报故障通知的其它客户端的环境信息,对当前客户端11的地理位置信息和故障区域内上报故障通知的其它客户端的环境信息对当前客户端11进行故障分析,生成故障分析结果并保存。本发明实施例考虑了当前客户端的地理位置信息和环境信息,不仅极大的提高了寻找应用程序故障发生原因的效率,并且综合考虑了当前客户端11所处的故障区域内上报故障通知的其它客户端的环境信息,进一步提高了应用程序的质量分析结果的准确率,避免服务器12的资源浪费。
请一并参阅图2,图2是本发明第一实施例提供的基于地理位置的应用程序的故障处理方法的流程示意图。为方便理解,以下实施例中,客户端包括当前上报的应用程序故障的通知的客户端11。所述方法步骤包括:
在步骤S201中,接收当前客户端11上报的应用程序故障的通知。
可以理解的是,所述基于地理位置的应用程序的故障处理方法的执行主体可以为服务器12,其可通过通信网路与所述当前客户端11连接。
其中,本发明实施例客户端11运行某一应用程序出现程序错误时,向所述服务器12发起应用程序故障的通知;所述程序错误主要是指应用程序运行中因程序本身有错误或者受客户端11的环境影响而造成的功能不正常、死机、数据丢失、非正常中断等现象,此处不作具体限定。
在步骤S202中,根据所述通知,获取所述当前客户端11的地理位置信息以及环境信息。
其中,所述客户端11的地理位置信息可以具体到所述客户端11用户当前所处的经纬度,所述客户端11的环境信息可以包括移动速度信息和网络强度信息。
所述服务器12在接收到所述客户端11上报的应用程序故障的通知后,所述服务器12可以自动获取所述客户端11当前的地理位置信息和环境信息,或者,较为优选的,所述客户端11在上报应用程序故障的通知的同时,将其当前的地理位置信息和环境信息一并进行发送,此处不作具体限定。
在步骤S203中,根据所述地理位置信息,在预设的地图中确定所述当前客户端11所处的故障区域。
可以理解的是,所述地图可以预先设置在所述服务器12中。
进一步的,在所述地图中,可以预先划分为多个区域,每一客户端的地理位置信息对应一预设的区域,所述区域中可以包括多个上报故障通知的客户端。本实施例中,将所述预设的区域称为故障区域。
在步骤S204中,获取所述故障区域内上报故障通知的其它客户端的环境信息。
在步骤S205中,根据所述当前客户端11的地理位置信息,以及所述故障区域内上报故障通知的其它客户端的环境信息对所述当前客户端进行故障分析,生成故障分析结果。
本实施例中,所述服务器12获取当前客户端11所处的故障区域内上报故障通知的其它客户端的环境信息,也就是说所述服务器12综合考虑了当前客户端11所处的故障区域内所有发生程序错误的情况,从而根据地理位置信息和所述故障区域内所有上报故障通知的客户端的环境信息进行故障分析,提高了分析结果的准确性。
由上述可知,本实施例提供的基于地理位置的应用程序的故障处理方法中,所述服务器12在接收应用程序故障的通知后,获取当前客户端11当前的地理位置信息和环境信息,从而在预设的地图中获取当前客户端11所处的故障区域,以及获取所述故障区域内上报故障通知的其它客户端的环境信息,从而对当前客户端11的地理位置信息和故障区域内上报故障通知的其它客户端的环境信息进行故障分析。本发明实施例考虑了当前发生应用程序故障的客户端11的地理位置信息和环境信息,不仅极大的提高了寻找应用程序故障发生原因的效率,并且综合考虑了当前客户端11所处的故障区域内上报故障通知的其它客户端的环境信息,进一步提高了应用程序的质量分析结果的准确率,避免了服务器12的资源浪费。
请参阅图3a,图3a为本发明第二实施例提供的基于地理位置的应用程序的故障处理方法的流程示意图。
在步骤S301中,接收当前客户端11上报的应用程序故障的通知。
在步骤S302中,获取所述应用程序的故障日志。
可以理解的是,所述步骤S301和所述步骤S302可以具体为:
当所述服务器12接收到客户端11发送的应用程序故障的通知的同时,会获取到所述应用程序的故障日志,如log.cat日志、Bug日志等;另可以想到的是,所述故障日志还包括,在所述客户端11发送的应用程序故障的通知时还同时提交当前客户端11发生应用程序Bug的截图以及客户端11用户个人对该Bug的描述,以在后续进行故障分析时综合考虑,此处不作具体限定。
其中,本发明实施例所述客户端11运行某一应用程序出现程序错误时,向所述服务器12发起应用程序故障的通知;所述程序错误主要是指应用程序运行中因程序本身有错误或者受客户端11的环境影响而造成的功能不正常、死机、数据丢失、非正常中断等现象,此处不作具体限定。
在步骤S303中,根据所述通知,获取所述当前客户端11的地理位置信息、移动速度信息以及网络强度信息。
其中可以具体为,所述服务器12获取当前客户端11上报所述应用程序故障的通知时的地理位置信息和环境信息,所述客户端11的地理位置信息可以具体到所述客户端11用户当前所处的经纬度,所述环境信息包括移动速度信息和网络强度信息。
可以理解的是,所述服务器12在接收到所述客户端11上报的应用程序故障的通知后,所述服务器12可以自动获取所述客户端11当前的地理位置信息和环境信息,或者,较为优选的,所述客户端11在上报应用程序故障的通知的同时,将所述应用程序的故障日志和当前的地理位置信息和环境信息一并进行发送,此处不作具体限定。
在步骤S304中,根据所述地理位置信息,在预设的基于位置的服务LBS地图中确定当前客户端11所处的故障区域。
可以理解的是,所述基于位置的服务LBS地图可以预先设置在所述服务器12中。其中,在所述基于位置的服务LBS地图中,可以预先划分为多个区域,每一客户端的地理位置信息对应一预设的区域,所述区域中可以包括多个上报故障通知的客户端。本实施例中,将所述预设的区域称为故障区域。
进一步的,将当前客户端11所处的故障区域在所述预设的基于位置的服务LBS地图中进行显示,以对当前客户端11进行定位。优选的,确定当前客户端11所处的故障区域之后,所述服务器12可以发送控制指令,以将所述故障区域在所述预设的基于位置的服务LBS地图中进行显示。
在步骤S305中,获取所述客户端11所处的故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息。
在步骤S306中,对所述当前客户端11的地理位置信息,以及所述故障区域内上报故障通知的其它客户端的移动速度信息和网络强度信息分别进行分析,生成对应的信息分析结果。
在步骤S307中,根据所述故障日志和所述信息分析结果进行故障分析,生成故障分析结果。
其中,所述步骤S305至所述步骤S307可以具体为:
对于所述客户端11的地理位置信息,所述服务器12根据所述地理位置信息,生成地理位置分析结果,所述地理位置分析结果包括当前客户端11所处的故障区域为人口密集区域或人口稀疏区域。
可以理解的是,所述服务器12根据所述地理位置信息可以确定出当前客户端11所处的故障区域;根据日常情况并通过预设的方式,可以将所述LBS地图中划分的区域默认设置为人口密集区域或人口稀疏区域。或者是,结合获取的网络强度信息进行判断,如果网络信号较弱且所述区域属于市区,则可认为是人口密集区域。
对于所述客户端11的移动速度信息,所述服务器12根据所述移动速度信息,生成移动速度分析结果,所述移动速度分析结果包括当前客户端11在所处的故障区域内处于静止状态或移动状态。
可以理解的是,所述移动速度信息是指所述当前客户端11用户的状态信息;例如,若获取到的移动速度为0,则可以判定所述当前客户端11用户处于静止状态,若获取到的移动速度大于0,则可以判定所述当前客户端11用户处于移动状态;更具体地,若获取到的移动速度大于0小于A,则可以判定所述当前客户端11用户在走路,若获取到的移动速度大于A小于B,则可以判定当前所述客户端11用户在移动的公交车上等设置类似的各种场景,其中,所述A和B的具体取值可以根据经验值进行预设定,此处不作具体限定。
另外,所述服务器12对每一上传故障通知的客户端的移动速度信息进行分析之后,进一步的,对其进行再次分析,如分析结果表明当前客户端11在所处的故障区域内处于静止状态的概率大于处于移动状态的概率,则确定所述移动速度分析结果为当前客户端11在所处的故障区域内处于静止状态。
对于所述客户端11的网络强度信息,所述服务器12根据所述网络强度信息,生成网络强度分析结果,所述网络强度分析结果包括当前客户端11所处的故障区域为网络信号强的区域或网络信号弱的区域。
可以理解的是,所述网络强度信息是指所述客户端11用户上传应用程序故障的通知时的网络传输速度;例如,若获取到的网络传输速度为小于C,则可以判定所述当前客户端11所处的故障区域为网络信号弱的区域,若获取到的网络传输速度为大于C,则可以判定所述当前客户端11所处的故障区域为网络信号强的区域,其中,所述C的具体取值可以根据经验值进行预设定,此处不作具体限定。
另外,所述服务器12对每一上传故障通知的客户端的网络强度信息进行分析之后,进一步的,对其进行再次分析,如分析结果表明当前客户端11所处的故障区域为网络信号强的区域的概率大于为网络信号弱的区域,则确定所述网络强度分析结果为当前客户端11所处的故障区域为网络信号强的区域。
在对当前客户端的地理位置信息以及对每一上传故障通知的客户端的环境信息进行分析之后,所述服务器12将所述地理位置分析结果、所述移动速度分析结果和所述网络强度分析结果作为所述信息分析结果。
需要说明的是,所述服务器12获取所述客户端11所处的故障区域内上报故障通知的其它客户端的环境信息,以对区域内所有上报故障通知的客户端的环境信息进行分析。
可一并参考图3b,图3b为所述故障处理方法中LBS地图的显示示意图;如图3b所示,在LBS地图某一预设区域内,所述服务器12获取到26个Bugcrash,其中,该26个Bug crash可以是所述服务器12在一预设时间范围内获取到的多个上报故障通知的客户端的应用程序错误,分别对这26个Bug crash的网络强度信息和移动速度进行分析,最后根据信息分析结果和所述故障日志对所述当前客户端进行故障分析,生成故障分析结果,并保存所述故障分析结果,也就是可以判定出应用程序出现故障的原因是由于环境问题,还是程序本身有错误,从而可以合理地评价应用程序的质量,也可以有针对性地对故障进行修正,提高效率。
本实施例中,所述服务器12获取当前客户端11所处的故障区域内上报故障通知的其它客户端的环境信息,也就是说所述服务器12综合考虑了当前客户端11所处的故障区域内所有发生程序错误的情况,从而根据地理位置信息和所述故障区域内所有上报故障通知的客户端的环境信息进行故障分析,提高了分析结果的准确性。
可以理解的是,本发明实施例中,仅以所述环境信息包括移动速度信息和网络强度信息为例进行描述;在一些更为精确的场合,还可以考虑到其他一些环境信息的两个或两个以上的结合进行故障分析,如考虑移动速度信息和网络强度信息之外,还可结合考虑客户端11上传故障通知时的时间信息、天气信息和所处区域的交通信息等等进行故障分析,以进一步的提高分析的准确性,此处举例不构成对本发明的限定。
在步骤S308中,根据所述故障分析结果对所述应用程序的质量进行分析。
根据所述故障分析结果可以判定出应用程序出现故障的原因是由于环境问题,还是程序本身有错误,其中由于环境问题导致的Bug可以称之为非功能性的Bug,由于程序本身错误导致的Bug可以称之为功能性的Bug,从而可以合理地分析应用程序的质量,提高分析结果的准确性。
可以理解的是,在生成故障分析结果后,所述服务器12可以将该故障分析结果反馈至客户端11,以使客户端11用户可以明确应用程序的故障发生的原因。
另容易想到的是,所述客户端11接收到所述服务器12反馈的故障分析结果后,可以通过屏幕进行图文显示(即LBS地图和基于环境信息进行故障分析的文字表述结合显示)或者语音播报的方式进行结果展示,此处不作具体限定。
由上述可知,本实施例提供的基于地理位置的应用程序的故障处理方法中,所述服务器12在接收应用程序故障的通知后,获取当前客户端11当前的地理位置信息、移动速度信息以及网络强度信息,从而在预设的LBS地图中获取当前客户端11所处的故障区域,以及获取所述故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息,从而对当前客户端11的地理位置信息和故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息进行故障分析。本发明实施例考虑了当前发生应用程序故障的客户端11的地理位置信息、移动速度信息以及网络强度信息,不仅极大的提高了寻找应用程序故障发生原因的效率,并且综合考虑了当前客户端11所处的故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息,进一步提高了应用程序的质量分析结果的准确率,避免了服务器12的资源浪费。
请参阅图4,图4为一本发明实施例的基于地理位置的应用程序的故障处理方法的具体应用实施例。
在步骤S401中,所述客户端11向所述服务器12上报应用程序故障的通知;
在步骤S402中,所述服务器12接收所述通知;
在步骤S403中,所述服务器12获取所述应用程序的故障日志;
在步骤S404中,在所述服务器12获取所述客户端11当前的地理位置信息和环境信息;
所述客户端11的地理位置信息可以具体到所述客户端11用户当前所处的经纬度,所述环境信息包括移动速度信息和网络强度信息。
优选的,所述服务器12接收所述通知的同时,一并获取所述应用程序的故障日志、以及客户端11当前的地理位置信息和环境信息,以提高传输易用性,此处对其执行顺序不作限定。
在步骤S405中,所述服务器12在预设的基于位置的服务LBS地图中获取所述客户端11所处的故障区域;
以控制所述客户端11将所述LBS地图进行显示。
在步骤S406中,所述服务器12获取所述客户端11所处的故障区域内上报故障通知的其它客户端的环境信息;
在步骤S407中,所述服务器12对获取到的地理位置信息以及环境信息分别进行分析,生成对应的信息分析结果;
结合LBS地图和所述地理位置信息以及环境信息,以便于所述客户端11用户查阅。
在步骤S408中,所述服务器12根据所述故障日志和所述信息分析结果进行故障分析,生成故障分析结果;
在步骤S409中,所述服务器12将所述故障分析结果反馈至客户端11;
在步骤S410中,所述客户端11通过屏幕显示方式进行显示;
在步骤S411中,所述服务器12根据所述故障分析结果分析所述应用程序的质量。
在本实施例中,所述客户端11运行某一应用程序发生故障时,客户端用户通过点击按钮,以向服务器12发送故障通知,所服务器12接收到该通知后可以根据上述基于地理位置的应用程序的故障处理方法,获取所述客户端11的地理位置信息和环境信息,所述服务器12据此,结合LBS地图进行信息分析以及故障分析,将分析结果反馈至所述客户端11,从而客户端11用户可以判定出应用程序Bug的类型,其中由于环境问题导致的Bug可以称之为非功能性的Bug,由于程序本身错误导致的Bug可以称之为功能性的Bug,从而可以合理地分析应用程序的质量,提高分析结果的准确性。
譬如,在一种场景中,某一预设区域(XX大学)存在一个应用程序Bug,若所述服务器12获取到客户端11当前网络强度弱,移动速度为静止,从而可以推测是环境因素引起的Bug,得出此处场景为人口密集(即XX大学预设定为人口密集区域),比如可能在开会,因此认为Bug的主要场景是发生在人口拥塞的弱网络条件下,该Bug为非功能性的Bug;又如,若所述服务器12获取到客户端11当前网络强度强,移动速度也为静止,如果从故障日志和Bug截图得出为网络问题,加上XX大学预为人口密集区域,因此可以得出该系统在网络较好的情况下也会出现网络问题,则系统处理并发能力有待提升等等。
本发明实施例,可以从人口密集情况、客户端用户状态以及网络信号强弱等环境信息进行应用程序的质量分析,从而可以根据对应用程序进行针对性的改进,以使其适用于人口密集、用户移动和网络信号弱的状态。
可以理解的是,上述各步骤的工作过程,可以参考上述第二实施例的相关描述进行具体实现,此处不再赘述。
为便于更好的实施本发明实施例提供的基于地理位置的应用程序的故障处理方法,本发明实施例还提供一种基于上述基于地理位置的应用程序的故障处理方法的装置。其中名词的含义与上述基于地理位置的应用程序的故障处理的方法中相同,具体实现细节可以参考方法实施例中的说明。请参阅图5,图5为本发明实施例提供的基于地理位置的应用程序的故障处理装置的结构示意图,其中所述基于地理位置的应用程序的故障处理装置包括接收模块51、第一获取模块52、第二获取模块53、第三获取模块54以及分析保存模块55。
其中所述接收模块51,接收当前客户端上报的应用程序故障的通知;所述第一获取模块52根据所述通知,获取所述当前客户端的地理位置信息以及环境信息;
可以理解的是,本发明实施例所述客户端运行某一应用程序出现程序错误时,向所述装置发起应用程序故障的通知;所述程序错误主要是指应用程序运行中因程序本身有错误或者受客户端的环境影响而造成的功能不正常、死机、数据丢失、非正常中断等现象,此处不作具体限定。
所述第二获取模块53根据所述地理位置信息,在预设的地图中获取所述客户端所处的故障区域;所述第三获取模块54获取所述故障区域内上报故障通知的其它客户端的环境信息;所述分析保存模块55根据所述当前客户端的地理位置信息,以及所述故障区域内上报故障通知的其它客户端的环境信息对所述当前客户端进行故障分析,生成故障分析结果。
其中,所述客户端的地理位置信息可以具体到所述客户端用户当前所处的经纬度,所述客户端的环境信息可以包括移动速度信息和网络强度信息。
所述装置在接收到所述客户端上报的应用程序故障的通知后,可以自动获取所述客户端当前的地理位置信息和环境信息,或者,所述客户端在上报应用程序故障的通知的同时,将其当前的地理位置信息和环境信息一并进行发送,此处不作具体限定。
可以理解的是,所述地图可以预先设置在所述装置中。进一步的,在所述地图中,可以预先划分为多个区域,每一客户端的地理位置信息对应一预设的区域,所述区域中可以包括多个上报故障通知的客户端。本实施例中,将所述预设的区域称为故障区域。
本实施例中,所述装置获取当前客户端所处的故障区域内上报故障通知的其它客户端的环境信息,也就是说所述服务器综合考虑了当前客户端所处的故障区域内所有发生程序错误的情况,从而根据地理位置信息和所述故障区域内所有上报故障通知的客户端的环境信息进行故障分析,提高了分析结果的准确性。
由上述可知,本实施例提供的基于地理位置的应用程序的故障处理装置中,在接收应用程序故障的通知后,获取当前客户端当前的地理位置信息和环境信息,从而在预设的地图中获取当前客户端所处的故障区域,以及获取所述故障区域内上报故障通知的其它客户端的环境信息,从而对当前客户端的地理位置信息和故障区域内上报故障通知的其它客户端的环境信息进行故障分析。本发明实施例考虑了当前发生应用程序故障的客户端的地理位置信息和环境信息,不仅极大的提高了寻找应用程序故障发生原因的效率,并且综合考虑了当前客户端所处的故障区域内上报故障通知的其它客户端的环境信息,进一步提高了应用程序的质量分析结果的准确率,避免了服务器12的资源浪费。
优选地,可一并参考图6,图6为本发明实施例提供的基于地理位置的应用程序的故障处理装置的另一结构示意图,其中,所述装置包括接收模块61、第一获取模块62、第二获取模块63、第三获取模块64、分析保存模块65以及控制模块66、第四获取模块67、质量分析模块68。
其中所述接收模块61,接收当前客户端上报的应用程序故障的通知;所述第四获取模块67获取所述应用程序的故障日志。
当所述装置接收到客户端发送的应用程序故障的通知的同时,会获取到所述应用程序的故障日志,如log.cat日志、Bug日志等;另可以想到的是,所述故障日志还包括,在所述客户端发送的应用程序故障的通知时还同时提交当前客户端发生应用程序Bug的截图以及客户端用户个人对该Bug的描述,以在后续进行故障分析时综合考虑,此处不作具体限定。
所述第一获取模块62,获取所述当前客户端上报所述应用程序故障的通知时的地理位置信息和环境信息,其中所述环境信息包括移动速度信息和网络强度信息。
其中,所述装置获取当前客户端上报所述应用程序故障的通知时的地理位置信息和环境信息,所述客户端的地理位置信息可以具体到所述客户端用户当前所处的经纬度,所述环境信息包括移动速度信息和网络强度信息。
可以理解的是,所述装置在接收到所述客户端上报的应用程序故障的通知后,所述服务器可以自动获取所述客户端当前的地理位置信息和环境信息,或者,所述客户端在上报应用程序故障的通知的同时,将所述应用程序的故障日志和当前的地理位置信息和环境信息一并进行发送,此处不作具体限定。
所述第二获取模块63根据所述地理位置信息,在预设的基于位置的服务LBS地图中确定所述当前客户端所处的故障区域;所述控制模块66发送控制指令,以将所述故障区域在所述预设的基于位置的服务LBS地图中进行显示。
可以理解的是,所述基于位置的服务LBS地图可以预先设置在所述装置中。其中,在所述基于位置的服务LBS地图中,可以预先划分为多个区域,每一客户端的地理位置信息对应一预设的区域,所述区域中可以包括多个上报故障通知的客户端。本实施例中,将所述预设的区域称为故障区域。另外,发送控制指令,以将所述故障区域在所述预设的基于位置的服务LBS地图中进行显示,对所述客户端进行定位。
所述第三获取模块64获取所述客户端所处的故障区域内上报故障通知的其它客户端的环境信息;所述分析保存模块65根据所述当前客户端的地理位置信息,以及所述故障区域内上报故障通知的其它客户端的环境信息对所述当前客户端进行故障分析,生成故障分析结果。
进一步的,所述分析保存模块65包括信息分析单元651和故障分析单元652,所述信息分析单元651对所述当前客户端的地理位置信息,以及所述故障区域内上报故障通知的其它客户端的环境信息分别进行分析,生成对应的信息分析结果;以及所述故障分析单元652根据所述故障日志和所述信息分析结果进行故障分析,生成故障分析结果。
可具体的,所述信息分析单元651包括第一分析子单元6511、第二分析子单元6512、第三分析子单元6513以及所述控制子单元6514;所述第一分析子单元6511根据所述地理位置信息,生成地理位置分析结果,所述地理位置分析结果包括当前客户端所处的故障区域为人口密集区域或人口稀疏区域;所述第二分析子单元6512根据所述移动速度信息,生成移动速度分析结果,所述移动速度分析结果包括当前客户端在所处的故障区域内处于静止状态或移动状态;所述第三分析子单元6513根据所述网络强度信息,生成网络强度分析结果,所述网络强度分析结果包括当前客户端在所处的故障区域内为网络信号强的区域或网络信号弱的区域;所述控制子单元6514将所述地理位置分析结果、所述移动速度分析结果和所述网络强度分析结果作为所述信息分析结果。
可以理解的是,对于所述客户端的地理位置信息,所述装置根据所述地理位置信息可以确定出当前客户端所处的故障区域;根据日常情况并通过预设的方式,可以将所述LBS地图中划分的区域默认设置为人口密集区域或人口稀疏区域。或者是,结合获取的网络强度信息进行判断,如果网络信号较弱且所述区域属于市区,则可认为是人口密集区域。
对于所述客户端的移动速度信息,所述移动速度信息是指所述当前客户端用户的状态信息;例如,若获取到的移动速度为0,则可以判定所述当前客户端用户处于静止状态,若获取到的移动速度大于0,则可以判定所述当前客户端用户处于移动状态;更具体地,若获取到的移动速度大于0小于A,则可以判定所述当前客户端用户在走路,若获取到的移动速度大于A小于B,则可以判定所述当前客户端用户在移动的公交车上等设置类似的各种场景,其中,所述A和B的具体取值可以根据经验值进行预设定,此处不作具体限定。
另外,所述第二分析子单元6512对每一上传故障通知的客户端的移动速度信息进行分析之后,进一步的,对其进行再次分析,如分析结果表明当前客户端在所处的故障区域内处于静止状态的概率大于处于移动状态的概率,则确定所述移动速度分析结果为当前客户端在所处的故障区域内处于静止状态。
对于所述客户端的网络强度信息,所述网络强度信息是指所述客户端用户上传应用程序故障的通知时的网络传输速度;例如,若获取到的网络传输速度为小于C,则可以判定所述当前客户端所处的故障区域为网络信号弱的区域,若获取到的网络传输速度为大于C,则可以判定所述当前客户端所处的故障区域为网络信号强的区域,其中,所述C的具体取值可以根据经验值进行预设定,此处不作具体限定。
另外,所述第三分析子单元6513对每一上传故障通知的客户端的网络强度信息进行分析之后,进一步的,对其进行再次分析,如分析结果表明当前客户端11所处的故障区域为网络信号强的区域的概率大于为网络信号弱的区域,则确定所述网络强度分析结果为当前客户端11所处的故障区域为网络信号强的区域。
可以理解的是,本发明实施例中,仅以所述环境信息包括移动速度信息和网络强度信息为例进行描述;在一些更为精确的场合,还可以考虑到其他一些环境信息的两个或两个以上的结合进行故障分析,如考虑移动速度信息和网络强度信息之外,还可结合考虑客户端上传故障通知时的时间信息、天气信息和所处区域的交通信息等等进行故障分析,以进一步的提高分析的准确性,此处举例不构成对本发明的限定。
更进一步的,所述质量分析模块68,用于根据所述故障分析结果对所述应用程序的质量进行分析。
其中,根据所述故障分析结果可以判定出应用程序出现故障的原因是由于环境问题,还是程序本身有错误,从而可以合理地分析应用程序的质量,提高分析结果的准确性。
由上述可知,本实施例提供的基于地理位置的应用程序的故障处理装置中,在接收应用程序故障的通知后,获取当前客户端当前的地理位置信息、移动速度信息以及网络强度信息,从而在预设的LBS地图中获取当前客户端所处的故障区域,以及获取所述故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息,从而对当前客户端的地理位置信息和故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息进行故障分析。本发明实施例考虑了当前发生应用程序故障的客户端的地理位置信息、移动速度信息以及网络强度信息,不仅极大的提高了寻找应用程序故障发生原因的效率,并且综合考虑了当前客户端所处的故障区域内上报故障通知的其它客户端的移动速度信息以及网络强度信息,进一步提高了应用程序的质量分析结果的准确率,避免了服务器的资源浪费。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对基于地理位置的应用程序的故障处理方法的详细描述,此处不再赘述。
本发明实施例提供的所述基于地理位置的应用程序的故障处理装置,譬如为计算机、平板电脑、具有触摸功能的手机等等,所述基于地理位置的应用程序的故障处理装置与上文实施例中的基于地理位置的应用程序的故障处理方法属于同一构思,在所述基于地理位置的应用程序的故障处理装置上可以运行所述基于地理位置的应用程序的故障处理方法实施例中提供的任一方法,其具体实现过程详见所述基于地理位置的应用程序的故障处理方法实施例,此处不再赘述。
需要说明的是,对本发明所述基于地理位置的应用程序的故障处理方法而言,本领域普通测试人员可以理解实现本发明实施例所述基于地理位置的应用程序的故障处理方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读取存储介质中,如存储在终端的存储器中,并被该终端内的至少一个处理器执行,在执行过程中可包括如所述基于地理位置的应用程序的故障处理方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
对本发明实施例的所述基于地理位置的应用程序的故障处理装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,所述存储介质譬如为只读存储器,磁盘或光盘等。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通测试人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。