WO2023138382A1 - Crash information collection method and apparatus - Google Patents

Crash information collection method and apparatus Download PDF

Info

Publication number
WO2023138382A1
WO2023138382A1 PCT/CN2023/070575 CN2023070575W WO2023138382A1 WO 2023138382 A1 WO2023138382 A1 WO 2023138382A1 CN 2023070575 W CN2023070575 W CN 2023070575W WO 2023138382 A1 WO2023138382 A1 WO 2023138382A1
Authority
WO
WIPO (PCT)
Prior art keywords
installation
application
stack information
crash
free
Prior art date
Application number
PCT/CN2023/070575
Other languages
French (fr)
Chinese (zh)
Inventor
董彬
钟炳鑫
Original Assignee
北京有竹居网络技术有限公司
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 北京有竹居网络技术有限公司 filed Critical 北京有竹居网络技术有限公司
Publication of WO2023138382A1 publication Critical patent/WO2023138382A1/en

Links

Images

Classifications

    • 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/0766Error or fault reporting or storing
    • 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

Definitions

  • the present application relates to the field of data processing, in particular to a method and device for collecting crash information.
  • Free installation technology provides a complete virtual operating environment.
  • Application programs that use installation-free technology can also be called "installation-free applications”.
  • the installation-free application does not need to be installed on the system, but it can also achieve the operation effect that can be achieved by installing the application.
  • the technical problem to be solved in this application is how to improve the stability of installation-free applications, and provide a method and device for collecting crash information.
  • the embodiment of the present application provides a crash information collection method, the method comprising:
  • the crash stack information is used to describe the operation failure of the installation-free application
  • the first functional module is a functional module in the operating system of the device carrying the installation-free application
  • crash stack information is sent to the application running the instant framework.
  • the acquiring the crash stack information sent by the first functional module to the instant application includes:
  • the intercepting the crash stack information sent by the first functional module to the installation-free application includes:
  • a hook function is used to intercept the first function for delivering the crash stack information.
  • the installation-free application is a game application.
  • the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
  • the acquiring the crash stack information sent by the first functional module to the instant application includes:
  • the running application of the installation-free framework includes:
  • the embodiment of the present application provides a crash information collection device, the device includes:
  • An acquisition unit configured to acquire crash stack information sent to the installation-free application by the first functional module, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
  • a sending unit configured to send the crash stack information to the application running the installation-free framework.
  • the acquisition unit is used for:
  • the acquisition unit is used for:
  • a hook function is used to intercept the first function for delivering the crash stack information.
  • the installation-free application is a game application.
  • the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
  • the acquisition unit is used for:
  • the running application of the installation-free framework includes:
  • an embodiment of the present application provides a device, where the device includes a processor and a memory;
  • the processor is configured to execute instructions stored in the memory, so that the device executes the method described in any one of the above first aspects.
  • an embodiment of the present application provides a computer-readable storage medium, which is characterized by including instructions, and the instructions instruct a device to execute the method described in any one of the above first aspects.
  • an embodiment of the present application provides a computer program product, which, when running on a computer, causes the computer to execute the method described in any one of the above first aspects.
  • the embodiment of the present application has the following advantages:
  • An embodiment of the present application provides a method for collecting crash information.
  • the first functional module may capture the crash stack information of the installation-free application, and the crash stack information is used to describe the operation failure of the installation-free application.
  • the first function module is a function module in the operating system of the device carrying the installation-free application. After the first function module captures the crash stack information, it may send the crash stack information to the installation-free application.
  • the crash stack information sent by the first functional module to the installation-free application may be obtained, and the crash stack information is further sent to the application running the installation-free framework. It can be seen that with this solution, the crash stack information of the installation-free application can be obtained before the installation-free application processes the crash stack information.
  • the application running the installation-free framework can also receive the crash stack information, so that the application running the installation-free framework can receive more crash stack information, thereby improving the stability of the installation-free application.
  • Fig. 1 is a schematic diagram provided by the embodiment of the present application.
  • FIG. 2 is a schematic flowchart of a method for collecting crash information provided by an embodiment of the present application
  • FIG. 3 is a schematic structural diagram of a crash information collection device provided in an embodiment of the present application.
  • FIG. 4 is a schematic structural diagram of a device provided by an embodiment of the present application .
  • the platform application program can run on the operating system, the platform application program can run the installation-free framework, and the installation-free framework is used to implement the installation-free technology.
  • the platform application can call an interface provided by the operating system to collect crash stack information of the free-to-install application, where the crash stack information is used to describe a running failure of the free-to-install application.
  • FIG. 1 is a schematic diagram provided by an embodiment of the present application.
  • the function module 110 is a function module for the operating system to capture crash stack information.
  • the installation-free application 120 will execute corresponding processing measures based on the crash stack information, and will no longer send the crash stack information to the platform application 130 .
  • the platform application 130 cannot collect all crash stack information.
  • it is not conducive to the stable operation of installation-free applications.
  • embodiments of the present application provide a method and device for collecting crash information.
  • this figure is a schematic flowchart of a method for collecting crash information provided by an embodiment of the present application.
  • the method provided in this embodiment can be applied to an operating system, and the operating system includes but is not limited to an Android (Android) system.
  • the method can be implemented, for example, through the following steps S101-S102.
  • S101 Obtain crash stack information sent to the installation-free application by a first function module, the crash stack information is used to describe a running fault of the installation-free application, and the first function module is a function module in an operating system of a device carrying the installation-free application.
  • the embodiment of the present application does not specifically limit the installation-free application.
  • the installation-free application is a game application.
  • the program code of the installation-free application may be realized by Java language, C language, or C++ language, which is not specifically limited in this embodiment of the present application.
  • the program code of the installation-free application can also be implemented by C# language, JavaScript language, ActionScript language, or lua language, which is not specifically limited in this embodiment of the present application.
  • the crash stack information of the installation-free application is used to describe the operation failure of the installation-free application. Faults during the running of the installation-free application may be captured by the operating system, specifically, by the first function module in the operating system. In other words, the first function module can capture the crash stack information. After the first function module captures the crash stack information of the installation-free application, it may send the crash stack information to the installation-free application.
  • the operating system mentioned here refers to the operating system of the device carrying the installation-free application.
  • the first functional module sends the crash stack information to the installation-free application. If the operating system is an Android system, and the software code of the installation-free application is implemented by the java language, then the first functional module sends the crash stack information to the installation-free application.
  • the first function module may use related functions to transmit the crash stack information to the installation-free application.
  • the embodiment of the present application does not specifically limit the function for transferring the crash stack information.
  • the crash stack information sent by the first functional module to the installation-free application may be intercepted.
  • the hook function may be used to intercept the first function used to transmit the crash stack information, so as to obtain the crash stack information.
  • the first functional module when S101 is specifically implemented, the first functional module may be configured in advance, so that the first functional module not only sends the crash stack information to the installation-free application, but also sends the crash stack information to the second functional module of the operating system.
  • the second functional module mentioned here refers to the functional module that executes S101-S102.
  • S102 Send the crash stack information to the application running the installation-free framework.
  • the crash stack information may be sent to the application program of the installation-free framework.
  • the embodiment of the present application does not specifically limit the specific implementation manner of S102.
  • related functions may be used to send the crash stack information to the application running the installation-free framework. It can be understood that the application program running the installation-free framework mentioned here refers to the platform application program running on the operating system.
  • the crash stack information of the installation-free application can be obtained, and the crash stack information can be sent to the platform application, thereby preventing the platform application from being unable to capture the crash stack information due to the processing of the crash stack information by the installation-free application.
  • the application running the installation-free framework can still receive the crash stack information, so that the application running the installation-free framework can receive more crash stack information, which is conducive to the stable operation of the installation-free application.
  • the apparatus 300 may specifically include: an acquiring unit 301 and a sending unit 302 .
  • the obtaining unit 301 is configured to obtain the crash stack information sent by the first functional module to the installation-free application, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
  • the sending unit 302 is configured to send the crash stack information to the application running the installation-free framework.
  • the acquiring unit 301 is configured to:
  • the acquiring unit 301 is configured to:
  • a hook function is used to intercept the first function for delivering the crash stack information.
  • the installation-free application is a game application.
  • the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
  • the acquiring unit 301 is configured to:
  • the running application of the installation-free framework includes:
  • the device 300 is a device corresponding to the method provided by the above method embodiment, the specific implementation of each unit of the device 300 is based on the same idea as the above method embodiment, therefore, regarding the specific implementation of each unit of the device 300, you can refer to the description of the above method embodiment, and will not repeat them here.
  • the embodiment of the present application also provides a device, the device includes a processor and a memory;
  • the processor is configured to execute instructions stored in the memory, so that the device executes the method described in any one of the above method embodiments.
  • FIG. 4 it shows a schematic structural diagram of an electronic device 400 suitable for implementing the embodiment of the present application.
  • the electronic equipment in the embodiment of the present application may include, but not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDA (Personal Digital Assistant, personal digital assistant), PAD (portable android device, tablet computer), PMP (Portable Media Player, portable multimedia player), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TV (television, television sets), desktop computers, etc.
  • PDA Personal Digital Assistant
  • PAD portable android device, tablet computer
  • PMP Portable Media Player, portable multimedia player
  • vehicle-mounted terminals such as vehicle-mounted navigation terminals
  • fixed terminals such as digital TV (television, television sets), desktop computers, etc.
  • the electronic device shown in FIG. 4 is only an example, and should not limit the functions and scope of use of this embodiment of the present application.
  • the electronic device 400 may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 401, which may perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 402 or a program loaded from a storage device 408 into a random access memory (RAM) 403.
  • ROM read-only memory
  • RAM random access memory
  • various programs and data necessary for the operation of the electronic device 400 are also stored.
  • the processing device 401, the ROM 402, and the RAM 403 are connected to each other through a bus 404.
  • An input/output (I/O) interface 405 is also connected to bus 404 .
  • the following devices can be connected to the I/O interface 405: an input device 406 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 407 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 408 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 409.
  • the communication means 409 may allow the electronic device 400 to perform wireless or wired communication with other devices to exchange data. While FIG. 4 shows electronic device 400 having various means, it should be understood that implementing or having all of the means shown is not a requirement. More or fewer means may alternatively be implemented or provided.
  • the processes described above with reference to the flowcharts can be implemented as computer software programs.
  • the embodiments of the present application include a computer program product, which includes a computer program carried on a non-transitory computer readable medium, where the computer program includes program code for executing the method shown in the flowchart.
  • the computer program may be downloaded and installed from a network via communication means 409 , or from storage means 408 , or from ROM 402 .
  • the processing device 401 the above-mentioned functions defined in the methods of the embodiments of the present application are performed.
  • the electronic device provided by the embodiment of the present application and the method for collecting crash information provided by the above-mentioned embodiment belong to the same inventive concept.
  • the technical details not described in detail in this embodiment can be found in the above-mentioned embodiment, and this embodiment has the same beneficial effects as the above-mentioned embodiment.
  • An embodiment of the present application provides a computer-readable medium on which a computer program is stored, wherein when the program is executed by a processor, the method for collecting crash information as described in any of the above-mentioned embodiments is implemented.
  • the computer-readable medium mentioned above in this application may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two.
  • a computer readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to, electrical connections having one or more wires, portable computer diskettes, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), fiber optics, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Program code embodied on a computer readable medium may be transmitted by any appropriate medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
  • the client and the server can communicate using any currently known or future-developed network protocols such as HTTP (HyperText Transfer Protocol, Hypertext Transfer Protocol), and can be interconnected with any form or medium of digital data communication (for example, a communication network).
  • HTTP HyperText Transfer Protocol
  • Examples of communication networks include local area networks ("LANs”), wide area networks ("WANs”), internetworks (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
  • the above-mentioned computer-readable medium may be included in the above-mentioned electronic device, or may exist independently without being incorporated into the electronic device.
  • the above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device is made to execute the above-mentioned method for collecting crash information.
  • Computer program code for carrying out the operations of the present application may be written in one or more programming languages, or combinations thereof, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and conventional procedural programming languages—such as the “C” language or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer can be connected to the user computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., through the Internet using an Internet service provider).
  • LAN local area network
  • WAN wide area network
  • Internet service provider e.g., AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • each block in the flowchart or block diagram may represent a module, program segment, or portion of code that includes one or more executable instructions for implementing specified logical functions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • the units involved in the embodiments described in the present application may be implemented by means of software or by means of hardware.
  • the name of the unit/module does not constitute a limitation on the unit itself under certain circumstances, for example, the voice data collection module can also be described as a "data collection module”.
  • FPGAs Field Programmable Gate Arrays
  • ASICs Application Specific Integrated Circuits
  • ASSPs Application Specific Standard Products
  • SOCs System on Chips
  • CPLDs Complex Programmable Logic Devices
  • a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device.
  • a machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium.
  • a machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing.
  • a machine-readable storage medium would include one or more wire-based electrical connections, a portable computer disk, a hard disk, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
  • RAM random access memory
  • ROM read only memory
  • EPROM or flash memory erasable programmable read only memory
  • CD-ROM compact disk read only memory
  • magnetic storage devices or any suitable combination of the foregoing.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Disclosed in the present application is a crash information collection method. For an instant application, a first functional module can capture crash stack information of the instant application, and the crash stack information is used for describing an operation fault of the instant application. The first functional module is a functional module in an operating system of a device carrying the instant application. After the first functional module captures the crash stack information, the crash stack information can be sent to the instant application. In view of the above, by using this solution, the crash stack information of the instant application can be obtained before the instant application processes the crash stack information. In this way, even if the instant application does not send the crash stack information to an application program running an instant framework, the application program running the instant framework can also receive the crash stack information, such that the application program running the instant framework can receive more crash stack information, thereby improving the stability of the instant application.

Description

一种崩溃信息收集方法及装置A method and device for collecting crash information
本申请要求于2022年1月19日提交中国国家知识产权局、申请号为202210061363.0、申请名称为“一种崩溃信息收集方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the State Intellectual Property Office of China on January 19, 2022, with application number 202210061363.0 and application title "A Method and Device for Collecting Crash Information", the entire contents of which are incorporated herein by reference.
技术领域technical field
本申请涉及数据处理领域,特别是涉及一种崩溃信息收集方法及装置。The present application relates to the field of data processing, in particular to a method and device for collecting crash information.
背景技术Background technique
免安装技术提供了完整的虚拟运行环境。应用了免安装技术的应用程序,也可以被称为“免安装应用”。免安装应用无需安装到系统,也能达到安装该应用程序所能达到的运行效果。Free installation technology provides a complete virtual operating environment. Application programs that use installation-free technology can also be called "installation-free applications". The installation-free application does not need to be installed on the system, but it can also achieve the operation effect that can be achieved by installing the application.
为了提升免安装应用的稳定性,需要监测免安装应用的运行故障,从而采取进一步的措施。但是,目前监测免安装应用的运行故障的方案,仅能够检测到一部分运行故障,从而降低了免安装应用的稳定性。In order to improve the stability of the installation-free application, it is necessary to monitor the operation failure of the installation-free application, so as to take further measures. However, the current solutions for monitoring operation failures of installation-free applications can only detect a part of operation failures, thereby reducing the stability of installation-free applications.
因此,急需一种方案,能够解决上述问题。Therefore, there is an urgent need for a solution that can solve the above problems.
发明内容Contents of the invention
本申请所要解决的技术问题是如何提升免安装应用的稳定性,提供一种崩溃信息收集方法及装置。The technical problem to be solved in this application is how to improve the stability of installation-free applications, and provide a method and device for collecting crash information.
第一方面,本申请实施例提供了一种崩溃信息收集方法,所述方法包括:In the first aspect, the embodiment of the present application provides a crash information collection method, the method comprising:
获取第一功能模块发送给免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描述所述免安装应用的运行故障,所述第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块;Obtaining the crash stack information sent by the first functional module to the installation-free application, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
将所述崩溃堆栈信息发送给运行免安装框架的应用程序。The crash stack information is sent to the application running the instant framework.
可选的,所述获取第一功能模块发送给免安装应用的崩溃堆栈信息,包括:Optionally, the acquiring the crash stack information sent by the first functional module to the instant application includes:
拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息。Intercepting the crash stack information sent by the first functional module to the installation-free application.
可选的,所述拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息,包括:Optionally, the intercepting the crash stack information sent by the first functional module to the installation-free application includes:
利用钩子hook函数拦截用于传递所述崩溃堆栈信息的第一函数。A hook function is used to intercept the first function for delivering the crash stack information.
可选的,所述免安装应用为游戏应用。Optionally, the installation-free application is a game application.
可选的,所述免安装应用的程序代码通过Java语言、C语言、C++语言、C#语言、JavaScript语言、ActionScript语言、或者lua语言实现。Optionally, the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
可选的,所述获取第一功能模块发送给免安装应用的崩溃堆栈信息,包括:Optionally, the acquiring the crash stack information sent by the first functional module to the instant application includes:
接收所述第一功能模块发送的所述崩溃堆栈信息。Receive the crash stack information sent by the first function module.
可选的,所述运行免安装框架的应用程序,包括:Optionally, the running application of the installation-free framework includes:
运行在所述操作系统上的平台应用程序。Platform applications running on said operating system.
第二方面,本申请实施例提供了一种崩溃信息收集装置,所述装置包括:In the second aspect, the embodiment of the present application provides a crash information collection device, the device includes:
获取单元,用于获取第一功能模块发送给免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描述所述免安装应用的运行故障,所述第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块;An acquisition unit, configured to acquire crash stack information sent to the installation-free application by the first functional module, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
发送单元,用于将所述崩溃堆栈信息发送给运行免安装框架的应用程序。A sending unit, configured to send the crash stack information to the application running the installation-free framework.
可选的,所述获取单元,用于:Optionally, the acquisition unit is used for:
拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息。Intercepting the crash stack information sent by the first functional module to the installation-free application.
可选的,所述获取单元,用于:Optionally, the acquisition unit is used for:
利用钩子hook函数拦截用于传递所述崩溃堆栈信息的第一函数。A hook function is used to intercept the first function for delivering the crash stack information.
可选的,所述免安装应用为游戏应用。Optionally, the installation-free application is a game application.
可选的,所述免安装应用的程序代码通过Java语言、C语言、C++语言、C#语言、JavaScript语言、ActionScript语言、或者lua语言实现。Optionally, the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
可选的,所述获取单元,用于:Optionally, the acquisition unit is used for:
接收所述第一功能模块发送的所述崩溃堆栈信息。Receive the crash stack information sent by the first function module.
可选的,所述运行免安装框架的应用程序,包括:Optionally, the running application of the installation-free framework includes:
运行在所述操作系统上的平台应用程序。Platform applications running on said operating system.
第三方面,本申请实施例提供了一种设备,所述设备包括处理器和存储器;In a third aspect, an embodiment of the present application provides a device, where the device includes a processor and a memory;
所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行以上第一方面任一项所述的方法。The processor is configured to execute instructions stored in the memory, so that the device executes the method described in any one of the above first aspects.
第四方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,包括指令,所述指令指示设备执行以上第一方面任一项所述的方法。In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which is characterized by including instructions, and the instructions instruct a device to execute the method described in any one of the above first aspects.
第五方面,本申请实施例提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行以上第一方面任一项所述的方法。In a fifth aspect, an embodiment of the present application provides a computer program product, which, when running on a computer, causes the computer to execute the method described in any one of the above first aspects.
与现有技术相比,本申请实施例具有以下优点:Compared with the prior art, the embodiment of the present application has the following advantages:
本申请实施例提供了一种崩溃信息收集方法,对于免安装应用而言,第一功能模块可以捕获所述免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描 述所述免安装应用的运行故障。第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块。第一功能模块捕获所述崩溃堆栈信息之后,可以将该崩溃堆栈信息发送给所述免安装应用。在本申请实施例中,可以获取第一功能模块发送给免安装应用的崩溃堆栈信息,并进一步将所述崩溃堆栈信息发送给运行免安装框架的应用程序。由此可见,利用本方案,可以在免安装应用对崩溃堆栈信息处理之前,获取所述免安装应用的崩溃堆栈信息,这样一来,即使免安装应用未将该崩溃堆栈信息发送给运行免安装框架的应用程序,运行免安装框架的应用程序也能接收到该崩溃堆栈信息,从而使得所述运行免安装框架的应用程序能够收到更多的崩溃堆栈信息,从而提升了免安装应用的稳定性。An embodiment of the present application provides a method for collecting crash information. For an installation-free application, the first functional module may capture the crash stack information of the installation-free application, and the crash stack information is used to describe the operation failure of the installation-free application. The first function module is a function module in the operating system of the device carrying the installation-free application. After the first function module captures the crash stack information, it may send the crash stack information to the installation-free application. In the embodiment of the present application, the crash stack information sent by the first functional module to the installation-free application may be obtained, and the crash stack information is further sent to the application running the installation-free framework. It can be seen that with this solution, the crash stack information of the installation-free application can be obtained before the installation-free application processes the crash stack information. In this way, even if the installation-free application does not send the crash stack information to the application running the installation-free framework, the application running the installation-free framework can also receive the crash stack information, so that the application running the installation-free framework can receive more crash stack information, thereby improving the stability of the installation-free application.
附图说明Description of drawings
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the accompanying drawings that need to be used in the description of the embodiments or prior art. Obviously, the accompanying drawings in the following description are only some embodiments recorded in the application. For those of ordinary skill in the art, other accompanying drawings can also be obtained based on these drawings without creative work.
图1为本申请实施例提供的一个示意图;Fig. 1 is a schematic diagram provided by the embodiment of the present application;
图2为本申请实施例提供的一种崩溃信息收集方法的流程示意图;FIG. 2 is a schematic flowchart of a method for collecting crash information provided by an embodiment of the present application;
图3为本申请实施例提供的一种崩溃信息收集装置的结构示意图;FIG. 3 is a schematic structural diagram of a crash information collection device provided in an embodiment of the present application;
图4为本申请实施例提供的一种设备的结构示意图 FIG. 4 is a schematic structural diagram of a device provided by an embodiment of the present application .
具体实施方式Detailed ways
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiment of the application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiment of the application. Obviously, the described embodiments are only part of the embodiments of the application, not all of them. Based on the embodiments in this application, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the scope of protection of this application.
操作系统上可以运行平台应用程序,平台应用程序可以运行免安装框架,免安装框架用于实现免安装技术。为了提升免安装应用的稳定性,需要监测免安装应用的运行故障。目前,平台应用程序可以调用操作系统提供的接口收集免安装应用程序的崩溃堆栈信息,其中,所述崩溃堆栈信息用于描述免安装应用的运行故障。但是,可参见图1进行理解,图1为本申请实施例提供的一个示意图。采用所述接口收集免安装应用程序的崩溃堆栈信息时,该崩溃堆栈信 息的传递路径为:功能模块110--免安装应用120-平台应用程序130。其中,功能模块110为操作系统捕获崩溃堆栈信息的功能模块。但是,在一些场景中,免安装应用120接收到崩溃堆栈信息之后,会基于该崩溃堆栈信息执行相应的处理措施,并且,不再将该崩溃堆栈信息发送给平台应用程序130。这就导致平台应用程序130并不能收集到全部的崩溃堆栈信息。相应的,不利于免安装应用稳定运行。The platform application program can run on the operating system, the platform application program can run the installation-free framework, and the installation-free framework is used to implement the installation-free technology. In order to improve the stability of the installation-free application, it is necessary to monitor the operation failure of the installation-free application. Currently, the platform application can call an interface provided by the operating system to collect crash stack information of the free-to-install application, where the crash stack information is used to describe a running failure of the free-to-install application. However, it can be understood with reference to FIG. 1 , which is a schematic diagram provided by an embodiment of the present application. When the interface is used to collect the crash stack information of the installation-free application, the transmission path of the crash stack information is: function module 110--installation-free application 120-platform application 130. Wherein, the function module 110 is a function module for the operating system to capture crash stack information. However, in some scenarios, after receiving the crash stack information, the installation-free application 120 will execute corresponding processing measures based on the crash stack information, and will no longer send the crash stack information to the platform application 130 . As a result, the platform application 130 cannot collect all crash stack information. Correspondingly, it is not conducive to the stable operation of installation-free applications.
为了解决上述问题,本申请实施例提供了一种崩溃信息收集方法及装置。In order to solve the above problems, embodiments of the present application provide a method and device for collecting crash information.
下面结合附图,详细说明本申请的各种非限制性实施方式。Various non-limiting implementations of the present application will be described in detail below with reference to the accompanying drawings.
示例性方法exemplary method
参见图2,该图为本申请实施例提供的一种崩溃信息收集方法的流程示意图。本实施例提供的方法可以应用于操作系统,该操作系统包括但不限于安卓(Android)系统。所述方法例如可以通过以下步骤S101-S102实现。Referring to FIG. 2 , this figure is a schematic flowchart of a method for collecting crash information provided by an embodiment of the present application. The method provided in this embodiment can be applied to an operating system, and the operating system includes but is not limited to an Android (Android) system. The method can be implemented, for example, through the following steps S101-S102.
S101:获取第一功能模块发送给免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描述所述免安装应用的运行故障,所述第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块。S101: Obtain crash stack information sent to the installation-free application by a first function module, the crash stack information is used to describe a running fault of the installation-free application, and the first function module is a function module in an operating system of a device carrying the installation-free application.
本申请实施例不具体限定所述免安装应用,在一个示例中,所述免安装应用为游戏应用。在本申请实施例中,所述免安装应用的程序代码可以通过Java语言实现,也可以通过C语言实现,还可以通过C++语言实现,本申请实施例不做具体限定。当然,所述免安装应用的程序代码还可以通过C#语言、JavaScript语言、ActionScript语言、或者lua语言实现,本申请实施例不做具体限定。The embodiment of the present application does not specifically limit the installation-free application. In one example, the installation-free application is a game application. In the embodiment of the present application, the program code of the installation-free application may be realized by Java language, C language, or C++ language, which is not specifically limited in this embodiment of the present application. Of course, the program code of the installation-free application can also be implemented by C# language, JavaScript language, ActionScript language, or lua language, which is not specifically limited in this embodiment of the present application.
在本申请实施例中,免安装应用的崩溃堆栈信息用于描述所述免安装应用的运行故障。免安装应用运行过程中的故障可以被操作系统捕获,具体地,可以被操作系统中的第一功能模块捕获。换言之,第一功能模块可以捕获所述崩溃堆栈信息。第一功能模块捕获所述免安装应用的崩溃堆栈信息之后,可以将所述崩溃堆栈信息发送给免安装应用。其中,此处提及的操作系统,指的是承载所述免安装应用的设备的操作系统。In this embodiment of the present application, the crash stack information of the installation-free application is used to describe the operation failure of the installation-free application. Faults during the running of the installation-free application may be captured by the operating system, specifically, by the first function module in the operating system. In other words, the first function module can capture the crash stack information. After the first function module captures the crash stack information of the installation-free application, it may send the crash stack information to the installation-free application. Wherein, the operating system mentioned here refers to the operating system of the device carrying the installation-free application.
若所述操作系统为安卓系统,所述免安装应用的软件代码通过C语言或者C++语言实现,则所述第一功能模块将所述崩溃堆栈信息发送给免安装应用对应的崩溃堆栈信息传输所经历的层分别是:C层(操作系统所述的层级)和 native层(免安装应用所属的层级)。若所述操作系统为安卓系统,所述免安装应用的软件代码通过java语言实现,则所述第一功能模块将所述崩溃堆栈信息发送给免安装应用对应的崩溃堆栈信息传输所经历的层分别是:C层(操作系统所述的层级)和java层(免安装应用所属的层级)。If the operating system is an Android system, and the software code of the installation-free application is implemented by C language or C++ language, then the first functional module sends the crash stack information to the installation-free application. If the operating system is an Android system, and the software code of the installation-free application is implemented by the java language, then the first functional module sends the crash stack information to the installation-free application.
在一个示例中,所述第一功能模块可以使用相关函数将所述崩溃堆栈信息传递给免安装应用。关于传递所述崩溃堆栈信息的函数,本申请实施例不做具体限定。In an example, the first function module may use related functions to transmit the crash stack information to the installation-free application. The embodiment of the present application does not specifically limit the function for transferring the crash stack information.
在一个示例中,S101在具体实现时,可以拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息。考虑到钩子(hook)函数能够实现拦截某一函数的目的,因此,在一种实现方式中,可以利用hook函数拦截用于传递所述崩溃堆栈信息的第一函数,从而得到所述崩溃堆栈信息。In an example, during specific implementation of S101, the crash stack information sent by the first functional module to the installation-free application may be intercepted. Considering that a hook (hook) function can achieve the purpose of intercepting a certain function, therefore, in an implementation manner, the hook function may be used to intercept the first function used to transmit the crash stack information, so as to obtain the crash stack information.
在又一个示例中,S101在具体实现时,可以预先对第一功能模块进行配置,使得第一功能模块除了将该崩溃堆栈信息发送给免安装应用之外,还将所述崩溃堆栈信息发送给操作系统的第二功能模块,此处提及的第二功能模块,指的是执行S101-S102的功能模块。In yet another example, when S101 is specifically implemented, the first functional module may be configured in advance, so that the first functional module not only sends the crash stack information to the installation-free application, but also sends the crash stack information to the second functional module of the operating system. The second functional module mentioned here refers to the functional module that executes S101-S102.
S102:将所述崩溃堆栈信息发送给运行免安装框架的应用程序。S102: Send the crash stack information to the application running the installation-free framework.
获取所述崩溃堆栈信息之后,可以将所述崩溃堆栈信息发送给免安装框架的应用程序。本申请实施例不具体限定S102的具体实现方式,在一个示例中,可以利用相关函数将所述崩溃堆栈信息发送给运行免安装框架的应用程序。可以理解的是,此处提及的运行免安装框架的应用程序,指的是运行在操作系统上的平台应用程序。After the crash stack information is acquired, the crash stack information may be sent to the application program of the installation-free framework. The embodiment of the present application does not specifically limit the specific implementation manner of S102. In an example, related functions may be used to send the crash stack information to the application running the installation-free framework. It can be understood that the application program running the installation-free framework mentioned here refers to the platform application program running on the operating system.
通过以上描述可知,利用本申请实施例提供的方案,可以在免安装应用对崩溃堆栈信息处理之前,获取所述免安装应用的崩溃堆栈信息,并将该崩溃堆栈信息发送给平台应用程序,从而避免由于免安装应用对崩溃堆栈信息处理而导致平台应用程序无法捕获该崩溃堆栈信息。换言之,利用本申请实施例的方案,即使免安装应用未将该崩溃堆栈信息发送给运行免安装框架的应用程序,运行免安装框架的应用程序也能接收到该崩溃堆栈信息,从而使得所述运行免安装框架的应用程序能够收到更多的崩溃堆栈信息,从而有利于免安装应用稳定运行。As can be seen from the above description, using the solutions provided by the embodiments of the present application, before the installation-free application processes the crash stack information, the crash stack information of the installation-free application can be obtained, and the crash stack information can be sent to the platform application, thereby preventing the platform application from being unable to capture the crash stack information due to the processing of the crash stack information by the installation-free application. In other words, using the solution of the embodiment of the present application, even if the installation-free application does not send the crash stack information to the application running the installation-free framework, the application running the installation-free framework can still receive the crash stack information, so that the application running the installation-free framework can receive more crash stack information, which is conducive to the stable operation of the installation-free application.
示例性设备exemplary device
基于以上实施例提供的方法,本申请实施例还提供了一种装置,以下结合附图介绍该装置。Based on the methods provided in the above embodiments, the embodiments of the present application also provide a device, which will be described below with reference to the accompanying drawings.
参见图3,该图为本申请实施例提供的一种崩溃信息收集装置的结构示意图。所述装置300例如可以具体包括:获取单元301和发送单元302。Referring to FIG. 3 , this figure is a schematic structural diagram of a crash information collection device provided by an embodiment of the present application. For example, the apparatus 300 may specifically include: an acquiring unit 301 and a sending unit 302 .
获取单元301,用于获取第一功能模块发送给免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描述所述免安装应用的运行故障,所述第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块;The obtaining unit 301 is configured to obtain the crash stack information sent by the first functional module to the installation-free application, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
发送单元302,用于将所述崩溃堆栈信息发送给运行免安装框架的应用程序。The sending unit 302 is configured to send the crash stack information to the application running the installation-free framework.
可选的,所述获取单元301,用于:Optionally, the acquiring unit 301 is configured to:
拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息。Intercepting the crash stack information sent by the first functional module to the installation-free application.
可选的,所述获取单元301,用于:Optionally, the acquiring unit 301 is configured to:
利用钩子hook函数拦截用于传递所述崩溃堆栈信息的第一函数。A hook function is used to intercept the first function for delivering the crash stack information.
可选的,所述免安装应用为游戏应用。Optionally, the installation-free application is a game application.
可选的,所述免安装应用的程序代码通过Java语言、C语言、C++语言、C#语言、JavaScript语言、ActionScript语言、或者lua语言实现。Optionally, the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
可选的,所述获取单元301,用于:Optionally, the acquiring unit 301 is configured to:
接收所述第一功能模块发送的所述崩溃堆栈信息。Receive the crash stack information sent by the first function module.
可选的,所述运行免安装框架的应用程序,包括:Optionally, the running application of the installation-free framework includes:
运行在所述操作系统上的平台应用程序。Platform applications running on said operating system.
由于所述装置300是与以上方法实施例提供的方法对应的装置,所述装置300的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置300的各个单元的具体实现,可以参考以上方法实施例的描述部分,此处不再赘述。Since the device 300 is a device corresponding to the method provided by the above method embodiment, the specific implementation of each unit of the device 300 is based on the same idea as the above method embodiment, therefore, regarding the specific implementation of each unit of the device 300, you can refer to the description of the above method embodiment, and will not repeat them here.
本申请实施例还提供了一种设备,所述设备包括处理器和存储器;The embodiment of the present application also provides a device, the device includes a processor and a memory;
所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行以上方法实施例任一项所述的方法。The processor is configured to execute instructions stored in the memory, so that the device executes the method described in any one of the above method embodiments.
下面参考图4,其示出了适于用来实现本申请实施例的电子设备400的结构示意图。本申请实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(Personal Digital Assistant,个人数字 助理)、PAD(portable android device,平板电脑)、PMP(Portable Media Player,便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV(television,电视机)、台式计算机等等的固定终端。图4示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。Referring to FIG. 4 , it shows a schematic structural diagram of an electronic device 400 suitable for implementing the embodiment of the present application. The electronic equipment in the embodiment of the present application may include, but not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDA (Personal Digital Assistant, personal digital assistant), PAD (portable android device, tablet computer), PMP (Portable Media Player, portable multimedia player), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TV (television, television sets), desktop computers, etc. The electronic device shown in FIG. 4 is only an example, and should not limit the functions and scope of use of this embodiment of the present application.
如图4所示,电子设备400可以包括处理装置(例如中央处理器、图形处理器等)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储装置408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM403中,还存储有电子设备400操作所需的各种程序和数据。处理装置401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。As shown in FIG. 4 , the electronic device 400 may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 401, which may perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 402 or a program loaded from a storage device 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data necessary for the operation of the electronic device 400 are also stored. The processing device 401, the ROM 402, and the RAM 403 are connected to each other through a bus 404. An input/output (I/O) interface 405 is also connected to bus 404 .
通常,以下装置可以连接至I/O接口405:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置406;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置407;包括例如磁带、硬盘等的存储装置408;以及通信装置409。通信装置409可以允许电子设备400与其他设备进行无线或有线通信以交换数据。虽然图4示出了具有各种装置的电子设备400,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。Generally, the following devices can be connected to the I/O interface 405: an input device 406 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 407 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 408 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 409. The communication means 409 may allow the electronic device 400 to perform wireless or wired communication with other devices to exchange data. While FIG. 4 shows electronic device 400 having various means, it should be understood that implementing or having all of the means shown is not a requirement. More or fewer means may alternatively be implemented or provided.
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置409从网络上被下载和安装,或者从存储装置408被安装,或者从ROM402被安装。在该计算机程序被处理装置401执行时,执行本申请实施例的方法中限定的上述功能。In particular, according to the embodiments of the present application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, the embodiments of the present application include a computer program product, which includes a computer program carried on a non-transitory computer readable medium, where the computer program includes program code for executing the method shown in the flowchart. In such an embodiment, the computer program may be downloaded and installed from a network via communication means 409 , or from storage means 408 , or from ROM 402 . When the computer program is executed by the processing device 401, the above-mentioned functions defined in the methods of the embodiments of the present application are performed.
本申请实施例提供的电子设备与上述实施例提供的崩溃信息收集方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且本实施例与上述实施例具有相同的有益效果。The electronic device provided by the embodiment of the present application and the method for collecting crash information provided by the above-mentioned embodiment belong to the same inventive concept. The technical details not described in detail in this embodiment can be found in the above-mentioned embodiment, and this embodiment has the same beneficial effects as the above-mentioned embodiment.
本申请实施例提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述任一实施例所述的崩溃信息收集 方法。An embodiment of the present application provides a computer-readable medium on which a computer program is stored, wherein when the program is executed by a processor, the method for collecting crash information as described in any of the above-mentioned embodiments is implemented.
需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。It should be noted that the computer-readable medium mentioned above in this application may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two. A computer readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to, electrical connections having one or more wires, portable computer diskettes, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), fiber optics, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing. In this application, a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this application, however, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted by any appropriate medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。In some embodiments, the client and the server can communicate using any currently known or future-developed network protocols such as HTTP (HyperText Transfer Protocol, Hypertext Transfer Protocol), and can be interconnected with any form or medium of digital data communication (for example, a communication network). Examples of communication networks include local area networks ("LANs"), wide area networks ("WANs"), internetworks (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。The above-mentioned computer-readable medium may be included in the above-mentioned electronic device, or may exist independently without being incorporated into the electronic device.
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述的崩溃信息收集方法。The above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device is made to execute the above-mentioned method for collecting crash information.
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操 作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for carrying out the operations of the present application may be written in one or more programming languages, or combinations thereof, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and conventional procedural programming languages—such as the “C” language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In cases involving a remote computer, the remote computer can be connected to the user computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., through the Internet using an Internet service provider).
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagram may represent a module, program segment, or portion of code that includes one or more executable instructions for implementing specified logical functions. It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved. It should also be noted that each block in the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or operations, or by combinations of special purpose hardware and computer instructions.
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元/模块的名称在某种情况下并不构成对该单元本身的限定,例如,语音数据采集模块还可以被描述为“数据采集模块”。The units involved in the embodiments described in the present application may be implemented by means of software or by means of hardware. Wherein, the name of the unit/module does not constitute a limitation on the unit itself under certain circumstances, for example, the voice data collection module can also be described as a "data collection module".
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。The functions described herein above may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), System on Chips (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读 储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。In the context of the present application, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include one or more wire-based electrical connections, a portable computer disk, a hard disk, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。Other embodiments of the present application will be readily apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. The present application intends to cover any modification, use or adaptation of the application, which follows the general principles of the application and includes common knowledge or conventional technical means in the technical field not disclosed in this disclosure. The specification and examples are to be considered exemplary only, with a true scope and spirit of the application indicated by the following claims.
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制It should be understood that the present application is not limited to the precise constructions which have been described above and shown in the accompanying drawings, and various modifications and changes may be made without departing from the scope thereof. The scope of the application is limited only by the appended claims
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。The above descriptions are only preferred embodiments of the present application, and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included within the protection scope of the present application.

Claims (11)

  1. 一种崩溃信息收集方法,其特征在于,所述方法包括:A crash information collection method, characterized in that the method comprises:
    获取第一功能模块发送给免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描述所述免安装应用的运行故障,所述第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块;Obtaining the crash stack information sent by the first functional module to the installation-free application, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
    将所述崩溃堆栈信息发送给运行免安装框架的应用程序。The crash stack information is sent to the application running the instant framework.
  2. 根据权利要求1所述的方法,其特征在于,所述获取第一功能模块发送给免安装应用的崩溃堆栈信息,包括:The method according to claim 1, wherein the obtaining the crash stack information sent by the first functional module to the installation-free application includes:
    拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息。Intercepting the crash stack information sent by the first functional module to the installation-free application.
  3. 根据权利要求2所述的方法,其特征在于,所述拦截所述第一功能模块发送给免安装应用的崩溃堆栈信息,包括:The method according to claim 2, wherein the intercepting the crash stack information sent by the first functional module to the installation-free application includes:
    利用钩子hook函数拦截用于传递所述崩溃堆栈信息的第一函数。A hook function is used to intercept the first function for delivering the crash stack information.
  4. 根据权利要求1所述的方法,其特征在于,所述免安装应用为游戏应用。The method according to claim 1, wherein the installation-free application is a game application.
  5. 根据权利要求1所述的方法,其特征在于,所述免安装应用的程序代码通过Java语言、C语言、C++语言、C#语言、JavaScript语言、ActionScript语言、或者lua语言实现。The method according to claim 1, wherein the program code of the installation-free application is implemented by Java language, C language, C++ language, C# language, JavaScript language, ActionScript language, or lua language.
  6. 根据权利要求1所述的方法,其特征在于,所述获取第一功能模块发送给免安装应用的崩溃堆栈信息,包括:The method according to claim 1, wherein the obtaining the crash stack information sent by the first functional module to the installation-free application includes:
    接收所述第一功能模块发送的所述崩溃堆栈信息。Receive the crash stack information sent by the first function module.
  7. 根据权利要求1所述的方法,其特征在于,所述运行免安装框架的应用程序,包括:The method according to claim 1, wherein said running the application program of the installation-free framework comprises:
    运行在所述操作系统上的平台应用程序。Platform applications running on said operating system.
  8. 一种崩溃信息收集装置,其特征在于,所述装置包括:A crash information collection device, characterized in that the device includes:
    获取单元,用于获取第一功能模块发送给免安装应用的崩溃堆栈信息,所述崩溃堆栈信息用于描述所述免安装应用的运行故障,所述第一功能模块为承载所述免安装应用的设备的操作系统中的功能模块;An acquisition unit, configured to acquire crash stack information sent to the installation-free application by the first functional module, the crash stack information is used to describe the operation failure of the installation-free application, and the first functional module is a functional module in the operating system of the device carrying the installation-free application;
    发送单元,用于将所述崩溃堆栈信息发送给运行免安装框架的应用程序。A sending unit, configured to send the crash stack information to the application running the installation-free framework.
  9. 一种设备,其特征在于,所述设备包括处理器和存储器;A device, characterized in that the device includes a processor and a memory;
    所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行如权利要求1至7中任一项所述的方法。The processor is configured to execute instructions stored in the memory, so that the device executes the method according to any one of claims 1-7.
  10. 一种计算机可读存储介质,其特征在于,包括指令,所述指令指示设备执行如权利要求1至7中任一项所述的方法。A computer-readable storage medium, characterized by comprising instructions, the instructions instructing a device to execute the method according to any one of claims 1-7.
  11. 一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得计算机执行如权利要求1至7中任一项所述的方法。A computer program product, characterized in that, when the computer program product is run on a computer, the computer is made to execute the method according to any one of claims 1 to 7.
PCT/CN2023/070575 2022-01-19 2023-01-05 Crash information collection method and apparatus WO2023138382A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210061363.0A CN116501520A (en) 2022-01-19 2022-01-19 Crash information collection method and device
CN202210061363.0 2022-01-19

Publications (1)

Publication Number Publication Date
WO2023138382A1 true WO2023138382A1 (en) 2023-07-27

Family

ID=87317119

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/070575 WO2023138382A1 (en) 2022-01-19 2023-01-05 Crash information collection method and apparatus

Country Status (2)

Country Link
CN (1) CN116501520A (en)
WO (1) WO2023138382A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164322A (en) * 2013-04-15 2013-06-19 腾讯科技(深圳)有限公司 Signature method and signature device for program crashing
US20160110238A1 (en) * 2014-10-16 2016-04-21 International Business Machines Corporation Automated diagnosis of software crashes
CN109800101A (en) * 2019-02-01 2019-05-24 北京字节跳动网络技术有限公司 Report method, device, terminal device and the storage medium of small routine abnormal conditions
CN113110952A (en) * 2021-04-09 2021-07-13 北京沃东天骏信息技术有限公司 Method and device for acquiring SDK abnormal information in application program
CN113190401A (en) * 2021-04-19 2021-07-30 Oppo广东移动通信有限公司 Fast game abnormity monitoring method, electronic equipment, mobile terminal and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164322A (en) * 2013-04-15 2013-06-19 腾讯科技(深圳)有限公司 Signature method and signature device for program crashing
US20160110238A1 (en) * 2014-10-16 2016-04-21 International Business Machines Corporation Automated diagnosis of software crashes
CN109800101A (en) * 2019-02-01 2019-05-24 北京字节跳动网络技术有限公司 Report method, device, terminal device and the storage medium of small routine abnormal conditions
CN113110952A (en) * 2021-04-09 2021-07-13 北京沃东天骏信息技术有限公司 Method and device for acquiring SDK abnormal information in application program
CN113190401A (en) * 2021-04-19 2021-07-30 Oppo广东移动通信有限公司 Fast game abnormity monitoring method, electronic equipment, mobile terminal and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YU, XIANGQIAN: "WeChat mini-game access to Fundebug monitoring", BAIDU, 8 May 2018 (2018-05-08), CN, XP009548075, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/36566279> *

Also Published As

Publication number Publication date
CN116501520A (en) 2023-07-28

Similar Documents

Publication Publication Date Title
CN111694674B (en) Message distribution processing method, device, equipment and storage medium
WO2021068634A1 (en) Page jump method and apparatus, electronic device and computer-readable storage medium
WO2022083379A1 (en) Connection processing method and apparatus, electronic device, and computer-readable storage medium
WO2023000888A1 (en) Cloud application implementing method and apparatus, electronic device, and storage medium
JP2023510833A (en) Message processing method, device and electronic equipment
WO2022108527A1 (en) Model processing method, system and apparatus, medium, and electronic device
WO2023138382A1 (en) Crash information collection method and apparatus
WO2023207788A1 (en) Information processing method and apparatus, electronic device, and storage medium
CN112929240A (en) Method, device, terminal and non-transitory storage medium for acquiring communication delay time
US11962929B2 (en) Method, apparatus, and device for configuring video special effect, and storage medium
WO2023045694A1 (en) Data transmission method and apparatus, and readable medium and electronic device
WO2023273539A1 (en) Service monitoring method and apparatus for flight query system, device, and storage medium
CN113596328B (en) Camera calling method and device and electronic equipment
US20240069991A1 (en) Abnormal request processing method and apparatus, electronic device and storage medium
CN113839828B (en) Network quality detection method, device, terminal equipment and medium
WO2021226961A1 (en) Application security test method and apparatus, storage medium, and electronic device
CN111309497B (en) Information calling method and device, server, terminal and storage medium
WO2023131109A1 (en) Method and apparatus for registering broadcast
WO2023131110A1 (en) Inter-process communication method and device
CN112969038A (en) Data transmission method and device, electronic equipment and computer readable storage medium
CN113347391B (en) Data transmission method, data transmission interruption method and device
CN116566819B (en) Simulation test communication method, simulation test communication device, electronic equipment and computer readable medium
CN112486826B (en) Test method, test device, electronic equipment and computer readable medium
WO2023116503A1 (en) Function processing method and apparatus, device and storage medium
WO2023241686A1 (en) Live stream interactive connection method, apparatus, electronic device, storage medium, and program product

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23742698

Country of ref document: EP

Kind code of ref document: A1