CN108156048A - 一种实现在复杂场景中获取应用崩溃信息的方法和装置 - Google Patents

一种实现在复杂场景中获取应用崩溃信息的方法和装置 Download PDF

Info

Publication number
CN108156048A
CN108156048A CN201611111680.XA CN201611111680A CN108156048A CN 108156048 A CN108156048 A CN 108156048A CN 201611111680 A CN201611111680 A CN 201611111680A CN 108156048 A CN108156048 A CN 108156048A
Authority
CN
China
Prior art keywords
application
information
specified application
system information
specified
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.)
Pending
Application number
CN201611111680.XA
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201611111680.XA priority Critical patent/CN108156048A/zh
Publication of CN108156048A publication Critical patent/CN108156048A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • 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
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • 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/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/14Arrangements for monitoring or testing data switching networks using software, i.e. software packages

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种实现在复杂场景中获取应用崩溃信息的方法和装置。其中所述方法包括:确定智能终端上安装的指定应用为待监控应用;在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;当监控到所述指定应用的崩溃事件时,停止录制和监控;从所录制的系统信息中提取所述指定应用的崩溃信息。该技术方案可以在不同场景下执行对应用的测试,更贴近应用的实际使用情况,同时也不需要复杂的测试流程,只需要在应用运行时进行监控和录制系统信息即可,简单方便,不仅测试人员可以实现,普通用户、开发人员、产品经理等都可以实现这种测试。

Description

一种实现在复杂场景中获取应用崩溃信息的方法和装置
技术领域
本发明涉及应用测试领域,特别涉及一种实现在复杂场景中获取应用崩溃信息的方法和装置。
背景技术
现有技术中,对应用的测试往往是在应用发布前,这样应用在实际场景中出现的问题就只能由用户反馈。由于应用发布前的测试场景较为单一,测试方式较为固定,需要在测试用智能终端上安装待测试应用,而测试用智能终端由于需要与测试控制机连接,必须放置在测试室中,这样无法模拟用户在实际使用中所处的复杂场景,因此通过这种测试方式会遗漏掉应用在不同场景中进行使用时可能发生的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的实现在复杂场景中获取应用崩溃信息的方法和装置。
依据本发明的一个方面,提供了一种实现在复杂场景中获取应用崩溃信息的方法,包括:
确定智能终端上安装的指定应用为待监控应用;
在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;
当监控到所述指定应用的崩溃事件时,停止录制和监控;
从所录制的系统信息中提取所述指定应用的崩溃信息。
可选地,该方法进一步包括:
在智能终端的屏幕上展示所述指定应用的崩溃信息;
和/或,
向服务器发送所述指定应用的崩溃信息。
可选地,所述从所录制的系统信息中提取所述指定应用的崩溃信息包括:
从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;
从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
可选地,所述关键字包括:所述指定应用的包名和/或崩溃信息识别关键字。
可选地,该方法进一步包括:
从保存在本地的关键字列表中获取所述预设的一个或多个关键字;所述关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;
或者,
向服务器发送包含所述指定应用的标识的请求,接收服务器返回的一个或多个关键字。
可选地,所述确定智能终端上安装的指定应用为待监控应用包括:
获取所述智能终端上安装的应用的列表;
展示所述列表,并接收用户在所述列表上选择一个应用的指令;
将用户选择的应用作为待监控应用。
可选地,该方法进一步包括:
将录制的系统信息保存到指定大小的存储空间中,当所述存储空间存满时,用新录制的系统信息覆盖所述存储空间中的录制时间最早的系统信息。
可选地,该方法进一步包括:
监测所述智能终端的系统环境信息;
将所述指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为所述指定应用的崩溃信息的一部分。
可选地,所述系统环境信息包括如下中的一种或多种:
CPU运行状态信息;
内存占用信息;
网络连接状况信息;
网络流量信息。
依据本发明的另一方面,提供了一种实现在复杂场景中获取应用崩溃信息的装置,包括:
应用确定单元,适于确定智能终端上安装的指定应用为待监控应用;
录制单元,适于在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;当监控到所述指定应用的崩溃事件时,停止录制和监控;
崩溃信息提取单元,适于从所录制的系统信息中提取所述指定应用的崩溃信息。
可选地,该装置进一步包括:
崩溃信息处理单元,适于在智能终端的屏幕上展示所述指定应用的崩溃信息;和/或,向服务器发送所述指定应用的崩溃信息。
可选地,所述崩溃信息提取单元,适于从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
可选地,所述关键字包括:所述指定应用的包名和/或崩溃信息识别关键字。
可选地,所述崩溃信息提取单元,进一步适于从保存在本地的关键字列表中获取所述预设的一个或多个关键字;所述关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;
或者,
所述崩溃信息提取单元,进一步适于向服务器发送包含所述指定应用的标识的请求,接收服务器返回的一个或多个关键字。
可选地,所述应用确定单元,适于获取所述智能终端上安装的应用的列表;展示所述列表,并接收用户在所述列表上选择一个应用的指令;将用户选择的应用作为待监控应用。
可选地,所述录制单元,进一步适于将录制的系统信息保存到指定大小的存储空间中,当所述存储空间存满时,用新录制的系统信息覆盖所述存储空间中的录制时间最早的系统信息。
可选地,该装置进一步包括:
系统环境监测单元,适于监测所述智能终端的系统环境信息;
所述崩溃信息提取单元,进一步适于将所述指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为所述指定应用的崩溃信息的一部分。
可选地,所述系统环境信息包括如下中的一种或多种:CPU运行状态信息;内存占用信息;网络连接状况信息;网络流量信息。
由上述可知,本发明的技术方案,能够在任一台智能终端上测试应用,在指定应用启动至发生崩溃事件的时间内,录制该智能终端的安卓系统的系统信息并从中提取该应用的崩溃信息,通过对该崩溃信息进行分析便可以了解到该应用可能存在的问题。该技术方案可以在不同场景下执行对应用的测试,更贴近应用的实际使用情况,同时也不需要复杂的测试流程,只需要在应用运行时进行监控和录制系统信息即可,简单方便,不仅测试人员可以实现,普通用户、开发人员、产品经理等都可以实现这种测试。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种实现在复杂场景中获取应用崩溃信息的方法的流程图;
图2示出了根据本发明一个实施例的一种实现在复杂场景中获取应用崩溃信息的装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的一种实现在复杂场景中获取应用崩溃信息的方法的流程图,如图1所示,该方法包括:
步骤S110,确定智能终端上安装的指定应用为待监控应用。
步骤S120,在指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控指定应用的崩溃事件。
步骤S130,当监控到指定应用的崩溃事件时,停止录制和监控。
步骤S140,从所录制的系统信息中提取指定应用的崩溃信息。
可见,图1所示的方法,能够在任一台智能终端上测试应用,在指定应用启动至发生崩溃事件的时间内,录制该智能终端的安卓系统的系统信息并从中提取该应用的崩溃信息,通过对该崩溃信息进行分析便可以了解到该应用可能存在的问题。该技术方案可以在不同场景下执行对应用的测试,更贴近应用的实际使用情况,同时也不需要复杂的测试流程,只需要在应用运行时进行监控和录制系统信息即可,简单方便,不仅测试人员可以实现,普通用户、开发人员、产品经理等都可以实现这种测试。
在本发明的一个实施例中,图1所示的方法进一步包括:在智能终端的屏幕上展示指定应用的崩溃信息;和/或,向服务器发送指定应用的崩溃信息。
用户可以选择崩溃信息的处理方式,例如,测试人员可以选择在智能终端的屏幕上展示应用的崩溃信息,在查看到崩溃信息时,就可以根据自身掌握的技术知识确定应用可能存在的漏洞;而对于普通用户,即使查看到崩溃信息也并不知道应用存在什么问题,因此可以向服务器发送指定应用的崩溃信息。
在本发明的一个实施例中,图1所示的方法中,从所录制的系统信息中提取指定应用的崩溃信息包括:从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
引发崩溃事件的原因有很多,例如内存溢出、地址错误等等,这些都会记录为系统信息,例如记录在系统日志中。但由于系统日志等系统信息是会随时清理的,如果不对系统信息进行录制,很可能在崩溃事件发生后,相关的系统信息就被清理掉,这样无疑是无法帮助测试人员确定应用存在的问题的,因此,在确保能够获取到系统信息的同时还要对系统信息进行录制。当然,获取系统信息需要较高的权限,例如需要对系统进行Root。在录制到的系统信息中存在崩溃信息,例如OOM(Out of Memory,内存溢出)错误,那么因此内存溢出的原因可能是存在内存泄漏的累积,因此需要从崩溃时间发生时刻之前的预设时间段的系统信息中提取相关信息来确定内存溢出的原因。提取相关信息就需要确定相应的关键字,在本发明的一个实施例中,关键字包括:指定应用的包名和/或崩溃信息识别关键字。
根据指定应用的包名,可以确定系统信息中的哪些信息是与指定应用相关的;根据崩溃信息识别关键字,可以确定哪些信息是崩溃信息。
在本发明的一个实施例中,上述方法进一步包括:从保存在本地的关键字列表中获取预设的一个或多个关键字;关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;或者,向服务器发送包含指定应用的标识的请求,接收服务器返回的一个或多个关键字。
在本实施例中提供了获取关键字的方法。例如,在本地预设关键字列表,其中对于每一个在智能终端上安装的应用,在该列表中都有对应的列表项。此外,该列表中还可以包含共用的崩溃信息识别关键字,因为各应用发生崩溃事件时实际引发的错误类型是具有共性的,例如前文提到的OOM错误等。除了这种方法外,关键字也可以通过与服务器进行交互来获得,这样避免了在智能终端执行过多操作浪费资源,比较适合配置较低的移动终端。上文中的关键字列表也可以从服务器下载进行更新。
在本发明的一个实施例中,上述方法中,确定智能终端上安装的指定应用为待监控应用包括:获取智能终端上安装的应用的列表;展示列表,并接收用户在列表上选择一个应用的指令;将用户选择的应用作为待监控应用。
调用智能终端系统的相应API可以获取该智能终端上已安装的所有应用,将其以列表形式展现,用户可以点选任一个应用来运行该应用,当该应用启动后,执行上述方法中的获取崩溃信息的操作。
在本发明的一个实施例中,图1所示的方法进一步包括:将录制的系统信息保存到指定大小的存储空间中,当存储空间存满时,用新录制的系统信息覆盖存储空间中的录制时间最早的系统信息。
举例而言,将录制的系统信息保存到SD卡中;当SD卡存满时,清除录制时间最早的系统信息,腾出空间给新录制的系统信息。
在本发明的一个实施例中,上述方法进一步包括:监测智能终端的系统环境信息;将指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为指定应用的崩溃信息的一部分。
许多情况下,应用的崩溃与系统环境信息息息相关。在本发明的一个实施例中,系统环境信息包括如下中的一种或多种:CPU运行状态信息;内存占用信息;网络连接状况信息;网络流量信息。例如,当CPU占用率较高时,手机会发热,如果手机包含过热控制功能,可能就会强行停止CPU占用较高的应用,引发应用崩溃,等等。因此智能终端的系统环境信息对于判明应用的崩溃原因也是非常重要的,因此在本实施例中将其作为指定应用的崩溃信息的一部分。
图2示出了根据本发明一个实施例的一种实现在复杂场景中获取应用崩溃信息的装置的结构示意图,如图2所示,实现在复杂场景中获取应用崩溃信息的装置200包括:
应用确定单元210,适于确定智能终端上安装的指定应用为待监控应用。
录制单元220,适于在指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控指定应用的崩溃事件;当监控到指定应用的崩溃事件时,停止录制和监控。
崩溃信息提取单元230,适于从所录制的系统信息中提取指定应用的崩溃信息。
可见,图2所示的装置,通过各单元的相互配合,能够在任一台智能终端上测试应用,在指定应用启动至发生崩溃事件的时间内,录制该智能终端的安卓系统的系统信息并从中提取该应用的崩溃信息,通过对该崩溃信息进行分析便可以了解到该应用可能存在的问题。该技术方案可以在不同场景下执行对应用的测试,更贴近应用的实际使用情况,同时也不需要复杂的测试流程,只需要在应用运行时进行监控和录制系统信息即可,简单方便,不仅测试人员可以实现,普通用户、开发人员、产品经理等都可以实现这种测试。
在本发明的一个实施例中,图2所示的装置进一步包括:崩溃信息处理单元240,适于在智能终端的屏幕上展示指定应用的崩溃信息;和/或,向服务器发送指定应用的崩溃信息。
在本发明的一个实施例中,图2所示的装置中,崩溃信息提取单元230,适于从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
在本发明的一个实施例中,上述装置中,关键字包括:指定应用的包名和/或崩溃信息识别关键字。
在本发明的一个实施例中,上述装置中,崩溃信息提取单元230,进一步适于从保存在本地的关键字列表中获取预设的一个或多个关键字;关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;或者,崩溃信息提取单元230,进一步适于向服务器发送包含指定应用的标识的请求,接收服务器返回的一个或多个关键字。
在本发明的一个实施例中,上述装置中,应用确定单元210,适于获取智能终端上安装的应用的列表;展示列表,并接收用户在列表上选择一个应用的指令;将用户选择的应用作为待监控应用。
在本发明的一个实施例中,上述装置中,录制单元220,进一步适于将录制的系统信息保存到指定大小的存储空间中,当存储空间存满时,用新录制的系统信息覆盖存储空间中的录制时间最早的系统信息。
在本发明的一个实施例中,上述装置进一步包括:系统环境监测单元,适于监测智能终端的系统环境信息;崩溃信息提取单元,进一步适于将指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为指定应用的崩溃信息的一部分。
在本发明的一个实施例中,上述装置中,系统环境信息包括如下中的一种或多种:CPU运行状态信息;内存占用信息;网络连接状况信息;网络流量信息。
需要说明的是,上述各装置实施例的具体实施方式与前述对应方法实施例的具体实施方式相同,在此不再赘述。
综上所述,本发明的技术方案,能够在任一台智能终端上测试应用,在指定应用启动至发生崩溃事件的时间内,录制该智能终端的安卓系统的系统信息并从中提取该应用的崩溃信息,通过对该崩溃信息进行分析便可以了解到该应用可能存在的问题。该技术方案可以在不同场景下执行对应用的测试,更贴近应用的实际使用情况,同时也不需要复杂的测试流程,只需要在应用运行时进行监控和录制系统信息即可,简单方便,不仅测试人员可以实现,普通用户、开发人员、产品经理等都可以实现这种测试。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的实现在复杂场景中获取应用崩溃信息的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明的实施例公开了A1、一种实现在复杂场景中获取应用崩溃信息的方法,其中,该方法包括:
确定智能终端上安装的指定应用为待监控应用;
在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;
当监控到所述指定应用的崩溃事件时,停止录制和监控;
从所录制的系统信息中提取所述指定应用的崩溃信息。
A2、如A1所述的方法,其中,该方法进一步包括:
在智能终端的屏幕上展示所述指定应用的崩溃信息;
和/或,
向服务器发送所述指定应用的崩溃信息。
A3、如A1所述的方法,其中,所述从所录制的系统信息中提取所述指定应用的崩溃信息包括:
从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;
从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
A4、如A3所述的方法,其中,
所述关键字包括:所述指定应用的包名和/或崩溃信息识别关键字。
A5、如A3所述的方法,其中,该方法进一步包括:
从保存在本地的关键字列表中获取所述预设的一个或多个关键字;所述关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;
或者,
向服务器发送包含所述指定应用的标识的请求,接收服务器返回的一个或多个关键字。
A6、如A1所述的方法,其中,所述确定智能终端上安装的指定应用为待监控应用包括:
获取所述智能终端上安装的应用的列表;
展示所述列表,并接收用户在所述列表上选择一个应用的指令;
将用户选择的应用作为待监控应用。
A7、如A1所述的方法,其中,该方法进一步包括:
将录制的系统信息保存到指定大小的存储空间中,当所述存储空间存满时,用新录制的系统信息覆盖所述存储空间中的录制时间最早的系统信息。
A8、如A1-A7中任一项所述的方法,其中,该方法进一步包括:
监测所述智能终端的系统环境信息;
将所述指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为所述指定应用的崩溃信息的一部分。
A9、如A8所述的方法,其中,所述系统环境信息包括如下中的一种或多种:
CPU运行状态信息;
内存占用信息;
网络连接状况信息;
网络流量信息。
本发明的实施例还公开了B10、一种实现在复杂场景中获取应用崩溃信息的装置,其中,该装置包括:
应用确定单元,适于确定智能终端上安装的指定应用为待监控应用;
录制单元,适于在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;当监控到所述指定应用的崩溃事件时,停止录制和监控;
崩溃信息提取单元,适于从所录制的系统信息中提取所述指定应用的崩溃信息。
B11、如B10所述的装置,其中,该装置进一步包括:
崩溃信息处理单元,适于在智能终端的屏幕上展示所述指定应用的崩溃信息;和/或,向服务器发送所述指定应用的崩溃信息。
B12、如B10所述的装置,其中,
所述崩溃信息提取单元,适于从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
B13、如B12所述的装置,其中,
所述关键字包括:所述指定应用的包名和/或崩溃信息识别关键字。
B14、如B12所述的装置,其中,
所述崩溃信息提取单元,进一步适于从保存在本地的关键字列表中获取所述预设的一个或多个关键字;所述关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;
或者,
所述崩溃信息提取单元,进一步适于向服务器发送包含所述指定应用的标识的请求,接收服务器返回的一个或多个关键字。
B15、如B10所述的装置,其中,
所述应用确定单元,适于获取所述智能终端上安装的应用的列表;展示所述列表,并接收用户在所述列表上选择一个应用的指令;将用户选择的应用作为待监控应用。
B16、如B10所述的装置,其中,
所述录制单元,进一步适于将录制的系统信息保存到指定大小的存储空间中,当所述存储空间存满时,用新录制的系统信息覆盖所述存储空间中的录制时间最早的系统信息。
B17、如B10-B16中任一项所述的装置,其中,该装置进一步包括:
系统环境监测单元,适于监测所述智能终端的系统环境信息;
所述崩溃信息提取单元,进一步适于将所述指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为所述指定应用的崩溃信息的一部分。
B18、如B17所述的装置,其中,所述系统环境信息包括如下中的一种或多种:CPU运行状态信息;内存占用信息;网络连接状况信息;网络流量信息。

Claims (10)

1.一种实现在复杂场景中获取应用崩溃信息的方法,其中,该方法包括:
确定智能终端上安装的指定应用为待监控应用;
在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;
当监控到所述指定应用的崩溃事件时,停止录制和监控;
从所录制的系统信息中提取所述指定应用的崩溃信息。
2.如权利要求1所述的方法,其中,该方法进一步包括:
在智能终端的屏幕上展示所述指定应用的崩溃信息;
和/或,
向服务器发送所述指定应用的崩溃信息。
3.如权利要求1所述的方法,其中,所述从所录制的系统信息中提取所述指定应用的崩溃信息包括:
从所录制的系统信息中截取从崩溃事件发生时刻往前的预设时间段内的系统信息;
从所截取的系统信息中提取与预设的一个或多个关键字相关的信息。
4.如权利要求3所述的方法,其中,
所述关键字包括:所述指定应用的包名和/或崩溃信息识别关键字。
5.如权利要求3所述的方法,其中,该方法进一步包括:
从保存在本地的关键字列表中获取所述预设的一个或多个关键字;所述关键字列表中保存有多个应用标识和各自对应的一个或多个关键字,和/或保存有多个崩溃信息识别关键字;
或者,
向服务器发送包含所述指定应用的标识的请求,接收服务器返回的一个或多个关键字。
6.如权利要求1所述的方法,其中,所述确定智能终端上安装的指定应用为待监控应用包括:
获取所述智能终端上安装的应用的列表;
展示所述列表,并接收用户在所述列表上选择一个应用的指令;
将用户选择的应用作为待监控应用。
7.如权利要求1所述的方法,其中,该方法进一步包括:
将录制的系统信息保存到指定大小的存储空间中,当所述存储空间存满时,用新录制的系统信息覆盖所述存储空间中的录制时间最早的系统信息。
8.如权利要求1-7中任一项所述的方法,其中,该方法进一步包括:
监测所述智能终端的系统环境信息;
将所述指定应用发生崩溃的时刻对应的一段时间内的系统环境信息作为所述指定应用的崩溃信息的一部分。
9.如权利要求8所述的方法,其中,所述系统环境信息包括如下中的一种或多种:
CPU运行状态信息;
内存占用信息;
网络连接状况信息;
网络流量信息。
10.一种实现在复杂场景中获取应用崩溃信息的装置,其中,该装置包括:
应用确定单元,适于确定智能终端上安装的指定应用为待监控应用;
录制单元,适于在所述指定应用启动时,开始录制该智能终端的安卓系统的系统信息并监控所述指定应用的崩溃事件;当监控到所述指定应用的崩溃事件时,停止录制和监控;
崩溃信息提取单元,适于从所录制的系统信息中提取所述指定应用的崩溃信息。
CN201611111680.XA 2016-12-06 2016-12-06 一种实现在复杂场景中获取应用崩溃信息的方法和装置 Pending CN108156048A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611111680.XA CN108156048A (zh) 2016-12-06 2016-12-06 一种实现在复杂场景中获取应用崩溃信息的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611111680.XA CN108156048A (zh) 2016-12-06 2016-12-06 一种实现在复杂场景中获取应用崩溃信息的方法和装置

Publications (1)

Publication Number Publication Date
CN108156048A true CN108156048A (zh) 2018-06-12

Family

ID=62468612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611111680.XA Pending CN108156048A (zh) 2016-12-06 2016-12-06 一种实现在复杂场景中获取应用崩溃信息的方法和装置

Country Status (1)

Country Link
CN (1) CN108156048A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144874A (zh) * 2018-08-22 2019-01-04 北京奇虎科技有限公司 一种测试环境的监测方法和装置
CN109495340A (zh) * 2018-11-02 2019-03-19 国电南京自动化股份有限公司 一种Android应用性能监控统计方法及系统
CN111198725A (zh) * 2019-12-30 2020-05-26 掌阅科技股份有限公司 应用启动的处理方法、计算设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080114873A1 (en) * 2006-11-10 2008-05-15 Novell, Inc. Event source management using a metadata-driven framework
CN105159832A (zh) * 2015-09-29 2015-12-16 北京奇虎科技有限公司 一种在应用测试中收集应用异常信息的方法、装置和系统
CN106055485A (zh) * 2016-07-08 2016-10-26 北京奇虎科技有限公司 一种测试应用的方法、装置和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080114873A1 (en) * 2006-11-10 2008-05-15 Novell, Inc. Event source management using a metadata-driven framework
CN105159832A (zh) * 2015-09-29 2015-12-16 北京奇虎科技有限公司 一种在应用测试中收集应用异常信息的方法、装置和系统
CN106055485A (zh) * 2016-07-08 2016-10-26 北京奇虎科技有限公司 一种测试应用的方法、装置和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144874A (zh) * 2018-08-22 2019-01-04 北京奇虎科技有限公司 一种测试环境的监测方法和装置
CN109144874B (zh) * 2018-08-22 2023-02-17 北京奇虎科技有限公司 一种测试环境的监测方法和装置
CN109495340A (zh) * 2018-11-02 2019-03-19 国电南京自动化股份有限公司 一种Android应用性能监控统计方法及系统
CN111198725A (zh) * 2019-12-30 2020-05-26 掌阅科技股份有限公司 应用启动的处理方法、计算设备及计算机存储介质
CN111198725B (zh) * 2019-12-30 2023-02-28 掌阅科技股份有限公司 应用启动的处理方法、计算设备及计算机存储介质

Similar Documents

Publication Publication Date Title
US9152521B2 (en) Systems and methods for testing content of mobile communication devices
CN108427633B (zh) 显示界面的处理方法及装置
CN103761178B (zh) 一种实现应用卸载调查的方法
CN103944944B (zh) 分享网页链接的方法、电子设备及系统
CN108399119B (zh) 浏览服务内核引擎数据处理、自动化测试的方法和装置
CN107329750A (zh) 应用程序中广告页面的识别方法、跳转方法及移动终端
CN105827664B (zh) 漏洞检测方法及装置
CN108156048A (zh) 一种实现在复杂场景中获取应用崩溃信息的方法和装置
CN105607944B (zh) 一种共享应用环境的方法及装置
CN105607799B (zh) 数据处理方法及装置
CN106201811A (zh) 应用程序的故障恢复方法和终端
US10241808B2 (en) Determining test application effectiveness
CN109672909A (zh) 数据处理方法、装置、电子设备及可读存储介质
CN105515909B (zh) 一种数据采集测试方法和装置
CN107102950A (zh) 一种应用程序测试方法和装置
CN108023905B (zh) 物联网应用系统及方法
CN103546551B (zh) 应用软件智能下载方法、装置和系统
CN105554424A (zh) 在应用中进行视频播放的方法和装置
CN109032911B (zh) 用于移动设备的帧率检测方法、装置及电子设备
CN117241276B (zh) 一种面向移动应用的检测工具及检测方法、系统及设备
CN104461741B (zh) 基于图形设备接口的计算设备优化方法及装置
CN107015744B (zh) 一种平板设备的截屏控制方法及平板设备
CN105404827B (zh) 控制应用程序之间通信的方法、装置及系统
CN108062401A (zh) 应用推荐方法、装置及存储介质
CN108256328A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180612

RJ01 Rejection of invention patent application after publication