CN108804299A - 应用程序异常处理方法及装置 - Google Patents

应用程序异常处理方法及装置 Download PDF

Info

Publication number
CN108804299A
CN108804299A CN201710282449.5A CN201710282449A CN108804299A CN 108804299 A CN108804299 A CN 108804299A CN 201710282449 A CN201710282449 A CN 201710282449A CN 108804299 A CN108804299 A CN 108804299A
Authority
CN
China
Prior art keywords
scene information
application program
information
record
abnormal
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.)
Granted
Application number
CN201710282449.5A
Other languages
English (en)
Other versions
CN108804299B (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710282449.5A priority Critical patent/CN108804299B/zh
Priority to PCT/CN2018/081525 priority patent/WO2018196559A1/zh
Publication of CN108804299A publication Critical patent/CN108804299A/zh
Priority to US16/504,810 priority patent/US10838838B2/en
Application granted granted Critical
Publication of CN108804299B publication Critical patent/CN108804299B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • 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/079Root cause analysis, i.e. error or fault diagnosis
    • 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/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种应用程序异常处理方法,包括:记录基于应用程序的线程进行操作时的场景信息;接收应用程序出现异常的异常指示信息;根据异常指示信息,从记录的场景信息中提取应用程序运行出现异常时对应的场景信息;其中,应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;各个功能模块对应有各自唯一标识TAG,各个UI对应有各自唯一的标识ID;记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及操作页面对应的TAG和ID;根据提取的场景信息进行异常分析。本发明还公开了一种应用程序异常处理装置,解决了现有技术中应用程序出现异常时很难定位原因并修复的技术问题。

Description

应用程序异常处理方法及装置
技术领域
本发明涉及计算机领域,尤其涉及应用程序异常处理方法及应用程序异常处理装置。
背景技术
随着电子科技以及互联网技术的发展,电子设备(特别是智能移动设备) 的功能越来越强大,只要用户按照自身的需求在电子设备上安装各种应用程序 APP,便可以通过移动互联网完成各种事务。
然而应用程序在运行过程中会出现异常问题,例如发生应用程序无响应(Application Not Responding,ANR),ANR发生时,会导致App界面点击无响应、按键无响应、滑动卡顿、不流畅、或自动退出等情况,如图1示出的现有技术中出现ANR时的界面示意图,有些会提示无响应框,但也有些不会弹出提示框,即发生了不可见ANR的APP会立即被杀kill掉,停止运行,严重影响用户体验和正常使用。发生ANR时,***会记录对应的trace文件,像android***会在/data/anr/或/data/system/dropbox目录下生成对应的trace文件,trace文件中记录了发生ANR时App和***基础模块中各个线程的堆栈和状态信息,是否死锁等情况。
目前现有技术一般都是通过分析trace文件去尝试定位ANR的原因。然而 trace文件中的堆栈信息80%以上都是***内部的trace信息,无法具体定位App 中具体哪些业务或用户的哪些操作导致的ANR问题,对于大部分的ANR问题,就很难定位原因并修复。
发明内容
本发明实施例所要解决的技术问题在于,提供应用程序异常处理方法及应用程序异常处理装置,解决现有技术中应用程序出现异常时(如ANR)很难定位原因并修复的技术问题。
为了解决上述技术问题,本发明实施例第一方面公开了一种应用程序异常处理方法,包括:
记录基于应用程序的线程进行操作时的场景信息;
接收所述应用程序出现异常的异常指示信息;
根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;其中,所述应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个 UI对应有各自唯一的标识ID;所述记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及所述操作页面对应的TAG和ID;
根据提取的场景信息进行异常分析。
结合第一方面,在第一种可能的实现方式中,所述根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息之前,还包括:
将应用程序划分多个功能模块;
设置每个功能模块各自对应的唯一TAG,以及每个UI各自对应的唯一ID。
结合第一方面,在第二种可能的实现方式中,所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;根据提取的场景信息进行异常分析,包括:
将记录的场景信息发送给所述应用程序对应的后台服务器;所述后台服务器用于从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
结合第一方面,或者第一方面的第一种可能的实现方式,或者第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述根据提取的场景信息进行异常分析包括:
根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点,以及所述操作页面对应的TAG和ID。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述记录的场景信息还包括线程的事件处理器处理的事件信息;所述事件信息包括处理事件的标识以及处理时长;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时所述事件处理器处理的事件信息、以及上一次所述事件处理器处理的事件信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述记录的场景信息还包括针对所述应用程序的操作页面的操作事件信息;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时的操作事件信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述记录的场景信息还包括针对所述应用程序的线程的广播事件信息;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时的线程的广播事件信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息。
结合第一方面的第六种可能的实现方式,在第七种可能的实现方式中,所述记录的场景信息还包括针对所述应用程序的线程的服务service生命周期信息;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时的线程的 service生命周期信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的service生命周期信息。
结合第一方面,在第八种可能的实现方式中,所述记录基于应用程序的线程进行操作的场景信息,包括:
以Key-Value的方式记录基于应用程序的线程进行操作的场景信息;所述 Key表征行为类型,所述Value表征行为内容。
本发明实施例第二方面公开了一种应用程序异常处理装置,包括:
记录模块,用于记录基于应用程序的线程进行操作时的场景信息;
异常信息接收模块,用于接收所述应用程序出现异常的异常指示信息;
提取模块,用于根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;其中,所述应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个UI对应有各自唯一的标识ID;所述记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及所述操作页面对应的TAG和ID;
异常分析模块,用于根据提取的场景信息进行异常分析。
结合第二方面,在第一种可能的实现方式中,所述装置还包括:
划分模块,用于所述提取模块从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息之前,将应用程序划分多个功能模块;
标识设置模块,用于设置每个功能模块各自对应的唯一TAG,以及每个UI 各自对应的唯一ID。
结合第二方面,在第二种可能的实现方式中,所述异常分析模块具体用于将记录的场景信息发送给所述应用程序对应的后台服务器;所述后台服务器用于从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
结合第二方面,或者第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述异常分析模块包括:
第一定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点,以及所述操作页面对应的TAG和ID。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,记录的所述场景信息还包括线程的事件处理器处理的事件信息;所述事件信息包括处理事件的标识以及处理时长;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的事件处理器处理的事件信息、以及上一次所述事件处理器处理的事件信息;
所述异常分析模块还包括第二定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,记录的所述场景信息还包括针对所述应用程序的操作页面的操作事件信息;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时操作页面的操作事件信息;
所述异常分析模块还包括第三定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,记录的所述场景信息还包括针对所述应用程序的线程的广播事件信息;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的广播事件信息;
所述异常分析模块还包括第四定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息。
结合第二方面的第六种可能的实现方式,在第七种可能的实现方式中,记录的所述场景信息还包括针对所述应用程序的线程的服务service生命周期信息;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的service生命周期信息;
所述异常分析模块还包括第五定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的service生命周期信息。
结合第二方面的第七种可能的实现方式,在第八种可能的实现方式中,所述记录模块具体用于,以Key-Value的方式记录基于应用程序的线程进行操作的场景信息;所述Key表征行为类型,所述Value表征行为内容。
实施本发明实施例,通过记录基于应用程序的线程进行操作的场景信息;当应用程序运行出现异常时,从记录的场景信息中提取应用程序运行出现异常时对应的场景信息;该场景信息包括针对该应用程序的操作页面的生命周期节点,以及该操作页面对应的TAG和ID等;然后根据提取的场景信息进行异常分析。实现了快速准确地找到发生异常问题的原因,解决了现有技术中应用程序出现异常时很难定位原因并修复的技术问题,例如解决了现有技术中80%以上无法跟进的ANR问题。另外,该场景信息还可以包括线程的事件处理器处理的事件信息、针对所述应用程序的操作页面的操作事件信息、以及针对所述应用程序的线程的服务service生命周期信息,可以进一步确认发生异常问题的具体功能模块,进一步有利于对异常问题的跟踪和分析。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中出现ANR时的界面示意图;
图2是本发明实施例提供的应用程序异常处理方法的流程示意图;
图3是本发明实施例提供的划分功能模块的原理示意图;
图4是本发明实施例提供的功能模块下多个用户界面的原理示意图;
图5是本发明实施例提供的操作页面的生命周期节点的示意图;
图6a是本发明实施例提供的提取场景信息的原理示意图;
图6b是本发明提供的应用程序异常处理方法的另一实施例的流程示意图;
图7是本发明提供的应用程序异常处理方法的另一实施例的流程示意图;
图8a是本发明实施例提供的应用程序异常处理装置的结构示意图;
图8b是本发明提供的应用程序异常处理装置的另一实施例的结构示意图;
图9是本发明提供的应用程序异常处理装置的另一实施例的结构示意图;
图10是本发明实施例提供的应用程序异常处理***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
如图2示出的本发明实施例提供的应用程序异常处理方法的流程示意图,可以包括如下步骤:
步骤S200:记录基于应用程序的线程进行操作时的场景信息;
具体地,用户或者***在启动了应用程序后,针对应用程序的线程进行操作时将实时地记录场景信息,或者按照一定的时间间隔来记录场景信息。
步骤S202:接收所述应用程序出现异常的异常指示信息;
具体地,当***接收到该应用程序运行是出现异常的异常指示信息时,即表明该应用程序出现了异常。
步骤S204:根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;
具体地,本发明实施例中的应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个UI 对应有各自唯一的标识ID;该记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及该操作页面对应的TAG和ID;***在接收到该异常指示信息,即触发从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息。在步骤S204之前还可以包括:将应用程序划分多个功能模块;设置每个功能模块各自对应的唯一TAG,以及每个UI各自对应的唯一 ID。具体地,本发明实施例中电子设备或终端设备的应用程序被预先划分为多个功能模块或业务模块,如图3示出的本发明实施例提供的划分功能模块的原理示意图。每个功能模块内有多个用户界面UI,如图4示出的本发明实施例提供的功能模块下多个用户界面的原理示意图。并且,本发明实施例中的应用程序的各个功能模块对应有各自唯一标识TAG,各个UI对应有各自唯一的标识 ID;也就是说,预先定义一些唯一标识,用于区分不同的功能模块以及每个功能模块下不同的UI;因此通过TAG+ID的标识组合,可以快速定位到用户当前正在操作哪个UI。
本发明实施例中要记录的场景信息包括以下一种或多种:
1)针对应用程序的操作页面的生命周期节点;
以android安卓***中页面对应的生命周期节点为例,如图5示出的本发明实施例提供的操作页面的生命周期节点的示意图,从创建->启动->进入界面->暂停->重启->停止->销毁等每个阶段(节点)都是在主线程中流转的,都有可能发生ANR等异常问题,通过记录应用程序在整个过程中的生命周期节点,可以知道发生异常问题时所处的运行阶段。
2)操作页面对应的TAG和ID;
在用户对应用程序进行操作时,记录应用程序进入了哪个功能模块,哪个UI。通过记录操作页面对应的TAG和ID,可以知道发生异常问题时应用程序在处理的功能模块和界面。
3)线程的事件处理器处理的事件信息;
可以记录包括主线程和其它非主线程的事件处理器Handler处理的事件信息。由于很多ANR的产生都是由于主线程中Handler事件分发超时导致。每个 Handler事件都可以设有具体的ID,记录上次的Handler事件ID和ANR发生时的Handler事件ID信息,可以快速定位到Handler中的哪个事件操作超时导致了其他事件被阻塞超时出现了ANR。
4)针对应用程序的操作页面的操作事件信息;
例如可以记录该应用程序主线程的按键或触屏事件信息。用户操作按钮或点击页面的操作信息如点击操作back按键的up事件或者滑动页面的list事件信息等。可以进一步缩小可能出现异常问题的代码段。
5)针对应用程序的线程的广播事件信息;
记录应用程序的线程的广播事件信息ID或广播的Action相关信息,可以通过具体的广播事件信息找到具体的业务模块或功能模块来源,来确定是哪个业务发出的广播信息造成了阻塞从而导致了ANR发生。
6)针对应用程序的跨进程通信(Inter-Process Communication,IPC);
应用程序运行出现异常的情况虽然主要是由于主线程中处理的任务或事件异常导致的,例如主线程中处理的任务超时,导致主线程收到阻塞,后续主线程中待分发的事件、广播或需要在主线程进行的操作无法及时被分发或完成,从而造成ANR等异常问题。但还有些情况是跨进程之间的通信造成的,因此记录IPC信息可以有助于定位应用程序出现异常问题。
7)针对应用程序的线程的服务service生命周期信息;
记录应用程序的线程中具体的service名称等信息,可以快速定位service中发生ANR时对应的具体业务模块。
具体地,当应用程序运行出现异常时,可以通过记录上述场景信息来提取出出现异常时对应的场景信息,如图6a示出的本发明实施例提供的提取场景信息的原理示意图,通过预先定义标识,并记录的多个场景信息,可以提取出出现异常问题时页面活动的生命周期节点、Handler的当前一次和最近一次的处理事件信息、当前一次和最近一次的操作事件信息(如按键事件信息)、当前一次和最近一次的广播事件信息、当前一次和最近一次的IPC信息、或service生命周期信息等等。
步骤S206:根据提取的场景信息进行异常分析。
具体地,可以根据提取的该应用程序运行出现异常时的操作页面的生命周期节点、该操作页面对应的TAG和ID、该事件处理器处理的事件信息、上一次事件处理器处理的事件信息、当前一次和最近一次的操作事件信息(如按键事件信息)、当前一次和最近一次的广播事件信息、当前一次和最近一次的IPC信息、以及service生命周期信息等等,进行异常分析。
进一步地,以图6a为例,结合图6b示出的本发明提供的应用程序异常处理方法的另一实施例的流程示意图,再进行详细说明,可以包括如下步骤:
步骤S600:将应用程序划分多个功能模块;
步骤S602:设置每个功能模块各自对应的唯一TAG,以及每个UI各自对应的唯一ID;
步骤S604:记录基于应用程序的线程进行操作的操作页面的生命周期节点、操作页面对应的TAG和ID、线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息、操作页面的操作事件信息、线程的广播事件信息、应用程序的IPC信息、线程的service生命周期信息;
具体地,步骤S600至步骤S604的实现方式可以参阅上述图2至图6a的实施例,这里不再赘述。
步骤S606:当所述应用程序运行出现异常时,从记录的所述场景信息中提取所述应用程序运行出现异常时对应的场景信息;
步骤S608:根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点;
具体地,通过提取应用程序运行出现异常时操作页面的生命周期节点可以定位发生异常问题时所处的运行阶段。
步骤S610:根据提取的场景信息定位所述应用程序运行出现异常时操作页面对应的TAG和ID;
具体地,通过提取应用程序运行出现异常时操作页面对应的TAG和ID,获知到应用程序进入了哪个功能模块,哪个UI,那么可以定位发生异常问题时应用程序在处理的功能模块和界面。
步骤S612:根据提取的场景信息所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息;
具体地,通过提取应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息,可以快速定位到Handler中的哪个事件操作超时导致了其他事件被阻塞超时出现了ANR。
步骤S614:根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息;
具体地,通过提取应用程序运行出现异常时操作页面的操作事件信息(包括点击操作back按键的up事件或者滑动页面的list事件信息等),定位出现异常问题时可以进一步缩小可能出现异常问题的代码段。
步骤S616:根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息;
具体地,通过提取应用程序运行出现异常时线程的广播事件信息,可以找到具体的业务模块或功能模块来源,来定位是哪个业务发出的广播信息造成了阻塞从而导致了ANR发生。
步骤S618:根据提取的场景信息定位所述应用程序运行出现异常时是否由跨进程之间的通信造成的;
具体地,通过提取应用程序运行出现异常时IPC信息,可以有助于定位应用程序出现异常问题是否由跨进程之间的通信造成的。
步骤S620:根据提取的场景信息定位所述应用程序运行出现异常时线程的service生命周期信息。
具体地,通过提取应用程序运行出现异常时线程的service生命周期信息,可以快速定位service中发生ANR时对应的具体业务模块。
进一步地,本发明实施例在记录基于应用程序的线程进行操作的场景信息时,可以包括:以Key-Value的方式记录基于应用程序的线程进行操作的场景信息;所述Key表征行为类型,所述Value表征行为内容。
具体地,例如记录针对应用程序的操作页面的生命周期节点时,Key可以为“Activity”的标识,以表征类型是操作页面的生命周期,对应的Value表征的行为内容即为生命周期的具体阶段,如“onCreate创建”阶段等,用于发现用户在页面的哪个生命阶段发生的ANR,可以定位到是刚进入页面就发生的ANR 还是页面销毁的时候发生的ANR或者其他情况发生的ANR,结合业务就比较容易发现是哪些代码段导致的ANR。
又如,记录线程的事件处理器处理的事件信息时,Key可以为Handler事件信息,以表征类型;对应的Value可以为Handler事件的ID及其处理的时长信息。等等。
本发明实施例通过Key-Value的方式记录基于应用程序的线程进行操作的场景信息,可以更加清晰地记录基于应用程序的线程进行操作的场景信息,并节省存储信息的空间,而且在后续进行异常分析时可以更加快速的分析出结果。
需要说明的是,本发明实施例的应用程序异常处理方法可以适用于个人计算机、智能移动终端(如移动电话、移动电脑、平板电脑)、个人数字助理 (Personal DigitalAssistant,PDA)、智能电视、智能手表、智能眼镜、智能手环等安装有应用程序的电子设备或终端设备上。
需要说明的是,本发明实施例进行异常分析的行为可以通过后台服务器来完成,也可以通过终端自身来完成。若通过后台服务器来进行异常分析,那么可以如图7示出的本发明提供的应用程序异常处理方法的另一实施例的流程示意图,可以包括如下步骤:
步骤S700:终端记录基于应用程序的线程进行操作的场景信息;
具体地,参考上述图2实施例中的步骤S200中的描述,这里不再赘述。
步骤S702:当应用程序运行出现异常时,将记录的所述场景信息发送给所述应用程序对应的后台服务器;
步骤S704:后台服务器接收所述场景信息;
步骤S706:后台服务器从记录的所述场景信息中提取所述应用程序运行出现异常时对应的场景信息;
步骤S708:后台服务器根据提取的场景信息进行异常分析。
具体地,步骤S706和S708的具体实现方式,可以参考上述图2实施例中的步骤S202和S204的实现方式,这里不再赘述。
实施本发明实施例,通过记录基于应用程序的线程进行操作的场景信息;当应用程序运行出现异常时,从记录的场景信息中提取应用程序运行出现异常时对应的场景信息;该场景信息包括针对该应用程序的操作页面的生命周期节点,以及该操作页面对应的TAG和ID等;然后根据提取的场景信息进行异常分析。实现了快速准确地找到发生异常问题的原因,解决了现有技术中应用程序出现异常时很难定位原因并修复的技术问题,例如解决了现有技术中80%以上无法跟进的ANR问题。另外,该场景信息还可以包括线程的事件处理器处理的事件信息、针对所述应用程序的操作页面的操作事件信息、以及针对所述应用程序的线程的服务service生命周期信息,可以进一步确认发生异常问题的具体功能模块,进一步有利于对异常问题的跟踪和分析。
为了便于更好地实施本发明实施例的上述方案,本发明还对应提供了一种应用程序异常处理装置,下面结合附图来进行详细说明:
如图8a示出的本发明实施例提供的应用程序异常处理装置的结构示意图,应用程序异常处理装置80可以包括记录模块800、异常信息接收模块802、提取模块804和异常分析模块806,其中,
记录模块800用于记录基于应用程序的线程进行操作时的场景信息;
异常信息接收模块802用于接收所述应用程序出现异常的异常指示信息;
提取模块804用于根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;其中,所述应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个UI对应有各自唯一的标识ID;所述记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及所述操作页面对应的TAG和ID;
异常分析模块806用于根据提取的场景信息进行异常分析。
具体地,如图8b示出的本发明提供的应用程序异常处理装置的另一实施例的结构示意图,应用程序异常处理装置80包括记录模块800、异常信息接收模块802、提取模块804和异常分析模块806,外,还可以包括划分模块808和标识设置模块8010,其中,
划分模块808用于提取模块804从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息之前,将应用程序划分多个功能模块;
标识设置模块8010用于设置每个功能模块各自对应的唯一TAG,以及每个 UI各自对应的唯一ID。
异常分析模块806可以具体用于将记录的场景信息发送给所述应用程序对应的后台服务器;所述后台服务器用于从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
进一步地,异常分析模块806可以包括:
第一定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点,以及所述操作页面对应的TAG和ID。
记录模块800记录的所述场景信息还可以包括线程的事件处理器处理的事件信息;所述事件信息包括处理事件的标识以及处理时长;
提取模块804还可以用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的事件处理器处理的事件信息、以及上一次所述事件处理器处理的事件信息;
异常分析模块806还可以包括第二定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息。
记录模块800记录的所述场景信息还可以包括针对所述应用程序的操作页面的操作事件信息;
提取模块804还可以用于,从记录的所述场景信息中提取所述应用程序运行出现异常时操作页面的操作事件信息;
异常分析模块806还可以包括第三定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息。
记录模块800记录的所述场景信息还可以包括针对所述应用程序的线程的广播事件信息;
提取模块804还可以用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的广播事件信息;
异常分析模块806还可以包括第四定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息。
记录模块800记录的所述场景信息还可以包括针对所述应用程序的线程的服务service生命周期信息;
提取模块804还可以用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的service生命周期信息;
异常分析模块806还可以包括第五定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的service生命周期信息。
记录模块800可以具体用于,以Key-Value的方式记录基于应用程序的线程进行操作的场景信息;所述Key表征行为类型,所述Value表征行为内容。
请参阅图9,图9是本发明提供的应用程序异常处理装置的另一实施例的结构示意图。其中,如图9所示,应用程序异常处理装置90可以包括:至少一个处理器901,例如CPU,至少一个网络接口904,用户接口903,存储器905,至少一个通信总线902以及显示屏906。其中,通信总线902用于实现这些组件之间的连接通信。其中,用户接口903可以包括触摸屏等等。网络接口904可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器905可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器,存储器905包括本发明实施例中的flash。存储器905可选的还可以是至少一个位于远离前述处理器901的存储***。如图9所示,作为一种计算机存储介质的存储器905中可以包括操作***、网络通信模块、用户接口模块以及应用程序异常处理程序。
在图9所示的应用程序异常处理装置90中,处理器901可以用于调用存储器905中存储的应用程序异常处理程序,并执行以下操作:
记录基于应用程序的线程进行操作时的场景信息;
接收所述应用程序出现异常的异常指示信息;
根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;其中,所述应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个 UI对应有各自唯一的标识ID;所述记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及所述操作页面对应的TAG和ID;
根据提取的场景信息进行异常分析。
具体地,当应用程序运行出现异常时,处理器901根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息之前,还包括:
将应用程序划分多个功能模块;
设置每个功能模块各自对应的唯一TAG,以及每个UI各自对应的唯一ID。
具体地,处理器901从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;根据提取的场景信息进行异常分析,可以包括:
通过网络接口904将记录的场景信息发送给所述应用程序对应的后台服务器;该后台服务器用于从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
具体地,处理器901根据提取的场景信息进行异常分析可以包括:
根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点,以及所述操作页面对应的TAG和ID。
具体地,记录的场景信息还包括线程的事件处理器处理的事件信息;所述事件信息包括处理事件的标识以及处理时长;
处理器901从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还可以包括:从记录的场景信息中提取所述应用程序运行出现异常时所述事件处理器处理的事件信息、以及上一次所述事件处理器处理的事件信息;
处理器901根据提取的场景信息进行异常分析还可以包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息。
具体地,记录的场景信息还包括针对所述应用程序的操作页面的操作事件信息;处理器901从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还可以包括:从记录的场景信息中提取所述应用程序运行出现异常时的操作事件信息;
处理器901根据提取的场景信息进行异常分析还可以包括:根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息。
具体地,记录的场景信息还包括针对所述应用程序的线程的广播事件信息;
处理器901从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还可以包括:从记录的场景信息中提取所述应用程序运行出现异常时的线程的广播事件信息;
处理器901根据提取的场景信息进行异常分析还可以包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息。
具体地,记录的场景信息还包括针对所述应用程序的线程的服务service生命周期信息;
处理器901从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还可以包括:从记录的场景信息中提取所述应用程序运行出现异常时的线程的service生命周期信息;
处理器901根据提取的场景信息进行异常分析还可以包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的service生命周期信息。
具体地,处理器901记录基于应用程序的线程进行操作的场景信息,可以包括:
以Key-Value的方式记录基于应用程序的线程进行操作的场景信息;所述 Key表征行为类型,所述Value表征行为内容。
需要说明的是,本发明实施例中的应用程序异常处理装置80或应用程序异常处理装置90中各模块的功能可对应参考上述各方法实施例中图1至图7任意实施例的具体实现方式,这里不再赘述。应用程序异常处理装置80或应用程序异常处理装置90可以包括但不限于个人计算机、智能移动终端(如移动电话、移动电脑、平板电脑)、个人数字助理(Personal Digital Assistant,PDA)、智能电视、智能手表、智能眼镜、智能手环等安装有应用程序的电子设备或终端设备。
进一步地,如图10示出的本发明实施例提供的应用程序异常处理***的结构示意图,应用程序异常处理***100可以包括终端设备1000和后台服务器 1002,其中该终端设备1000可以为本发明实施例中的应用程序异常处理装置80 或应用程序异常处理装置90,终端设备1000在记录基于应用程序的线程进行操作的场景信息后,若应用程序运行出现异常时,将记录的所述场景信息发送给所述应用程序对应的后台服务器1002,后台服务器1002从记录的所述场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
实施本发明实施例,通过记录基于应用程序的线程进行操作的场景信息;当应用程序运行出现异常时,从记录的场景信息中提取应用程序运行出现异常时对应的场景信息;该场景信息包括针对该应用程序的操作页面的生命周期节点,以及该操作页面对应的TAG和ID等;然后根据提取的场景信息进行异常分析。实现了快速准确地找到发生异常问题的原因,解决了现有技术中应用程序出现异常时很难定位原因并修复的技术问题,例如解决了现有技术中80%以上无法跟进的ANR问题。另外,该场景信息还可以包括线程的事件处理器处理的事件信息、针对所述应用程序的操作页面的操作事件信息、以及针对所述应用程序的线程的服务service生命周期信息,可以进一步确认发生异常问题的具体功能模块,进一步有利于对异常问题的跟踪和分析。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (14)

1.一种应用程序异常处理方法,其特征在于,包括:
记录基于应用程序的线程进行操作时的场景信息;
接收所述应用程序出现异常的异常指示信息;
根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;其中,所述应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个UI对应有各自唯一的标识ID;所述记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及所述操作页面对应的TAG和ID;
根据提取的场景信息进行异常分析。
2.如权利要求1所述的方法,其特征在于,所述根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息之前,还包括:
将应用程序划分多个功能模块;
设置每个功能模块各自对应的唯一TAG,以及每个UI各自对应的唯一ID。
3.如权利要求1所述的方法,其特征在于,所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;根据提取的场景信息进行异常分析,包括:
将记录的场景信息发送给所述应用程序对应的后台服务器;所述后台服务器用于从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
4.如权利要求1-3任一项所述的方法,其特征在于,所述根据提取的场景信息进行异常分析包括:
根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点,以及所述操作页面对应的TAG和ID。
5.如权利要求4所述的方法,其特征在于,所述记录的场景信息还包括线程的事件处理器处理的事件信息;所述事件信息包括处理事件的标识以及处理时长;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时所述事件处理器处理的事件信息、以及上一次所述事件处理器处理的事件信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息。
6.如权利要求5所述的方法,其特征在于,所述记录的场景信息还包括针对所述应用程序的操作页面的操作事件信息;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时的操作事件信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息。
7.如权利要求6所述的方法,其特征在于,所述记录的场景信息还包括针对所述应用程序的线程的广播事件信息;
所述从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,还包括:从记录的场景信息中提取所述应用程序运行出现异常时的线程的广播事件信息;
所述根据提取的场景信息进行异常分析还包括:根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息。
8.一种应用程序异常处理装置,其特征在于,包括:
记录模块,用于记录基于应用程序的线程进行操作时的场景信息;
异常信息接收模块,用于接收所述应用程序出现异常的异常指示信息;
提取模块,用于根据所述异常指示信息,从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息;其中,所述应用程序划分有多个功能模块,每个功能模块内有多个用户界面UI;其中各个功能模块对应有各自唯一标识TAG,各个UI对应有各自唯一的标识ID;所述记录的场景信息包括基于应用程序的线程进行操作时的操作页面的生命周期节点,以及所述操作页面对应的TAG和ID;
异常分析模块,用于根据提取的场景信息进行异常分析。
9.如权利要求8所述的装置,其特征在于,所述装置还包括:
划分模块,用于所述提取模块从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息之前,将应用程序划分多个功能模块;
标识设置模块,用于设置每个功能模块各自对应的唯一TAG,以及每个UI各自对应的唯一ID。
10.如权利要求9所述的装置,其特征在于,所述异常分析模块具体用于将记录的场景信息发送给所述应用程序对应的后台服务器;所述后台服务器用于从记录的场景信息中提取所述应用程序运行出现异常时对应的场景信息,并根据提取的场景信息进行异常分析。
11.如权利要求8或9所述的装置,其特征在于,所述异常分析模块包括:
第一定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时操作页面的生命周期节点,以及所述操作页面对应的TAG和ID。
12.如权利要求11所述的装置,其特征在于,记录的所述场景信息还包括线程的事件处理器处理的事件信息;所述事件信息包括处理事件的标识以及处理时长;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的事件处理器处理的事件信息、以及上一次所述事件处理器处理的事件信息;
所述异常分析模块还包括第二定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的事件处理器处理的事件信息以及上一次所述事件处理器处理的事件信息。
13.如权利要求12所述的装置,其特征在于,记录的所述场景信息还包括针对所述应用程序的操作页面的操作事件信息;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时操作页面的操作事件信息;
所述异常分析模块还包括第三定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时操作页面的操作事件信息。
14.如权利要求13所述的装置,其特征在于,记录的所述场景信息还包括针对所述应用程序的线程的广播事件信息;
所述提取模块还用于,从记录的所述场景信息中提取所述应用程序运行出现异常时线程的广播事件信息;
所述异常分析模块还包括第四定位单元,用于根据提取的场景信息定位所述应用程序运行出现异常时线程的广播事件信息。
CN201710282449.5A 2017-04-26 2017-04-26 应用程序异常处理方法及装置 Active CN108804299B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201710282449.5A CN108804299B (zh) 2017-04-26 2017-04-26 应用程序异常处理方法及装置
PCT/CN2018/081525 WO2018196559A1 (zh) 2017-04-26 2018-04-02 应用程序异常处理方法、装置及存储介质
US16/504,810 US10838838B2 (en) 2017-04-26 2019-07-08 Method and apparatus for dealing with abnormality of application program and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710282449.5A CN108804299B (zh) 2017-04-26 2017-04-26 应用程序异常处理方法及装置

Publications (2)

Publication Number Publication Date
CN108804299A true CN108804299A (zh) 2018-11-13
CN108804299B CN108804299B (zh) 2023-04-07

Family

ID=63920163

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710282449.5A Active CN108804299B (zh) 2017-04-26 2017-04-26 应用程序异常处理方法及装置

Country Status (3)

Country Link
US (1) US10838838B2 (zh)
CN (1) CN108804299B (zh)
WO (1) WO2018196559A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542689A (zh) * 2018-11-30 2019-03-29 努比亚技术有限公司 应用程序处理方法、终端以及计算机可读存储介质
CN109840203A (zh) * 2018-12-19 2019-06-04 珠海妙存科技有限公司 一种基于消息映射的vr自动化测试方法
CN110471817A (zh) * 2019-07-04 2019-11-19 厦门安盟网络股份有限公司 应用程序生命周期的监控方法、介质、设备及装置
CN110489318A (zh) * 2019-08-20 2019-11-22 Oppo(重庆)智能科技有限公司 systrace信息的抓取方法、装置、存储介质及终端
CN111338705A (zh) * 2020-02-13 2020-06-26 贝壳技术有限公司 一种数据处理的方法、装置和存储介质
CN111930616A (zh) * 2020-07-27 2020-11-13 北京大米未来科技有限公司 数据处理方法、装置、电子设备和可读存储介质
CN112835781A (zh) * 2019-11-25 2021-05-25 上海哔哩哔哩科技有限公司 一种操作功能的异常检测方法及装置
CN114880159A (zh) * 2022-07-13 2022-08-09 腾讯科技(深圳)有限公司 数据处理方法、装置、设备及存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367750B (zh) * 2018-12-26 2023-06-20 阿里巴巴集团控股有限公司 一种异常处理方法、装置及其设备
CN111176874B (zh) * 2019-12-23 2022-04-12 京东科技控股股份有限公司 应用程序异常退出的处理方法、装置、设备及存储介质
CN111488088B (zh) * 2020-04-07 2022-05-06 Oppo广东移动通信有限公司 设备状态标识方法、装置及智能终端
CN111752599A (zh) * 2020-06-23 2020-10-09 厦门美柚股份有限公司 应用程序的异常处理方法、装置、终端及介质
CN113835961B (zh) * 2021-09-23 2023-05-16 中国联合网络通信集团有限公司 告警信息监控方法、装置、服务器及存储介质
CN113835985B (zh) * 2021-09-27 2023-09-29 北京基调网络股份有限公司 一种监测卡顿、分析卡顿原因的方法、装置及设备
CN114996098B (zh) * 2022-06-24 2024-04-09 中电金信软件有限公司 一种异常处理方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8661299B1 (en) * 2013-05-31 2014-02-25 Linkedin Corporation Detecting abnormalities in time-series data from an online professional network
CN103995715A (zh) * 2014-05-06 2014-08-20 百度在线网络技术(北京)有限公司 应用程序的修复方法、装置及服务器
CN104424198A (zh) * 2013-08-21 2015-03-18 腾讯科技(深圳)有限公司 一种页面显示速度的获取方法及装置
CN104424094A (zh) * 2013-08-26 2015-03-18 腾讯科技(深圳)有限公司 一种异常信息获取方法、装置及智能终端设备
CN104503893A (zh) * 2014-12-22 2015-04-08 上海斐讯数据通信技术有限公司 一种andriod ***中Activity 状态信息保存、解析方法、及电子终端
CN105204979A (zh) * 2015-07-28 2015-12-30 维沃移动通信有限公司 安卓日志的记录方法及移动终端
CN105843741A (zh) * 2016-03-24 2016-08-10 腾讯科技(深圳)有限公司 应用程序的信息处理方法和装置
CN106161740A (zh) * 2015-04-01 2016-11-23 北京蓝海讯通科技有限公司 一种移动应用运行异常状态下的场景数据抓取方法和装置
CN106155741A (zh) * 2016-06-30 2016-11-23 努比亚技术有限公司 一种避免应用程序无响应的处理装置及方法
CN106502817A (zh) * 2016-10-26 2017-03-15 努比亚技术有限公司 一种处理数据的方法和终端

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516295B2 (en) * 2010-03-23 2013-08-20 Ca, Inc. System and method of collecting and reporting exceptions associated with information technology services
US9274894B1 (en) * 2013-12-09 2016-03-01 Twitter, Inc. System and method for providing a watchdog timer to enable collection of crash data
CN105279433B (zh) * 2014-07-10 2020-10-16 腾讯科技(深圳)有限公司 一种应用程序的防护方法及装置
US9645880B2 (en) * 2014-09-11 2017-05-09 Sap Se Supportability framework for mobile software applications
US9594666B2 (en) * 2014-10-09 2017-03-14 International Business Machines Corporation Enhancing weak consistency
US9842017B1 (en) * 2015-03-30 2017-12-12 Amazon Technologies, Inc. Collection and aggregation of device health metrics
CN104992117B (zh) * 2015-06-16 2018-04-13 北京航空航天大学 Html5移动应用程序的异常行为检测方法和行为模型建立方法
EP3106990A1 (en) * 2015-06-19 2016-12-21 Ecole Nationale de l'Aviation Civile A method, software and processing unit for verifying properties of interactive components
CN105528295B (zh) * 2016-01-04 2018-12-14 北京航空航天大学 移动应用程序异常行为检测方法及装置
US10223236B2 (en) * 2017-02-03 2019-03-05 International Business Machines Corporation Dynamic crash detection and debugging assistance
US10169194B2 (en) * 2017-03-22 2019-01-01 International Business Machines Corporation Multi-thread sequencing
US10911447B2 (en) * 2017-10-12 2021-02-02 Sap Se Application error fingerprinting

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8661299B1 (en) * 2013-05-31 2014-02-25 Linkedin Corporation Detecting abnormalities in time-series data from an online professional network
CN104424198A (zh) * 2013-08-21 2015-03-18 腾讯科技(深圳)有限公司 一种页面显示速度的获取方法及装置
CN104424094A (zh) * 2013-08-26 2015-03-18 腾讯科技(深圳)有限公司 一种异常信息获取方法、装置及智能终端设备
CN103995715A (zh) * 2014-05-06 2014-08-20 百度在线网络技术(北京)有限公司 应用程序的修复方法、装置及服务器
CN104503893A (zh) * 2014-12-22 2015-04-08 上海斐讯数据通信技术有限公司 一种andriod ***中Activity 状态信息保存、解析方法、及电子终端
CN106161740A (zh) * 2015-04-01 2016-11-23 北京蓝海讯通科技有限公司 一种移动应用运行异常状态下的场景数据抓取方法和装置
CN105204979A (zh) * 2015-07-28 2015-12-30 维沃移动通信有限公司 安卓日志的记录方法及移动终端
CN105843741A (zh) * 2016-03-24 2016-08-10 腾讯科技(深圳)有限公司 应用程序的信息处理方法和装置
CN106155741A (zh) * 2016-06-30 2016-11-23 努比亚技术有限公司 一种避免应用程序无响应的处理装置及方法
CN106502817A (zh) * 2016-10-26 2017-03-15 努比亚技术有限公司 一种处理数据的方法和终端

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
BYHIEG: "Android Activity的生命周期简单总结", 《HTTPS://WWW.CNBLOGS.COM/QIFENGSHI/P/5284271.HTML》 *
CODERZ9090: "腾讯Bugly,简单实用的崩溃日志收集", 《HTTPS://BLOG.CSDN.NET/ZHENGYANFENG1989/ARTICLE/DETAILS/51897070》 *
DUANQZ: "ANR机制以及问题分析", 《HTTPS://DUANQZ.GITHUB.IO/2015-10-12-ANR-ANALYSIS》 *
张明星: "《Android智能穿戴设备开发实战详解》", 31 January 2016 *
张楠: "基于工作流技术的大连港集装箱动态管理***" *
袁辉辉: "Android EventLog含义", 《HTTP://GITYUAN.COM/2016/05/15/EVENT-LOG/》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542689A (zh) * 2018-11-30 2019-03-29 努比亚技术有限公司 应用程序处理方法、终端以及计算机可读存储介质
CN109840203A (zh) * 2018-12-19 2019-06-04 珠海妙存科技有限公司 一种基于消息映射的vr自动化测试方法
CN109840203B (zh) * 2018-12-19 2022-05-10 珠海妙存科技有限公司 一种基于消息映射的vr自动化测试方法
CN110471817A (zh) * 2019-07-04 2019-11-19 厦门安盟网络股份有限公司 应用程序生命周期的监控方法、介质、设备及装置
CN110489318A (zh) * 2019-08-20 2019-11-22 Oppo(重庆)智能科技有限公司 systrace信息的抓取方法、装置、存储介质及终端
CN112835781A (zh) * 2019-11-25 2021-05-25 上海哔哩哔哩科技有限公司 一种操作功能的异常检测方法及装置
CN111338705A (zh) * 2020-02-13 2020-06-26 贝壳技术有限公司 一种数据处理的方法、装置和存储介质
CN111338705B (zh) * 2020-02-13 2021-03-26 北京房江湖科技有限公司 一种数据处理的方法、装置和存储介质
CN111930616A (zh) * 2020-07-27 2020-11-13 北京大米未来科技有限公司 数据处理方法、装置、电子设备和可读存储介质
CN111930616B (zh) * 2020-07-27 2024-03-19 北京大米未来科技有限公司 数据处理方法、装置、电子设备和可读存储介质
CN114880159A (zh) * 2022-07-13 2022-08-09 腾讯科技(深圳)有限公司 数据处理方法、装置、设备及存储介质
CN114880159B (zh) * 2022-07-13 2022-09-13 腾讯科技(深圳)有限公司 数据处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
WO2018196559A1 (zh) 2018-11-01
US10838838B2 (en) 2020-11-17
CN108804299B (zh) 2023-04-07
US20190332513A1 (en) 2019-10-31

Similar Documents

Publication Publication Date Title
CN108804299A (zh) 应用程序异常处理方法及装置
WO2018120721A1 (zh) 用户界面的测试方法、***、电子装置及计算机可读存储介质
CN104426944B (zh) 信息反馈方法、装置及终端
CN105677512B (zh) 一种数据处理方法、装置及电子设备
CN111552633A (zh) 接口的异常调用测试方法、装置、计算机设备及存储介质
CN109492152B (zh) 推送定制内容的方法、装置、计算机设备及存储介质
CN110084561A (zh) 断点跟进方法、电子装置及可读存储介质
CN113505272B (zh) 基于行为习惯的控制方法和装置、电子设备和存储介质
CN110908880A (zh) 埋点代码注入方法、事件上报方法及其相关设备
CN110391966A (zh) 一种消息处理方法、装置和用于消息处理的装置
CN106406672A (zh) 一种日常事件聚合方法、装置以及电子设备
AU2021204550A1 (en) Scene detection method and apparatus, electronic device and computer storage medium
CN111669633A (zh) 遥控信号转触控操作方法、装置和显示设备
CN103902543A (zh) 数据库查询方法和装置及数据库***
CN112860662B (zh) 自动化生产数据血缘关系建立方法、装置、计算机设备及存储介质
CN112966756A (zh) 一种可视化的准入规则的生成方法、装置、机器可读介质及设备
CN115659340B (zh) 一种仿冒小程序识别方法、装置、存储介质及电子设备
CN108520063A (zh) 事件日志的处理方法、装置及终端设备
CN110851346B (zh) 查询语句边界问题的检测方法、装置、设备及存储介质
CN114968960A (zh) 日志处理方法、装置、计算机设备及存储介质
CN112653612B (zh) 消息处理方法、设备以及***、消息服务器
CN110221952B (zh) 业务数据的处理方法及装置、业务数据处理***
CN109800099A (zh) 一种用户操作行为的还原方法、存储介质和终端设备
CN111142735A (zh) 一种软件页面的创建方法、装置、终端设备和存储介质
CN111027056A (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
GR01 Patent grant
GR01 Patent grant