Page debugging method, device, electronic device and computer-readable storage medium

Data transmission is carried out through the server, remote page debugging between the PC and the mobile phone is realized, solving the problem of USB connection cable length limitation, allowing page debugging to be performed when the distance exceeds the length of the USB connection cable.

CN114490378BActive Publication Date: 2024-12-20BEIJING DAJIA INTERNET INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210082439.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-24
Publication Date
2024-12-20
Estimated Expiration
2042-01-24

AI Technical Summary

Technical Problem

In the prior art, the length of the USB connection cable between the PC and the mobile phone is limited, resulting in the inability to debug the page of the mobile phone application when the distance between the PC and the mobile phone exceeds the length of the USB connection cable.

Method used

Data transmission is carried out through the server, the first terminal sends a debug prompt message to the second terminal, receives a debugging request, and obtains and returns the debugging results of the page based on the request, realizing remote debugging.

Benefits of technology

Without the need to use the USB connection cable, data transmission is realized through the server between the first terminal and the second terminal, remote debugging is realized, and the problem of USB connection cable length limitation is solved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114490378B_ABST
    Figure CN114490378B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a page debugging method, device, electronic device and computer-readable storage medium, and belongs to the field of communication technology. In the method, a first terminal sends a debugging prompt message to a second terminal through a server to prompt the second terminal of a page that supports debugging in a target application in the first terminal, and receives a debugging request for the page from the second terminal through the server. Then, the first terminal obtains the debugging result of the page based on the debugging request, and returns the debugging result of the page to the second terminal through the server. Therefore, during the debugging process of the web page, the first terminal and the second terminal do not need to use a USB connection cable, and data is transmitted between the first terminal and the second terminal through the server, thereby realizing remote debugging.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of communication technology, and in particular to a page debugging method, device, electronic device, and computer-readable storage medium. Background Art

[0002] With the development of terminal technology, applications (Application, APP) running in terminals can use web views (Webview) to embed pages, so that the terminal can display the application pages through the web view, and the application pages can also be debugged by other terminals.

[0003] In the related art, taking a personal computer (PC) debugging a page of an application in a mobile phone as an example, the page debugging process includes: the mobile phone is connected to the PC via a Universal Serial Bus (USB) cable, and based on the USB connection between the PC and the mobile phone, the PC can debug the page of the application in the mobile phone.

[0004] During the above page debugging process, the PC and the mobile phone need to be connected using a USB cable. Due to the length limit of the USB cable, once the distance between the PC and the mobile phone exceeds the length of the USB cable, the PC cannot debug the page of the application in the mobile phone. Summary of the invention

[0005] The present disclosure provides a page debugging method, device, electronic device, and computer-readable storage medium to at least solve the problem in the related art that once the distance between the PC and the mobile phone exceeds the length of the USB connection cable, the PC cannot debug the page of the application in the mobile phone. The technical solution of the present disclosure is as follows:

[0006] According to a first aspect of an embodiment of the present disclosure, a page debugging method is provided, which is applied to a first terminal, and the method includes:

[0007] In response to a debugging prompt operation on a first page in a target application, sending a debugging prompt message to a second terminal through a server, wherein the debugging prompt message is used to prompt that the first page in the target application supports debugging;

[0008] receiving a debugging request from the second terminal from the server, wherein the debugging request is used to instruct to debug the first page;

[0009] Based on the debugging request, obtaining the debugging result of the first page;

[0010] The debugging result of the first page is sent to the second terminal through the server.

[0011] In a possible implementation manner, the webpage view mounted on the first page corresponds to a first communication channel, and the first communication channel is a communication channel between an operating system of the first terminal and a webpage view kernel;

[0012] The obtaining the debugging result of the first page based on the debugging request includes:

[0013] Sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view, so that the web page view kernel debugs the first page based on the debugging request to obtain a debugging result of the first page;

[0014] The debugging result of the first page sent by the debugging front end is received through the first communication channel corresponding to the web page view.

[0015] In one possible implementation, the method further includes:

[0016] In response to a debugging prompt operation on a first page in a target application, obtaining a web page view for mounting the first page;

[0017] The first communication channel corresponding to the webpage view is created.

[0018] In a possible implementation manner, the creating the first communication channel corresponding to the webpage view includes:

[0019] In response to a debugging prompt operation on a first page in a target application, acquiring address information of the first page, the address information including an identifier of the web page view;

[0020] creating a first communication channel between the operating system and the web view kernel;

[0021] A correspondence between the address information and the created first communication channel is established.

[0022] In a possible implementation manner, in response to a debugging prompt operation on a first page in a target application, obtaining address information of the first page includes:

[0023] In response to a debugging prompt operation on a first page in a target application, an address acquisition request is sent to a web view kernel, wherein the address acquisition request is used to instruct acquisition of address information of a page in the target application that supports debugging and has been mounted in a web view;

[0024] receiving address information of at least one second page from the web view kernel;

[0025] Based on the identifier of the web page view, the address information of the first page is queried from the address information of the at least one second page.

[0026] In a possible implementation manner, the first communication channel is a local socket; and the method further includes:

[0027] Updating the communication protocol of the first communication channel from Hypertext Transfer Protocol to Network Socket Protocol;

[0028] The sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view comprises:

[0029] The debugging request is sent to the first communication channel through the network socket protocol.

[0030] In one possible implementation, the method further includes:

[0031] receiving a container status acquisition request from the second terminal from the server, where the container status acquisition request is used to instruct acquisition of status data of a webpage view mounted on the first page;

[0032] Based on the container status acquisition request, acquiring status data of the webpage view;

[0033] The state data of the webpage view is sent to the second terminal through the server.

[0034] In one possible implementation, the method further includes:

[0035] receiving a container performance acquisition request from the second terminal from the server, where the container performance acquisition request is used to instruct acquisition of performance data of the web page view mounted on the first page;

[0036] Based on the container performance acquisition request, acquiring performance data of the web page view;

[0037] The performance data of the webpage view is sent to the second terminal through the server.

[0038] In a possible implementation manner, the performance data of the web page view includes an amount of resources occupied by the web page view;

[0039] The obtaining of the performance data of the web page view based on the container performance obtaining request includes:

[0040] Based on the container performance acquisition request, the amount of resources occupied by the web page view is acquired from a memory analysis tool in the web page browser kernel of the first terminal.

[0041] In one possible implementation, the method further includes:

[0042] receiving an application performance acquisition request from the second terminal from the server, where the application performance acquisition request is used to instruct acquisition of performance data of the target application;

[0043] Based on the application performance acquisition request, acquiring performance data of the target application;

[0044] The performance data of the target application is sent to the server via the server.

[0045] In a possible implementation manner, the performance data of the target application includes the amount of resources occupied by the target application;

[0046] The acquiring the performance data of the target application based on the application performance acquisition request includes:

[0047] Based on the application performance acquisition request, the amount of resources occupied by the target application is acquired from a debug memory information class in the operating system of the first terminal.

[0048] In one possible implementation, the method further includes:

[0049] In response to a debugging prompt operation on a first page in a target application, a target script is injected into the page code of the first page, and the target script executes the steps of receiving a debugging request from the second terminal from the server, obtaining a debugging result of the first page based on the debugging request, and sending the debugging result of the first page to the second terminal through the server.

[0050] In a possible implementation manner, the target script includes an information module and a target hijacking module, the target hijacking module includes a target hijacking method, and the target hijacking method is used to provide a page debugging function for the operating system of the first terminal;

[0051] The target script receives a debugging request of the second terminal from the server, and based on the debugging request, obtains the debugging result of the first page, including:

[0052] The information module receives a debugging request of the second terminal from the server through the second communication channel;

[0053] The information module sends the debugging request to the target hijacking module;

[0054] The target hijacking module obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

[0055] In a possible implementation, the target script includes at least one proxy module and at least one specific hijacking module, each proxy module corresponds to a specific hijacking module, each specific hijacking module includes a specific hijacking method, and each specific hijacking method is used to provide a page debugging function for an operating system;

[0056] The target hijacking module is one of the at least one specific hijacking module, and the target hijacking module corresponds to a target proxy module in the at least one proxy module;

[0057] The information module sending the debugging request to the target hijacking module includes:

[0058] The information module sends the debugging request to the target agent module;

[0059] The target proxy module receives the debugging request and sends the received debugging request to the target hijacking module.

[0060] In one possible implementation, the target hijacking module is a public hijacking module in the target script, the target hijacking method is a public hijacking method included in the public hijacking module, the public hijacking method is used to provide a page debugging function, and the page debugging function is applicable to multiple operating systems.

[0061] In a possible implementation manner, the webpage view mounted by the first page corresponds to a second communication channel, and the second communication channel is a communication channel between the server and the target script;

[0062] The target script receiving the debugging request of the second terminal from the server includes:

[0063] The target script receives a debugging request of the second terminal from the server through the second communication channel;

[0064] The target script sending the debugging result of the first page to the second terminal through the server includes:

[0065] The target script sends the debugging result of the first page to the server through the second communication channel, and the server sends the debugging result of the first page to the second terminal.

[0066] According to a second aspect of an embodiment of the present disclosure, a page debugging method is provided, which is applied to a server, and the method includes:

[0067] receiving a debugging prompt message from the first terminal, wherein the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging;

[0068] sending the debugging prompt message to the second terminal via a third communication channel, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message;

[0069] receiving a debugging request from the second terminal through a fourth communication channel, the debugging request being used to instruct debugging of the first page, the fourth communication channel corresponding to a debugging panel of the second terminal, the debugging panel being used to provide a page debugging function;

[0070] Sending a debugging request of the second terminal to the first terminal;

[0071] receiving a debugging result of the first page from the first terminal;

[0072] The debugging result of the first page is sent to the second terminal through the fourth communication channel.

[0073] In a possible implementation manner, the server includes a channel management module, an information flow module, and a first controller, and the first controller corresponds to a communication channel between the server and the first terminal;

[0074] The receiving, through the fourth communication channel, a debugging request of the second terminal; and sending the debugging request of the second terminal to the first terminal include:

[0075] The channel management module receives the debugging request of the second terminal through the fourth communication channel, and sends the debugging request to the information flow module;

[0076] The information flow module sends the debugging request to the first controller according to the debugging request, and the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

[0077] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0078] The step of receiving a debugging prompt message from the first terminal and sending the debugging prompt message to the second terminal through the third communication channel comprises:

[0079] The channel management module receives a debugging prompt message from the first terminal, and sends the debugging prompt message to the information flow module;

[0080] The information flow module sends the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels according to the debugging prompt message, and the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

[0081] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0082] The receiving the debugging result of the first page from the first terminal; and sending the debugging result of the first page to the second terminal through the fourth communication channel includes:

[0083] The channel management module receives the debugging result of the first page from the first terminal, and sends the debugging result to the information flow module;

[0084] The information flow module sends the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels according to the debugging result, and the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

[0085] In one possible implementation, the method further includes:

[0086] receiving a container status acquisition request from the second terminal through a fifth communication channel, the container status acquisition request being used to instruct acquisition of status data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing a web page view status;

[0087] Sending the container status acquisition request to the first terminal;

[0088] receiving state data of the webpage view from the first terminal;

[0089] The state data of the webpage view is sent to the second terminal through a fifth communication channel.

[0090] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0091] The receiving the state data of the webpage view from the first terminal; and sending the state data of the webpage view to the second terminal through the fifth communication channel comprises:

[0092] The channel management module receives the status data from the first terminal and sends the status data to the information flow module;

[0093] The information flow module sends the status data to the second controller corresponding to the fifth communication channel among the multiple communication channels according to the status data, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0094] In one possible implementation, the method further includes:

[0095] receiving, via a fifth communication channel, a container performance acquisition request of the second terminal, the container performance acquisition request being used to instruct acquisition of performance data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of web page view performance;

[0096] Sending the container performance acquisition request to the first terminal;

[0097] receiving performance data of the webpage view from the first terminal;

[0098] The performance data of the webpage view is sent to the second terminal through the fifth communication channel.

[0099] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0100] The receiving the performance data of the webpage view from the first terminal; and sending the performance data of the webpage view to the second terminal through the fifth communication channel comprises:

[0101] The channel management module receives the performance data from the first terminal and sends the performance data to the information flow module;

[0102] The information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels based on the performance data, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0103] In one possible implementation, the method further includes:

[0104] receiving, via a fifth communication channel, an application performance acquisition request of the second terminal, the application performance acquisition request being used to instruct acquisition of performance data of the target application, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing performance of the target application;

[0105] Sending the application performance acquisition request to the first terminal;

[0106] receiving performance data of the target application from the first terminal;

[0107] The performance data of the target application is sent to the second terminal through the fifth communication channel.

[0108] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0109] The receiving the performance data of the target application from the first terminal; and sending the performance data of the target application to the second terminal through the fifth communication channel comprises:

[0110] The channel management module receives the performance data from the first terminal and sends the performance data to the information flow module;

[0111] The information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels based on the performance data, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0112] According to a third aspect of an embodiment of the present disclosure, a page debugging method is provided, which is applied to a second terminal, and the method includes:

[0113] receiving, via a third communication channel, a debugging prompt message of the first terminal sent by the server, the debugging prompt message being used to prompt the first terminal that a first page in a target application supports debugging, the third communication channel corresponding to a main panel of the second terminal, the main panel being used to provide a function of processing the debugging prompt message;

[0114] In response to a debugging operation on the first page, sending a debugging request to the server through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function;

[0115] The debugging result of the first page sent by the server is received through the fourth communication channel.

[0116] In a possible implementation manner, in response to the debugging operation on the first page, sending a debugging request to the server through the fourth communication channel includes:

[0117] In the main panel, displaying debugging options and address information of the first page carried in the debugging prompt message;

[0118] In response to a selection operation on the debugging option in the main panel, displaying the debugging panel, the debugging panel including debugging function options, the debugging function options being used to provide a function of generating the debugging request;

[0119] In response to the selection operation of the debugging function option, the debugging request is sent to the server through a fourth communication channel.

[0120] In a possible implementation manner, the main panel further includes an attribute acquisition option, and the attribute acquisition option corresponds to the address information, and the method further includes:

[0121] In response to a selection operation of the property acquisition option, displaying a property panel of the first page, the property panel is used to provide a function of web page view state, and the property panel includes a container state acquisition option;

[0122] In response to a selection operation on the container status acquisition option, sending a container status acquisition request to the server through a fifth communication channel, wherein the container status acquisition request is used to instruct acquisition of status data of the webpage view mounted on the first page;

[0123] The state data of the webpage view sent by the server is received through the fifth communication channel.

[0124] In a possible implementation manner, after receiving the state data of the webpage view sent by the server through the fifth communication channel, the method further includes:

[0125] In the property panel, the status data of the web page view is displayed.

[0126] In a possible implementation manner, the property panel is further used to provide a function of web page view performance, and the property panel further includes a container performance acquisition option; the method further includes:

[0127] In response to a selection operation on the container performance acquisition option, sending a container performance acquisition request to the server through the fifth communication channel, wherein the container performance acquisition request is used to instruct to acquire performance data of the webpage view mounted on the first page;

[0128] The performance data of the webpage view sent by the server is received through the fifth communication channel.

[0129] In a possible implementation manner, after receiving, through the fifth communication channel, the performance data of the webpage view sent by the server, the method further includes:

[0130] In the property panel, performance data of the web page view is displayed.

[0131] In a possible implementation manner, the property panel is further used to provide a function of the performance of the target application, and the property panel further includes an application performance acquisition option; the method further includes:

[0132] In response to a selection operation on the application performance acquisition option, sending an application performance acquisition request to the server through the fifth communication channel, wherein the application performance acquisition request is used to instruct to acquire performance data of the target application;

[0133] The performance data of the target application sent by the server is received through the fifth communication channel.

[0134] In a possible implementation manner, after receiving, through the fifth communication channel, the performance data of the target application sent by the server, the method further includes:

[0135] In the property panel, performance data of the target application is displayed.

[0136] In a possible implementation, the property panel further includes a real time panel, and the real time panel is used to display the real time corresponding to the property data of the page. The method further includes:

[0137] In the real time panel, the real time corresponding to the attribute data of the first page is displayed.

[0138] In a possible implementation, the property panel further includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, the offline package panel includes a run option, the run option is used to provide a function of running the offline page code; the method further includes:

[0139] In response to a selection operation on the run option in the offline package panel, the offline page code of the first page is run.

[0140] In a possible implementation manner, after receiving the debugging result of the first page sent by the server through the fourth communication channel, the method further includes:

[0141] In the debugging panel, the debugging result of the first page is displayed.

[0142] According to a fourth aspect of an embodiment of the present disclosure, a page debugging device is provided, which is applied to a first terminal, and the device includes:

[0143] A first sending unit is configured to execute a debugging prompt operation on a first page in a target application, and send a debugging prompt message to a second terminal through a server, wherein the debugging prompt message is used to prompt that the first page in the target application supports debugging;

[0144] a receiving unit, configured to receive a debugging request of the second terminal from the server, wherein the debugging request is used to instruct to debug the first page;

[0145] an acquiring unit, configured to acquire a debugging result of the first page based on the debugging request;

[0146] The second sending unit is further configured to execute sending the debugging result of the first page to the second terminal through the server.

[0147] In a possible implementation manner, the webpage view mounted on the first page corresponds to a first communication channel, and the first communication channel is a communication channel between an operating system of the first terminal and a webpage view kernel; the acquisition unit is configured to execute:

[0148] Sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view, so that the web page view kernel debugs the first page based on the debugging request to obtain a debugging result of the first page;

[0149] The debugging result of the first page sent by the debugging front end is received through the first communication channel corresponding to the web page view.

[0150] In one possible implementation, the device further includes a creating unit;

[0151] The acquisition unit is further configured to execute, in response to a debugging prompt operation on a first page in the target application, acquire a web page view for mounting the first page;

[0152] The creating unit is configured to execute creation of the first communication channel corresponding to the web page view.

[0153] In a possible implementation manner, the creating unit includes:

[0154] an acquisition sub-sub-unit, configured to execute, in response to a debugging prompt operation on a first page in a target application, acquiring address information of the first page, the address information including an identifier of the web page view;

[0155] A creation sub-sub-unit configured to execute creation of a first communication channel between the operating system and the web page view kernel;

[0156] The creation sub-subunit is further configured to establish a corresponding relationship between the address information and the created first communication channel.

[0157] In a possible implementation manner, the acquisition sub-subunit is configured to execute:

[0158] In response to a debugging prompt operation on a first page in a target application, an address acquisition request is sent to a web view kernel, wherein the address acquisition request is used to instruct acquisition of address information of a page in the target application that supports debugging and has been mounted in a web view;

[0159] receiving address information of at least one second page from the web view kernel;

[0160] Based on the identifier of the web page view, the address information of the first page is queried from the address information of the at least one second page.

[0161] In a possible implementation manner, the first communication channel is a local socket; and the device further includes:

[0162] An updating unit, configured to update the communication protocol of the first communication channel from the Hypertext Transfer Protocol to the Network Socket Protocol;

[0163] The second sending unit is further configured to send the debugging request to the first communication channel through the network socket protocol.

[0164] In a possible implementation manner, the receiving unit is further configured to execute receiving a container status acquisition request of the second terminal from the server, where the container status acquisition request is used to instruct acquisition of status data of the webpage view mounted on the first page;

[0165] The acquisition unit is further configured to execute the state data of the webpage view based on the container state acquisition request;

[0166] The second sending unit is further configured to send the state data of the webpage view to the second terminal through the server.

[0167] In a possible implementation manner, the receiving unit is further configured to execute receiving a container performance acquisition request of the second terminal from the server, where the container performance acquisition request is used to instruct to acquire performance data of the web page view mounted by the first page;

[0168] The acquisition unit is further configured to execute the performance data of the web page view based on the container performance acquisition request;

[0169] The second sending unit is further configured to send the performance data of the web page view to the second terminal through the server.

[0170] In a possible implementation manner, the performance data of the web page view includes an amount of resources occupied by the web page view;

[0171] The acquisition unit is further configured to execute, based on the container performance acquisition request, to acquire the amount of resources occupied by the web page view from a memory analysis tool in the web page browser kernel of the first terminal.

[0172] In a possible implementation manner, the receiving unit is further configured to execute receiving an application performance acquisition request of the second terminal from the server, where the application performance acquisition request is used to instruct to acquire performance data of the target application;

[0173] The acquisition unit is further configured to execute, based on the application performance acquisition request, to acquire the performance data of the target application;

[0174] The second sending unit is further configured to send the performance data of the target application to the server through the server.

[0175] In a possible implementation manner, the performance data of the target application includes the amount of resources occupied by the target application;

[0176] The acquisition unit is further configured to execute, based on the application performance acquisition request, acquiring the amount of resources occupied by the target application from the debug memory information class in the operating system of the first terminal.

[0177] In a possible implementation manner, the device further includes:

[0178] The injection unit is configured to execute, in response to a debugging prompt operation on a first page in a target application, inject a target script into the page code of the first page, and the target script executes the steps of receiving a debugging request from the second terminal from the server, obtaining a debugging result of the first page based on the debugging request, and sending the debugging result of the first page to the second terminal through the server.

[0179] In a possible implementation manner, the webpage view mounted by the first page corresponds to a second communication channel, and the second communication channel is a communication channel between the server and the target script;

[0180] The target script receiving the debugging request of the second terminal from the server includes:

[0181] The target script receives a debugging request of the second terminal from the server through the second communication channel;

[0182] The target script sending the debugging result of the first page to the second terminal through the server includes:

[0183] The target script sends the debugging result of the first page to the server through the second communication channel, and the server sends the debugging result of the first page to the second terminal.

[0184] In a possible implementation, the target script includes an information module and a target hijacking module, the target hijacking module includes a target hijacking method, and the target hijacking method is used to provide a page debugging function for the operating system of the first terminal; the target script receives a debugging request of the second terminal from the server, and based on the debugging request, obtaining a debugging result of the first page includes:

[0185] The information module receives a debugging request of the second terminal from the server through the second communication channel;

[0186] The information module sends the debugging request to the target hijacking module;

[0187] The target hijacking module obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

[0188] In a possible implementation, the target script includes at least one proxy module and at least one specific hijacking module, each proxy module corresponds to a specific hijacking module, each specific hijacking module includes a specific hijacking method, and each specific hijacking method is used to provide a page debugging function for an operating system;

[0189] The target hijacking module is one of the at least one specific hijacking module, and the target hijacking module corresponds to a target proxy module in the at least one proxy module;

[0190] The information module sending the debugging request to the target hijacking module includes:

[0191] The information module sends the debugging request to the target agent module;

[0192] The target proxy module receives the debugging request and sends the received debugging request to the target hijacking module.

[0193] In one possible implementation, the target hijacking module is a public hijacking module in the target script, the target hijacking method is a public hijacking method included in the public hijacking module, the public hijacking method is used to provide a page debugging function, and the page debugging function is applicable to multiple operating systems.

[0194] According to a fifth aspect of an embodiment of the present disclosure, a page debugging device is provided, which is applied to a server, and the device includes:

[0195] A receiving unit is configured to receive a debugging prompt message from the first terminal, where the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging;

[0196] a sending unit, configured to send the debugging prompt message to the second terminal through a third communication channel, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message;

[0197] The receiving unit is further configured to receive a debugging request from the second terminal through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function;

[0198] The sending unit is further configured to execute sending a debugging request of the second terminal to the first terminal;

[0199] The receiving unit is further configured to receive a debugging result of the first page from the first terminal;

[0200] The sending unit is further configured to send the debugging result of the first page to the second terminal through the fourth communication channel.

[0201] In a possible implementation manner, the server includes a channel management module, an information flow module, and a first controller, and the first controller corresponds to a communication channel between the server and the first terminal;

[0202] The receiving unit is further configured to receive a debugging request from the second terminal through a fourth communication channel based on the channel management module, and send the debugging request to the information flow module;

[0203] The sending unit is further configured to execute, based on the information flow module, sending the debugging request to the first controller according to the debugging request, and the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

[0204] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0205] The receiving unit is further configured to receive a debugging prompt message from the first terminal based on the channel management module, and send the debugging prompt message to the information flow module;

[0206] The sending unit is further configured to execute, based on the information flow module and according to the debugging prompt message, sending the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

[0207] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0208] The receiving unit is further configured to receive a debugging result of the first page from the first terminal based on the channel management module, and send the debugging result to the information flow module;

[0209] The sending unit is further configured to execute, based on the information flow module and according to the debugging result, sending the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

[0210] In a possible implementation, the receiving unit is further configured to receive a container status acquisition request from the second terminal through a fifth communication channel, the container status acquisition request being used to instruct acquisition of status data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing a web page view status;

[0211] The sending unit is further configured to send the container status acquisition request to the first terminal;

[0212] The receiving unit is further configured to receive the state data of the webpage view from the first terminal;

[0213] The sending unit is further configured to send the state data of the webpage view to the second terminal through a fifth communication channel.

[0214] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0215] The receiving unit is further configured to receive the status data from the first terminal based on the channel management module and send the status data to the information flow module;

[0216] The sending unit is further configured to execute, based on the information flow module and according to the status data, sending the status data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0217] In a possible implementation, the receiving unit is further configured to receive a container performance acquisition request of the second terminal through a fifth communication channel, the container performance acquisition request is used to instruct to obtain performance data of the web page view mounted by the first page, the fifth communication channel corresponds to a property panel of the second terminal, and the property panel is used to provide a function of web page view performance;

[0218] The sending unit is further configured to send the container performance acquisition request to the first terminal;

[0219] The receiving unit is further configured to receive performance data of the webpage view from the first terminal;

[0220] The sending unit is further configured to send the performance data of the web page view to the second terminal through the fifth communication channel.

[0221] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0222] The receiving unit is further configured to receive the status data from the first terminal based on the channel management module and send the status data to the information flow module;

[0223] The sending unit is further configured to execute, based on the information flow module and according to the status data, sending the status data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0224] In a possible implementation, the receiving unit is further configured to receive an application performance acquisition request of the second terminal through a fifth communication channel, the application performance acquisition request is used to instruct to obtain performance data of the target application, the fifth communication channel corresponds to a property panel of the second terminal, and the property panel is used to provide a function of providing performance of the target application;

[0225] The sending unit is further configured to send the application performance acquisition request to the first terminal;

[0226] The receiving unit is further configured to receive the performance data of the target application from the first terminal;

[0227] The sending unit is further configured to send the performance data of the target application to the second terminal through the fifth communication channel;

[0228] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0229] The receiving unit is further configured to receive the performance data from the first terminal based on the channel management module and send the performance data to the information flow module;

[0230] The sending unit is further configured to execute, based on the information flow module and according to the performance data, sending the performance data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0231] According to a sixth aspect of an embodiment of the present disclosure, a page debugging device is provided, which is applied to a second terminal, and the device includes:

[0232] a receiving unit configured to receive a debugging prompt message of a first terminal sent by a server through a third communication channel, wherein the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message;

[0233] a sending unit configured to execute, in response to a debugging operation on the first page, sending a debugging request to the server through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function;

[0234] The receiving unit is further configured to receive the debugging result of the first page sent by the server through the fourth communication channel.

[0235] In a possible implementation manner, the device further includes:

[0236] A first display unit is configured to be executed in the main panel to display the debugging options and the address information of the first page carried by the debugging prompt message;

[0237] The first display unit is further configured to display the debugging panel in response to a selection operation for the debugging option in the main panel, wherein the debugging panel includes a debugging function option, and the debugging function option is used to provide a function of generating the debugging request;

[0238] The sending unit is further configured to execute, in response to a selection operation on the debugging function option, sending the debugging request to the server through a fourth communication channel.

[0239] In a possible implementation manner, the main panel further includes an attribute acquisition option, and the attribute acquisition option corresponds to the address information;

[0240] The first display unit is further configured to execute, in response to a selection operation on the property acquisition option, display a property panel of the first page, the property panel being used to provide a function of a web page view state, the property panel including a container state acquisition option;

[0241] The sending unit is further configured to execute, in response to a selection operation on the container status acquisition option, sending a container status acquisition request to the server through a fifth communication channel, wherein the container status acquisition request is used to instruct to acquire status data of the webpage view mounted on the first page;

[0242] The receiving unit is further configured to receive the state data of the webpage view sent by the server through the fifth communication channel.

[0243] In a possible implementation manner, the device further includes:

[0244] The second display unit is configured to be executed in the property panel to display the status data of the web page view.

[0245] In a possible implementation, the property panel is further used to provide a function of web page view performance, and the property panel further includes a container performance acquisition option;

[0246] The sending unit is further configured to execute, in response to a selection operation on the container performance acquisition option, sending a container performance acquisition request to the server through the fifth communication channel, wherein the container performance acquisition request is used to instruct to acquire performance data of the webpage view mounted by the first page;

[0247] The receiving unit is further configured to receive the performance data of the web page view sent by the server through the fifth communication channel.

[0248] In a possible implementation manner, the device further includes:

[0249] The third display unit is configured to be executed in the property panel to display the performance data of the web page view.

[0250] In a possible implementation manner, the property panel is further used to provide a function of the performance of the target application, and the property panel further includes an application performance acquisition option;

[0251] The sending unit is further configured to execute, in response to a selection operation on the application performance acquisition option, sending an application performance acquisition request to the server through the fifth communication channel, wherein the application performance acquisition request is used to instruct to acquire performance data of the target application;

[0252] The receiving unit is further configured to receive the performance data of the target application sent by the server through the fifth communication channel.

[0253] In a possible implementation manner, the device further includes:

[0254] The fourth display unit is configured to be executed in the property panel to display the performance data of the target application.

[0255] In a possible implementation manner, the property panel further includes a real time panel, and the real time panel is used to display the real time corresponding to the property data of the page. The device further includes:

[0256] The fifth display unit is configured to be executed in the real time panel to display the real time corresponding to the attribute data of the first page.

[0257] In a possible implementation manner, the property panel further includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, the offline package panel includes a run option, the run option is used to provide a function of running the offline page code; the device further includes:

[0258] The running unit is configured to execute the offline page code of the first page in response to the selection operation of the running option in the offline package panel.

[0259] In a possible implementation manner, the device further includes:

[0260] The sixth display unit is configured to display the debugging result of the first page in the debugging panel.

[0261] According to a seventh aspect of an embodiment of the present disclosure, there is provided an electronic device, including:

[0262] one or more processors;

[0263] one or more memories for storing the one or more processor-executable instructions;

[0264] The one or more processors are configured to execute the instructions to implement the page debugging method provided by the first aspect or any optional manner of the first aspect, or the page debugging method provided by the second aspect or any optional manner of the second aspect, or the page debugging method provided by the third aspect or any optional manner of the third aspect.

[0265] According to an eighth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided. When instructions in the storage medium are executed by a processor of an electronic device, it enables execution of a page debugging method provided in any of the above aspects or any optional manner of any of the above aspects.

[0266] According to the ninth aspect of the embodiments of the present disclosure, a computer program product is provided, which includes a program code, and the program code is stored in a computer-readable storage medium. A processor of an electronic device reads the program code from the computer-readable storage medium, and the processor executes the program code, so that the electronic device executes the method provided in the above-mentioned first aspect or various optional implementations of the first aspect, or executes the method provided in the above-mentioned second aspect or various optional implementations of the second aspect, or executes the method provided in the above-mentioned third aspect or various optional implementations of the third aspect.

[0267] The technical solution provided by the embodiments of the present disclosure brings at least the following beneficial effects:

[0268] The first terminal sends a debugging prompt message to the second terminal through the server to prompt the second terminal of a page that supports debugging in the target application in the first terminal, and receives a debugging request for the page from the second terminal through the server. Then, based on the debugging request, the first terminal obtains the debugging result of the page and returns the debugging result of the page to the second terminal through the server. Therefore, during the debugging process of the web page, the first terminal and the second terminal do not need to use a USB cable, and data is transmitted between the first terminal and the second terminal through the server, thereby realizing remote debugging.

[0269] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0270] The drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the description are used to explain the principles of the present disclosure, and do not constitute improper limitations on the present disclosure.

[0271] Figure 1 The diagram is a schematic diagram of a page debugging system according to an exemplary embodiment.

[0272] Figure 2 The figure is a block diagram of various devices in a page debugging system according to an exemplary embodiment.

[0273] Figure 3 The figure is a flow chart of a page debugging method according to an exemplary embodiment.

[0274] Figure 4 The figure is a flow chart of a page debugging method according to an exemplary embodiment.

[0275] Figure 5 The figure is a flow chart of a page debugging method according to an exemplary embodiment.

[0276] Figure 6 The present invention is an interactive flow chart of a page debugging process according to an exemplary embodiment.

[0277] Figure 7 The present invention is an interactive flow chart of another page debugging process according to an exemplary embodiment.

[0278] Figure 8 The diagram is an architecture diagram of a page debugging system according to an exemplary embodiment.

[0279] Fig. 9 The figure is a corresponding relationship diagram of page debugging according to an exemplary embodiment.

[0280] Fig.10The present invention is a communication architecture diagram of a server according to an exemplary embodiment.

[0281] Fig.11 The present invention is a flowchart of obtaining container status data according to an exemplary embodiment.

[0282] Fig.12 The present invention is a flowchart of obtaining container performance data according to an exemplary embodiment.

[0283] Fig.13 The invention is a flowchart of obtaining application performance data according to an exemplary embodiment.

[0284] Fig.14 The present invention is a communication flow chart of a page debugging process according to an exemplary embodiment.

[0285] Fig.15 The invention is a block diagram of a page debugging device according to an exemplary embodiment.

[0286] Fig.16 The invention is a block diagram of a page debugging device according to an exemplary embodiment.

[0287] Fig.17 The invention is a block diagram of a page debugging device according to an exemplary embodiment.

[0288] Fig.18 It is a block diagram of an electronic device according to an exemplary embodiment.

[0289] Fig.19 It is a block diagram of an electronic device according to an exemplary embodiment. DETAILED DESCRIPTION

[0290] In order to enable ordinary persons in the art to better understand the technical solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings.

[0291] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0292] The user information involved in the present disclosure may be information authorized by the user or fully authorized by all parties.

[0293] Figure 1 is a schematic diagram of a page debugging system according to an exemplary embodiment. Figure 1 As shown, the page debugging system 100 includes multiple terminals 101 and a server 102. The multiple terminals 101 are indirectly connected to the server 102 through wireless communication. The multiple terminals 101 include at least one of a smart phone, a tablet computer, a smart speaker, a smart watch, a laptop computer, a smart handheld game device, a portable game device, or a desktop computer, but the types of the multiple terminals 101 are not limited thereto.

[0294] The first terminal among the multiple terminals 101 runs an application to be debugged, and the page of the application can be debugged. The first terminal is also the debugged terminal, and the first terminal can be a mobile phone. The second terminal among the multiple terminals 101 is used to trigger the first terminal to debug the page in the application and obtain the debugging result of the page. The second terminal is the debugging terminal, and the second terminal can be a PC, such as a tablet computer, a laptop computer or a desktop computer.

[0295] The server 102 includes at least one of a server, multiple servers, a cloud computing platform, or a virtualization center. In some embodiments, the server 102 is an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The server has the function of message forwarding, and during the debugging process, message forwarding is performed between the first terminal and the second terminal.

[0296] Figure 2 is a block diagram of various devices in a page debugging system according to an exemplary embodiment. Figure 2 As shown, both the first terminal 201 and the second terminal 202 run a debugging application, which is an application with a page debugging function, also known as a debugging tool. The page debugging function includes debugging the page of the application, such as the user interface (UI) debugging of the page, network debugging, page script debugging, etc.

[0297] The first terminal 201 and the second terminal 202 are also both running a web browser, which has the function of displaying application pages. For example, the web browser Chromium developed by Google. In the first terminal 201, the debugging front end of the debugging application is located in the core of the web browser, and in the second terminal 202, the web browser displays the display interface (i.e., the human-computer interaction interface) of the debugging front end. Among them, the debugging front end is a module in the debugging application, which is used to implement the response and echo logic of the debugging application. The core of the web browser is used to provide an operating environment for the debugging front end.

[0298] The operating system of the first terminal 201 creates a web page view for each page in the application, and mounts the corresponding web page view on the page, and the web page view displays the page on the display interface of the first terminal 201. The web page view where the page is located is also called the web page view of the page, and the operating system is also called the native (Native) of the first terminal 201, including Android, iOS or other types of operating systems. The web page view is a control for displaying page content.

[0299] The web page views mounted on each page of each application in the first terminal 201 constitute a web page view set, and each web page view in the web page view set shares the core of the web browser in the first terminal 201. Therefore, the web browser core is also called the web page view core. And each web page view shares the web page view core, so that the debugging front end in the web page view core processes the message requesting the debugging page, and returns the debugging result of the page to the debugging front end in the second terminal 202, and the debugging front end in the web page view core displays the debugging result of the page.

[0300] The operating system of the first terminal 201 includes a message management module (message manager). As a message manager, the message management module is mainly responsible for the distribution of messages during the debugging process and the generation and analysis of messages. Figure 2 As shown, there are multiple first communication channels between the web page view and the operating system, and each first communication channel corresponds to a web page view in the web page view set. Optionally, the first communication channel is a local socket (LocalSocket).

[0301] The debugging front end in the second terminal 202 sends a debugging request for a page of a certain application in the first terminal 201 to the server 203. The server 203 forwards the debugging request to the message management module of the first terminal 201. The message management module sends the debugging request to the debugging front end in the web view kernel through the first communication channel corresponding to the web view of the page. The debugging front end in the web view kernel debugs the page based on the debugging request, and returns the debugging result to the debugging front end in the second terminal 202. The debugging front end in the second terminal 202 displays the debugging result.

[0302] To further explain the process of debugging the first terminal page, see Figure 3 is a flowchart of a page debugging method according to an exemplary embodiment, the method is applied to a first terminal, and the method includes:

[0303] In step 301, in response to a debugging prompt operation on a first page in a target application, a first terminal sends a debugging prompt message to a second terminal through a server, wherein the debugging prompt message is used to prompt that the first page in the target application supports debugging.

[0304] In step 302, the first terminal receives a debugging request from the second terminal from the server, where the debugging request is used to instruct to debug the first page.

[0305] In step 303, the first terminal obtains the debugging result of the first page based on the debugging request.

[0306] In step 304, the first terminal sends the debugging result of the first page to the second terminal through the server.

[0307] In the method provided in the embodiment of the present disclosure, the first terminal sends a debugging prompt message to the second terminal through the server to prompt the second terminal of a page that supports debugging in the target application in the first terminal, and receives a debugging request for the page from the second terminal through the server. Then, the first terminal obtains the debugging result of the page based on the debugging request, and returns the debugging result of the page to the second terminal through the server. Therefore, during the debugging process of the web page, the first terminal and the second terminal do not need to use a USB connection cable, and data is transmitted between the first terminal and the second terminal through the server, thereby realizing remote debugging.

[0308] In a possible implementation manner, the webpage view mounted on the first page corresponds to a first communication channel, and the first communication channel is a communication channel between an operating system of the first terminal and a webpage view kernel;

[0309] The obtaining the debugging result of the first page based on the debugging request includes:

[0310] Sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view, so that the web page view kernel debugs the first page based on the debugging request to obtain a debugging result of the first page;

[0311] The debugging result of the first page sent by the debugging front end is received through the first communication channel corresponding to the web page view.

[0312] In one possible implementation, the method further includes:

[0313] In response to a debugging prompt operation on a first page in a target application, obtaining a web page view for mounting the first page;

[0314] The first communication channel corresponding to the webpage view is created.

[0315] In a possible implementation manner, the creating the first communication channel corresponding to the webpage view includes:

[0316] In response to a debugging prompt operation on a first page in a target application, acquiring address information of the first page, the address information including an identifier of the web page view;

[0317] creating a first communication channel between the operating system and the web view kernel;

[0318] A correspondence between the address information and the created first communication channel is established.

[0319] In a possible implementation manner, in response to a debugging prompt operation on a first page in a target application, obtaining address information of the first page includes:

[0320] In response to a debugging prompt operation on a first page in a target application, an address acquisition request is sent to a web view kernel, wherein the address acquisition request is used to instruct acquisition of address information of a page in the target application that supports debugging and has been mounted in a web view;

[0321] receiving address information of at least one second page from the web view kernel;

[0322] Based on the identifier of the web page view, the address information of the first page is queried from the address information of the at least one second page.

[0323] In a possible implementation manner, the first communication channel is a local socket; and the method further includes:

[0324] Updating the communication protocol of the first communication channel from Hypertext Transfer Protocol to Network Socket Protocol;

[0325] The sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view comprises:

[0326] The debugging request is sent to the first communication channel through the network socket protocol.

[0327] In one possible implementation, the method further includes:

[0328] receiving a container status acquisition request from the second terminal from the server, where the container status acquisition request is used to instruct acquisition of status data of a webpage view mounted on the first page;

[0329] Based on the container status acquisition request, acquiring status data of the webpage view;

[0330] The state data of the webpage view is sent to the second terminal through the server.

[0331] In one possible implementation, the method further includes:

[0332] receiving a container performance acquisition request from the second terminal from the server, where the container performance acquisition request is used to instruct acquisition of performance data of the web page view mounted on the first page;

[0333] Based on the container performance acquisition request, acquiring performance data of the web page view;

[0334] The performance data of the webpage view is sent to the second terminal through the server.

[0335] In a possible implementation manner, the performance data of the web page view includes an amount of resources occupied by the web page view;

[0336] The obtaining of the performance data of the web page view based on the container performance obtaining request includes:

[0337] Based on the container performance acquisition request, the amount of resources occupied by the web page view is acquired from a memory analysis tool in the web page browser kernel of the first terminal.

[0338] In one possible implementation, the method further includes:

[0339] receiving an application performance acquisition request from the second terminal from the server, where the application performance acquisition request is used to instruct acquisition of performance data of the target application;

[0340] Based on the application performance acquisition request, acquiring performance data of the target application;

[0341] The performance data of the target application is sent to the server via the server.

[0342] In a possible implementation manner, the performance data of the target application includes the amount of resources occupied by the target application;

[0343] The acquiring the performance data of the target application based on the application performance acquisition request includes:

[0344] Based on the application performance acquisition request, the amount of resources occupied by the target application is acquired from a debug memory information class in the operating system of the first terminal.

[0345] In one possible implementation, the method further includes:

[0346] In response to a debugging prompt operation on a first page in a target application, a target script is injected into the page code of the first page, and the target script executes the steps of receiving a debugging request from the second terminal from the server, obtaining a debugging result of the first page based on the debugging request, and sending the debugging result of the first page to the second terminal through the server.

[0347] In a possible implementation manner, the target script includes an information module and a target hijacking module, the target hijacking module includes a target hijacking method, and the target hijacking method is used to provide a page debugging function for the operating system of the first terminal;

[0348] The target script receives a debugging request of the second terminal from the server, and based on the debugging request, obtains the debugging result of the first page, including:

[0349] The information module receives a debugging request of the second terminal from the server through the second communication channel;

[0350] The information module sends the debugging request to the target hijacking module;

[0351] The target hijacking module obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

[0352] In a possible implementation, the target script includes at least one proxy module and at least one specific hijacking module, each proxy module corresponds to a specific hijacking module, each specific hijacking module includes a specific hijacking method, and each specific hijacking method is used to provide a page debugging function for an operating system;

[0353] The target hijacking module is one of the at least one specific hijacking module, and the target hijacking module corresponds to a target proxy module in the at least one proxy module;

[0354] The information module sending the debugging request to the target hijacking module includes:

[0355] The information module sends the debugging request to the target agent module;

[0356] The target proxy module receives the debugging request and sends the received debugging request to the target hijacking module.

[0357] In one possible implementation, the target hijacking module is a public hijacking module in the target script, the target hijacking method is a public hijacking method included in the public hijacking module, the public hijacking method is used to provide a page debugging function, and the page debugging function is applicable to multiple operating systems.

[0358] In a possible implementation manner, the webpage view mounted by the first page corresponds to a second communication channel, and the second communication channel is a communication channel between the server and the target script;

[0359] The target script receiving the debugging request of the second terminal from the server includes:

[0360] The target script receives a debugging request of the second terminal from the server through the second communication channel;

[0361] The target script sending the debugging result of the first page to the second terminal through the server includes:

[0362] The target script sends the debugging result of the first page to the server through the second communication channel, and the server sends the debugging result of the first page to the second terminal.

[0363] All the above optional technical solutions can be arbitrarily combined to form optional embodiments of the present disclosure, and will not be described in detail here.

[0364] To further explain the process of message forwarding by the server during the debugging page, see Figure 4 , Figure 4 The following is a flow chart of a page debugging method according to an exemplary embodiment. The method is applied to a server and includes:

[0365] In step 401, the server receives a debugging prompt message from the first terminal, where the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging.

[0366] In step 402, the server sends the debugging prompt message to the second terminal through a third communication channel, where the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message.

[0367] In step 403, the server receives a debugging request from the second terminal through a fourth communication channel, wherein the debugging request is used to instruct debugging of the first page. The fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function.

[0368] In step 404, the server sends a debugging request of the second terminal to the first terminal.

[0369] In step 405, the server receives the debugging result of the first page from the first terminal.

[0370] In step 406, the server sends the debugging result of the first page to the second terminal through the fourth communication channel.

[0371] In the method provided in the embodiment of the present disclosure, the server forwards data between the first terminal and the second terminal so that the second terminal requests the first terminal to debug the page in the application, thereby realizing remote debugging between the first terminal and the second terminal without the aid of a USB cable.

[0372] In a possible implementation manner, the server includes a channel management module, an information flow module, and a first controller, and the first controller corresponds to a communication channel between the server and the first terminal;

[0373] The receiving, through the fourth communication channel, a debugging request of the second terminal; and sending the debugging request of the second terminal to the first terminal include:

[0374] The channel management module receives the debugging request of the second terminal through the fourth communication channel, and sends the debugging request to the information flow module;

[0375] The information flow module sends the debugging request to the first controller according to the debugging request, and the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

[0376] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0377] The step of receiving a debugging prompt message from the first terminal and sending the debugging prompt message to the second terminal through the third communication channel comprises:

[0378] The channel management module receives a debugging prompt message from the first terminal, and sends the debugging prompt message to the information flow module;

[0379] The information flow module sends the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels according to the debugging prompt message, and the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

[0380] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0381] The receiving the debugging result of the first page from the first terminal; and sending the debugging result of the first page to the second terminal through the fourth communication channel includes:

[0382] The channel management module receives the debugging result of the first page from the first terminal, and sends the debugging result to the information flow module;

[0383] The information flow module sends the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels according to the debugging result, and the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

[0384] In a possible implementation, the method further includes:

[0385] receiving, via a fifth communication channel, a container status acquisition request from the second terminal, the container status acquisition request being used to instruct acquisition of status data of the webpage view of the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing a webpage view status;

[0386] Sending the container status acquisition request to the first terminal;

[0387] receiving state data of the webpage view from the first terminal;

[0388] The state data of the webpage view is sent to the second terminal through a fifth communication channel.

[0389] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0390] The receiving the state data of the webpage view from the first terminal; and sending the state data of the webpage view to the second terminal through the fifth communication channel comprises:

[0391] The channel management module receives the status data from the first terminal and sends the status data to the information flow module;

[0392] The information flow module sends the status data to the second controller corresponding to the fifth communication channel among the multiple communication channels according to the status data, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0393] In a possible implementation, the method further includes:

[0394] receiving, via a fifth communication channel, a container performance acquisition request from the second terminal, the container performance acquisition request being used to instruct acquisition of performance data of the webpage view of the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of webpage view performance;

[0395] Sending the container performance acquisition request to the first terminal;

[0396] receiving performance data of the webpage view from the first terminal;

[0397] The performance data of the webpage view is sent to the second terminal through the fifth communication channel.

[0398] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0399] The receiving the performance data of the webpage view from the first terminal; and sending the performance data of the webpage view to the second terminal through the fifth communication channel comprises:

[0400] The channel management module receives the performance data from the first terminal and sends the performance data to the information flow module;

[0401] The information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels based on the performance data, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0402] In a possible implementation, the method further includes:

[0403] receiving, via a fifth communication channel, an application performance acquisition request of the second terminal, the application performance acquisition request being used to instruct acquisition of performance data of the target application, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing performance of the target application;

[0404] Sending the application performance acquisition request to the first terminal;

[0405] receiving performance data of the target application from the first terminal;

[0406] The performance data of the target application is sent to the second terminal through the fifth communication channel.

[0407] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0408] The receiving the performance data of the target application from the first terminal; and sending the performance data of the target application to the second terminal through the fifth communication channel comprises:

[0409] The channel management module receives the performance data from the first terminal and sends the performance data to the information flow module;

[0410] The information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels based on the performance data, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0411] All the above optional technical solutions can be arbitrarily combined to form optional embodiments of the present disclosure, and will not be described in detail here.

[0412] To further explain the process of the second terminal requesting the first terminal debugging page, see Figure 5 , Figure 5 is a flowchart of a page debugging method according to an exemplary embodiment, the method is applied to a second terminal, and the method includes:

[0413] In step 501, the second terminal receives a debugging prompt message of the first terminal sent by the server through a third communication channel, wherein the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging, and the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message;

[0414] In step 502, in response to the debugging operation on the first page, the second terminal sends a debugging request to the server through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, and the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function;

[0415] In step 503, the second terminal receives the debugging result of the first page sent by the server through the fourth communication channel.

[0416] In the method provided in the embodiment of the present disclosure, the second terminal receives the debugging prompt message of the second terminal through the server to learn the page that supports debugging in the target application in the first terminal, and initiates a debugging request for the page to the first terminal through the server. Thereafter, the debugging result of the page is received through the server. Therefore, during the debugging process of the web page, the first terminal and the second terminal can achieve remote debugging without the aid of a USB cable.

[0417] In a possible implementation, in response to the debugging operation on the first page, sending a debugging request to the server through the fourth communication channel includes:

[0418] In the main panel, displaying debugging options and address information of the first page carried in the debugging prompt message;

[0419] In response to a selection operation on the debugging option in the main panel, displaying the debugging panel, the debugging panel including debugging function options, the debugging function options being used to provide a function of generating the debugging request;

[0420] In response to the selection operation of the debugging function option, the debugging request is sent to the server through a fourth communication channel.

[0421] In a possible implementation, the property panel is used to provide a function of a web page view state, the main panel further includes a property acquisition option, and the property acquisition option corresponds to the address information, and the method further includes:

[0422] In response to a selection operation on the property acquisition option, displaying a property panel of the first page, the property panel including a container status acquisition option;

[0423] In response to a selection operation on the container status acquisition option, sending a container status acquisition request to the server through a fifth communication channel, wherein the container status acquisition request is used to instruct acquisition of status data of the webpage view of the first page;

[0424] The state data of the webpage view sent by the server is received through the fifth communication channel.

[0425] In a possible implementation manner, after receiving the state data of the webpage view sent by the server through the fifth communication channel, the method further includes:

[0426] In the property panel, the status data of the web page view is displayed.

[0427] In a possible implementation, the property panel is further used to provide a function of web page view performance, and the property panel further includes a container performance acquisition option; the method further includes:

[0428] In response to a selection operation on the container performance acquisition option, sending a container performance acquisition request to the server through the fifth communication channel, wherein the container performance acquisition request is used to instruct acquisition of performance data of the webpage view of the first page;

[0429] The performance data of the webpage view sent by the server is received through the fifth communication channel.

[0430] In a possible implementation manner, after receiving, through the fifth communication channel, the performance data of the webpage view sent by the server, the method further includes:

[0431] In the property panel, performance data of the web page view is displayed.

[0432] In a possible implementation manner, the property panel is further used to provide a function of the performance of the target application, and the property panel further includes an application performance acquisition option; the method further includes:

[0433] In response to a selection operation on the application performance acquisition option, sending an application performance acquisition request to the server through the fifth communication channel, wherein the application performance acquisition request is used to instruct to acquire performance data of the target application;

[0434] The performance data of the target application sent by the server is received through the fifth communication channel.

[0435] In a possible implementation manner, after receiving, through the fifth communication channel, the performance data of the target application sent by the server, the method further includes:

[0436] In the property panel, performance data of the target application is displayed.

[0437] In a possible implementation, the property panel further includes a real time panel, and the real time panel is used to display the real time corresponding to the property data of the page. The method further includes:

[0438] In the real time panel, the real time corresponding to the attribute data of the first page is displayed.

[0439] In a possible implementation, the property panel further includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, the offline package panel includes a run option, the run option is used to provide a function of running the offline page code; the method further includes:

[0440] In response to a selection operation on the run option in the offline package panel, the offline page code of the first page is run.

[0441] In a possible implementation manner, after receiving the debugging result of the first page sent by the server through the fourth communication channel, the method further includes:

[0442] In the debugging panel, the debugging result of the first page is displayed.

[0443] All the above optional technical solutions can be arbitrarily combined to form optional embodiments of the present disclosure, and will not be described in detail here.

[0444] To further illustrate the interaction process between the first terminal, the server and the second terminal during the debugging of the page, see Figure 6 , Figure 6 The present invention is an interactive flow chart of a page debugging process according to an exemplary embodiment.

[0445] In step 601, the first terminal sends a debugging enable request to the server, where the debugging enable request is used to instruct to enable the debugging permission of the second terminal.

[0446] The debugging permission refers to the permission to debug the page in the application in the first terminal. The debugging start request carries the device identification of the first terminal and the device identification of the second terminal, wherein the debugging terminal is the second terminal and the debugged terminal is the first terminal. The device identification of the first terminal is used to uniquely indicate the first terminal, and the device identification of the second terminal is used to uniquely indicate the second terminal.

[0447] The first terminal scans the QR code of the second terminal, obtains the device identification of the second terminal from the QR code, generates the debugging start request based on the device identification of the second terminal and the device identification of the first terminal, and then sends the generated debugging start request to the server.

[0448] In step 602, the server receives the debugging enablement request, and enables debugging authority for the second terminal based on the debugging enablement request.

[0449] After receiving the debugging start request, the server obtains the device identification of the first terminal and the device identification of the second terminal from the debugging start request, and establishes a debugging correspondence between the device identification of the first terminal and the device identification of the second terminal with the first terminal as the debugged terminal and the second terminal as the debugging terminal, thereby enabling debugging permission for the second terminal.

[0450] It should be noted that, in the process of debugging the page of the application in the first terminal, steps 601-602 need only be performed once and do not need to be repeated.

[0451] In step 603, in response to the debugging prompt operation on the first page in the target application, the first terminal sends a debugging prompt message to the server, where the debugging prompt message is used to prompt that the first page in the target application supports debugging.

[0452] The target application is any application program designated for debugging by a user in the first terminal. The first page is any page in the target application that supports debugging. The first page includes a fifth-generation Hypertext Markup Language (HyperTextMarkup Language 5, H5) page or a hypertext markup language page after the fifth generation.

[0453] The debugging prompt message carries the address information of the first page. Optionally, the address information of the first page is a Uniform Resource Locator (URL) of the first page.

[0454] The debugging prompt operation is used to trigger the first terminal to send the debugging prompt message to the server. The debugging operation is such as clicking on the first page or sliding on the first page. Here, the embodiment of the present disclosure does not limit the debugging prompt operation.

[0455] In a possible implementation, this step 603 includes the following steps 6301-6304.

[0456] In step 6031, the first terminal obtains a web page view for mounting the first page in response to a debugging prompt operation on the first page in the target application.

[0457] In order to facilitate the description of the web page view used to mount the first page, it is called the web page view of the first page.

[0458] The debugging prompt operation is also used to trigger the opening of the first page. The user performs a debugging prompt operation on the first page in the target application, and the first terminal responds to the debugging prompt operation on the first page in the target application to obtain a web page view of the first page, and then the first terminal can open the first page through the web page view.

[0459] The first terminal acquires the webpage view of the first page in any one of the following methods 1 and 2.

[0460] Mode 1: The first terminal creates a web page view for each of the multiple pages in the target application in advance, and mounts each web page in the corresponding web page view. In response to a debugging prompt operation on a first page among the multiple pages, the first terminal obtains the web page view created for the first page.

[0461] The plurality of pages are pages in the target application that support debugging, and the first page is any page in the plurality of pages. The plurality of pages are all H5 pages or hypertext markup language pages after H5.

[0462] Mode 2: The first terminal does not create a web page view for each of the multiple pages in the target application in advance. In response to the debugging prompt operation for the first page among the multiple pages, the first terminal creates a web page view for the first page and adds the identifier of the web page view to the address information of the first page to indicate that the first page has been mounted in the web page view.

[0463] In step 6032, the first terminal obtains address information of the first page in response to a debugging prompt operation on the first page in the target application.

[0464] In a possible implementation, this step 6032 is performed by the operating system of the first terminal. In response to the debugging prompt operation on the first page in the target application, the operating system sends an address acquisition request to the web view kernel, wherein the address acquisition request is used to indicate the acquisition of address information of the page in the target application that supports debugging and has been mounted in the web view. After the web view kernel receives the address acquisition request, it queries the page in the target application that supports debugging and has been mounted in the web view, and sends the address information of the queried page to the operating system. Accordingly, the operating system receives the address information of at least one second page from the web view kernel, and the at least one second page is a page in the target application that supports debugging and has been mounted in the web view. Among them, the address information of each second page carries the identifier of the web view of the second page. Since the first page supports debugging and has also been mounted in the web view, the at least one second page includes the first page.

[0465] In one possible implementation, the debugging application returns the address information of the queried page to the operating system in the form of a list. For example, the debugging application sends a debuggable list of the target application to the operating system, wherein the debuggable list includes the address information of at least one second page of the target application.

[0466] Each page in the at least one second page except the first page has been opened by a corresponding web page view, so each page in the at least one second page except the first page has a web page view. Before the debugging application returns the debuggable list to the operation, the web page view of the first page has been created, so each second page indicated by the debuggable list has a web page view. The creation process of the web page view of each second page can refer to the creation process of the web page view of the first page, and will not be repeated here.

[0467] In one possible implementation, the operating system sends an address acquisition request to the debugging front end of the debugging application in response to a debugging prompt operation on the first page within the target application, and the debugging front end obtains the address information of at least one second page of the target application and returns the address information of the at least one second page to the operating system.

[0468] The address information of the first page carries the identifier of the web page view of the first page. After obtaining the address information of at least one second page of the target application, the operating system queries the address information of the first page from the address information of at least one second page based on the identifier of the web page view of the first page.

[0469] In step 6033, the first terminal creates a first communication channel corresponding to the web page view based on the address information of the first page.

[0470] The first communication channel is a communication channel between the operating system of the first terminal and the web page view kernel. The first communication channel is used to transmit messages related to the web page view during the debugging process.

[0471] In a possible implementation, this step 6033 is performed by the operating system of the first terminal. After the operating system obtains the address information of the first page from the adjustable list, a first communication channel is created between the operating system and the web page view kernel, and a corresponding relationship between the address information of the first page and the created first communication channel is established. Accordingly, the web page view corresponds to the created first communication channel through the address information of the first page, so as to indicate that the created first communication channel is a communication channel created for the web page view.

[0472] The operating system obtains the target identifier and the identifier of the web page view from the address information of the first page, wherein the target identifier is used to indicate the first page. The operating system establishes a correspondence between the identifier of the web page view and the target identifier, and establishes a correspondence between the identifier of the web page view and the first communication channel, so that the first communication channel corresponds to the web page view. The correspondence between the target identifier, the identifier of the web page view, and the first communication channel is the correspondence between the address information of the first page and the created first communication channel.

[0473] When the first communication channel is a local socket, the transmission protocol of the first communication channel is Hypertext Transfer Protocol (HTTP). The first terminal also updates the communication protocol of the first communication channel from HTTP protocol to WebSocket protocol to achieve the upgrade of the communication protocol.

[0474] It should be noted that the process shown in steps 6032-6033 is also the process of creating the first communication channel corresponding to the web page view. This process is an optional process. After creating web page views for each second page in the target application, the first terminal can create a first communication channel for each web page view of the second page to achieve message isolation. Of course, the first terminal may not create a first communication channel for each web page view of the second page in the target application, but establish a first communication channel, and at least one second page shares the first communication channel.

[0475] In step 6034, the first terminal generates the debugging prompt message based on the address information of the first page, and sends the debugging prompt message to the server.

[0476] For example, if the adjustable list includes the address information of the first page, the first terminal generates a debugging prompt message carrying the adjustable list based on the adjustable list, and then sends the debugging prompt message to the server. In this case, the debugging prompt message carries the adjustable list.

[0477] In a possible implementation, there is a sixth communication channel between the operating system of the first terminal and the server, and the first terminal sends a debugging prompt message to the sixth communication channel, so that the debugging prompt message is transmitted to the server.

[0478] If the message format of the message transmitted in the sixth communication channel is the target message format of the first terminal, before sending the debugging prompt message, the first terminal first uses the target message format to encapsulate the debugging prompt message, and then sends the encapsulated debugging prompt message to the sixth communication channel.

[0479] The sixth communication channel is a socket. The target message format includes a pseudo Cisco Discovery Protocol (CDP) data format or other types of data formats.

[0480] In step 604, the server receives a debugging prompt message from the first terminal.

[0481] In step 605, the server sends the debugging prompt message to the second terminal through a third communication channel, where the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message.

[0482] The third communication channel is a communication channel between the server and the second terminal, and corresponds to a main panel of the debugging application in the second terminal. Optionally, the third communication channel is a socket. The main panel is a human-computer interaction interface of the debugging application, for example, for displaying the address information carried by the debugging prompt message.

[0483] When the server receives the debugging prompt message from the first terminal, based on the stored correspondence between the device identification of the first terminal and the device identification of the second terminal, the server determines that the second device is a debugging terminal, and establishes the third communication channel between the server and the second terminal. When the establishment is completed, the server sends the debugging prompt message to the third communication channel to prompt the second terminal of the debuggable page in the target application in the first terminal.

[0484] In step 606, the second terminal receives the debugging prompt message of the first terminal sent by the server through the third communication channel.

[0485] For example, the second terminal receives the debugging prompt message from the third communication channel.

[0486] In step 607, the second terminal sends a debugging request to the server through a fourth communication channel in response to the debugging operation on the first page. The debugging request is used to instruct debugging of the first page. The fourth communication channel corresponds to the debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function.

[0487] The fourth communication channel is a communication channel between the server and the second terminal, and corresponds to a debugging panel of a debugging application in the second terminal. The debugging panel is used to provide a function of triggering the second terminal to request the first terminal to debug a page and a function of displaying the debugging result.

[0488] In a possible implementation, this step 607 includes the following steps 6071-6073.

[0489] In step 6071, the second terminal displays the debugging options and the address information of the first page carried in the debugging prompt message in the main panel.

[0490] The debugging option is used to trigger the debugging panel for displaying the debugging application. Since the third communication channel corresponds to the main panel, when the debugging prompt message is received from the third communication channel, the second terminal displays the main panel and displays the debuggable list carried by the debugging prompt message on the main panel.

[0491] If the debuggable list carried in the debugging prompt message includes the address information of the first page, the second terminal displays the main panel, and displays a debugging option and the address information of the first page in the main panel, and the debugging option corresponds to the address information of the first page.

[0492] If the debuggable list carried in the debug prompt message includes address information of at least one second page, the second terminal displays the main panel, in which multiple debugging options and the debuggable list are displayed, and each debugging option corresponds to address information of a second page in the debuggable list.

[0493] In step 6072, in response to the selection operation on the debugging option in the main panel, the second terminal displays a debugging panel, where the debugging panel includes a debugging function option, where the debugging function option is used to provide a function of generating a debugging request.

[0494] The debugging application is used to provide at least one debugging function for the page, and the debugging panel includes at least one debugging function option, each debugging function option corresponds to a debugging function, and each debugging function option is used to provide a debugging request for implementing the corresponding debugging function. For example, the multiple debugging functions provided by the debugging application are respectively a UI debugging function, a network debugging function, and a page script debugging function. Taking the UI debugging function as an example, the debugging function option corresponding to the UI debugging function triggers the generated debugging request to instruct UI debugging of the page.

[0495] When the debuggable list displayed in the main panel includes the address information of at least one second page, the user selects any page in the at least one second page for debugging. For example, the page selected for debugging by the user in the main panel may be the first page that triggers the debugging prompt message, or may be the second page in the debuggable list other than the first page. For ease of description, the embodiment of the present disclosure takes the user selecting the first page for debugging in the main panel as an example for the following description:

[0496] The user selects the debugging option corresponding to the address information of the first page in the main panel, and the second terminal displays the debugging panel of the first page in response to the selection operation of the debugging option in the main panel.

[0497] In step 6073, in response to the selection operation of the debugging function option, the second terminal sends the debugging request to the server through the fourth communication channel.

[0498] The selection operation on the debugging option in the main panel and the selection operation on the debugging function option are the debugging operations on the first page.

[0499] The user selects any debugging function option in the debugging panel of the first page, and the second terminal generates a debugging request for the corresponding debugging function in response to the selection operation of the debugging function option. Afterwards, the second terminal establishes a fourth communication channel corresponding to the debugging panel, wherein the fourth communication channel is a communication channel between the second terminal and the server and corresponds to the debugging panel of the first page.

[0500] The second terminal also establishes a correspondence between the fourth communication channel and the web page view of the first page to indicate that the fourth communication channel is a communication channel between the debugging panel of the first page and the server. For example, the second terminal adds an identifier of the web page view of the first page to the fourth communication channel to indicate that the fourth communication channel corresponds to the web page view.

[0501] When the fourth communication channel is established, the second terminal sends the debugging request to the fourth communication channel, so that the debugging request is transmitted to the server.

[0502] If the message format of the message transmitted in the fourth communication channel is the target message format, before sending the status data of the web page view, the second terminal first uses the target message format to encapsulate the debugging request, and then sends the encapsulated debugging request to the fourth communication channel.

[0503] In step 608, the server receives the debugging request of the second terminal through the fourth communication channel.

[0504] For example, the server receives the debugging request from the fourth communication channel. Since the fourth communication channel carries the identifier of the web page view of the first web page, the server can also add the identifier of the web page view of the first web page to the debugging request, and then send the debugging request carrying the identifier of the web page view to the first terminal.

[0505] In step 609, the server sends a debugging request of the second terminal to the first terminal.

[0506] After receiving the debugging request, the server determines that the first terminal is the debugged terminal based on the correspondence between the device identification of the second terminal and the device identification of the first terminal, and then sends the debugging request to the fifth communication channel between the server and the first terminal to send the debugging request to the first terminal.

[0507] In step 610, the first terminal receives a debugging request of the second terminal from the server.

[0508] For example, the first terminal receives the debugger request through the fifth communication channel between the first terminal and the server.

[0509] In step 611, the first terminal obtains the debugging result of the first page based on the debugging request.

[0510] In a possible implementation, step 611 is implemented by the operating system of the first terminal and the web page view kernel in the first terminal, such as the following steps 6111-6114.

[0511] In step 6111, the operating system sends a debugging request to the web view kernel through the first communication channel corresponding to the web view of the first page.

[0512] After receiving the debugging request, the operating system obtains the identifier of the web page view of the first page from the debugging request, determines the target identifier of the first page corresponding to the identifier of the web page view of the first page based on the correspondence between the web page view and the target identifier, and determines the first communication channel corresponding to the target identifier of the first page based on the correspondence between the target identifier and the first communication channel. Afterwards, the operating system sends the debugging request to the determined first communication channel to send the debugging request to the web page view kernel.

[0513] In a possible implementation, if the communication protocol of the first communication channel is the WebSocket protocol, the operating system sends the debugging request to the first communication channel through the WebSocket protocol. For example, before sending the debugging request, the operating system converts the message format of the debugging request from the target message format to the message format of the WebSocket protocol, and sends the converted debugging request to the determined first communication channel.

[0514] In step 6112, the web page view kernel receives the debugging request from the first communication channel, debugs the first page based on the debugging request, and obtains a debugging result of the first page.

[0515] For example, after receiving the debugging request, the web page view kernel sends the debugging request to the debugging front end, and the debugging front end accesses the web page view of the first page based on the debugging request, debugs the first page in the web page view, and obtains the debugging result of the first page.

[0516] In step 6113, the web page view kernel sends the debugging result of the first page to the operating system through the first communication channel corresponding to the web page view of the first page.

[0517] For example, the debugging front end in the web page view kernel sends the debugging result of the first page to the first communication channel, so that the debugging result of the first page is transmitted to the operating system.

[0518] In step 6114, the operating system receives the debugging result of the first page from the first communication channel.

[0519] In step 612, the first terminal sends the debugging result of the first page to the server.

[0520] Optionally, the first terminal sends the debugging result of the first page to the sixth communication channel, so that the debugging result of the first page is transmitted to the server.

[0521] If the message format of the message transmitted in the sixth communication channel is the target message format, then before sending the debugging result of the first page, the first terminal first uses the target message format to encapsulate the message format of the debugging result of the first page, and then sends the encapsulated debugging result of the first page to the sixth communication channel.

[0522] In step 613, the server receives the debugging result of the first page from the first terminal.

[0523] For example, the server receives the debugging result of the first page from the sixth communication channel of the first terminal.

[0524] In step 614, the server sends the debugging result of the first page to the second terminal through the fourth communication channel.

[0525] For example, the server sends the debugging result of the first page to the fourth communication channel, so that the debugging result of the first page is transmitted to the second terminal.

[0526] In step 615, the second terminal receives the debugging result of the first page sent by the server through the fourth communication channel.

[0527] For example, the second terminal receives the debugging result of the first page from the fourth communication channel, and displays the debugging result of the first page in the debugging panel corresponding to the fourth transmission channel for the user to view.

[0528] In the method provided in the embodiment of the present disclosure, the first terminal sends a debugging prompt message to the second terminal through the server to prompt the second terminal of the page that supports debugging in the target application in the first terminal, and receives the debugging request of the second terminal for the page through the server, and then the first terminal obtains the debugging result of the page based on the debugging request, and returns the debugging result of the page to the second terminal through the server. Therefore, in the debugging process of the web page, the first terminal and the second terminal do not need to use a USB connection cable, and the server transmits data between the first terminal and the second terminal to achieve remote debugging. In addition, the web page view of each page corresponds to a first communication channel respectively, and the operating system of the first terminal transmits the debugging request and debugging result of the corresponding web page through the first communication channel of each page and the web page view to achieve data isolation. The main panel and the debugging panel of the debugging front end correspond to different communication channels respectively, and different types of data are transmitted through different communication channels to achieve data isolation.

[0529] In another possible implementation, the first terminal can also inject a target script into the page code of the page to assist in debugging the application and complete the debugging of the page. Figure 7 Another interactive flow chart of a page debugging process is shown according to an exemplary embodiment.

[0530] In step 701, in response to a debugging prompt operation on a first page in a target application, a first terminal injects a target script into a page code of the first page.

[0531] Among them, the target script is also called a backend script, such as BackEnd.JS. The target script is used to provide a debugging function for the page. The target script hijacks the global method of the first page by means of a Hook to obtain the user's operation on the page, generate a message corresponding to the user's operation, and feed it back to the debugging front end of the debugging tool, and the debugging front end performs the corresponding UI presentation. For example, the user performs an operation to obtain a log on the page. After the target script obtains this operation, it hijacks the log of the first page and returns the hijacked log information to the debugging front end, and the debugging front end displays the hijacked log information. It should be noted that the debugging function of the target script handover page can be customized according to the user's needs. Therefore, based on the different operations of the user on the page, the target script is customized. Here, the embodiment of the present disclosure does not limit the user's operation and the target script.

[0532] The target script can be compatible with different types of operating systems, and can also expand the debugging function of the debugging tool. In a possible implementation, the target script includes a common hijacking module (Common Hook) and at least one of at least one specific hijacking module, wherein the common hijacking module includes a common hijacking method, and the common hijacking method is used to provide the function of page debugging, and the page provides the function of debugging and is applicable to multiple operating systems. Each specific hijacking module includes a specific hijacking method. Each specific hijacking method is used to provide the function of page debugging for an operating system.

[0533] The public hijacking method or the specific hijacking method includes at least one hijacking method. Different hijacking methods are used to hijack different methods of the first page. Each hijacking method can be customized according to user needs.

[0534] For example, Figure 8 According to an exemplary embodiment, an architecture diagram of a page debugging system is shown as follows: Figure 8 As shown, the target script (BackEnd) includes at least one of an iOS hijacking module (iOS Hook), an Android hijacking module (Android Hook) and a public hijacking module. Among them, the iOS hijacking module and the Android hijacking module are specific hijacking modules, and the specific hijacking method included in the iOS hijacking module is used to provide a page debugging function for the iOS operating system. The Android hijacking module includes a specific hijacking method for providing a page debugging function for the Android operating system. The shared hijacking methods included in the public hijacking module are all suitable for the iOS operating system and the Android operating system.

[0535] In one possible implementation, step 701 is performed by the operating system in the first terminal. In response to the debugging prompt operation on the first page in the target application, the operating system mounts the first page in the page view and injects the target script into the page code of the first page. After the page code runs, the target script runs accordingly, and the target script globally hijacks the page code of the first page.

[0536] In a possible implementation, this step 701 includes the following steps 7011-7012.

[0537] In step 7011, the first terminal obtains a web page view for mounting the first page in response to a debugging prompt operation on the first page in the target application.

[0538] Among them, this step 7011 is the same as step 6031, and here, the embodiment of the present disclosure will not repeat this step 7011.

[0539] In step 7012, the first terminal injects the target script into the page code of the first page in the web page view in response to the debugging prompt operation on the first page in the target application.

[0540] In a possible implementation, steps 7011-7012 are performed by an operating system in the first terminal.

[0541] In step 702, in response to a debugging prompt operation on a first page in a target application, the first terminal sends a debugging prompt message to a server, where the debugging prompt message is used to prompt that the first page in the target application supports debugging.

[0542] In a possible implementation, this step 702 is performed by the target script. For example, after the page code of the first page is injected into the target script, the target script sends an address acquisition request to the page view kernel to obtain the debuggable list of the target application from the page view. The target script generates a debugging prompt message based on the debuggable list and sends the generated debugging prompt message to the server.

[0543] In a possible implementation, the target script obtains the address information of the first page from the debuggable list according to the identifier of the web page view of the first page. The target script creates a second communication channel between the target script and the server, and establishes a correspondence between the web page view and the second communication channel to indicate that the second communication channel is the communication channel of the web page view between the target script and the server. Among them, the second communication channel is a socket, and the process of establishing the correspondence between the web page view and the second communication channel is the same as the process of establishing the correspondence between the first communication channel and the web page view in step 6033, and the embodiments of the present disclosure will not be repeated here.

[0544] When the second communication channel corresponding to the web page view is established, the target script sends the encapsulated debugging prompt message to the second communication channel, so that the debugging prompt message is transmitted to the server. If the message format of the message transmitted in the second communication channel is the target message format, before sending the debugging prompt message, the target script first uses the target message format to encapsulate the debugging prompt message, and then sends the encapsulated debugging prompt message to the second communication channel.

[0545] It should be noted that, for each second page indicated by the debuggable list, the target code may be injected into the page code of each second page, or the target code may not be injected. For each second page injected with the target code, a second communication channel is established between the respective target code and the server to achieve message isolation.

[0546] In step 703, the server receives a debugging prompt message from the first terminal, and sends the debugging prompt message to the second terminal through a third communication channel, where the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to display the debugging prompt message.

[0547] For example, the server receives the debugging prompt message from the second communication channel corresponding to the webpage view of the first page. After receiving the debugging prompt message, the server sends the debugging prompt message to the third communication channel, so that the debugging prompt message is transmitted to the second terminal.

[0548] In step 704, the second terminal receives the debugging prompt message of the first terminal sent by the server through the third communication channel.

[0549] In step 705, the second terminal responds to the debugging operation on the first page by sending a debugging request to the server through the fourth communication channel, where the debugging request is used to instruct debugging of the first page. The fourth communication channel corresponds to the debugging panel of the second terminal, which is used to trigger page debugging and display the debugging results of the page.

[0550] This step 705 is similar to step 607, and the embodiment of the present disclosure will not elaborate on this step 705.

[0551] In step 706, the server receives the debugging request of the second terminal through the fourth communication channel.

[0552] In step 707, the server sends a debugging request of the second terminal to the first terminal.

[0553] For example, the server sends a debugging request to the second communication channel corresponding to the webpage view of the first page, so that the debugging request is transmitted to the first terminal.

[0554] In step 708, the first terminal receives the debugging request of the second terminal from the server, and obtains the debugging result of the first page based on the debugging request and the target script.

[0555] Among them, this step 708 is executed by the target script in the page code of the first page, and the target script receives the debugging request from the second communication channel corresponding to the web page view of the first page, and the target script obtains the debugging result of the first page based on the debugging request and the target script. For example, the process shown in the following steps 7081-7083.

[0556] In step 7081, the information module in the target script receives a debugging request from the second terminal from the server through the second communication channel.

[0557] Among them, the message module (Messenger) is a module in the target script used to transmit data and interact with the server, such as Figure 8 shown.

[0558] In step 7082, the information module sends the debugging request to the target hijacking module.

[0559] Among them, the target hijacking module is a hijacking module in the target script for providing a page hijacking method for the operating system of the first terminal. The target hijacking module is any hijacking module in at least one specific hijacking module in the target script. For example, if the operating system of the first terminal is an Android operating system, the target hijacking module is an Android hijacking module, if the operating system of the first terminal is an iOS operating system, the target hijacking module is an Android hijacking module, or, if the operating system of the first terminal is an Android operating system or an iOS operating system, the target hijacking module is a public hijacking module.

[0560] by Figure 8 In the target script example shown, the target script also includes at least one agent module (Agent), each agent module corresponds to a hijacking module in a target script, and is used to send and receive messages corresponding to the hijacking module.

[0561] Correspondingly, the information module sends a debugging request to a target proxy module in the at least one proxy module, the target proxy module receives the debugging request, and sends the received debugging request to the target hijacking template, so that the information module sends the debugging request to the target hijacking module. Wherein, the target proxy module is a proxy module in the at least one proxy module corresponding to the target hijacking module.

[0562] In step 7083, the target hijacking module receives the debugging request, and obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

[0563] Among them, the target hijacking method is the hijacking method provided by the target hijacking module.

[0564] The target hijacking module receives the debugging request from the target proxy module. After receiving the debugging request, the target hijacking module adopts a target hijacking method to hijack the parameters of the page code of the first page during operation, and uses the hijacking result as the debugging result of the first page.

[0565] by Figure 8 In the target script example shown, the receiving submodule (Listener) in the information module receives the debugging request from the second communication channel with the server. If the hijacking method corresponding to the debugging request is located in the iOS hijacking module, the receiving submodule sends the debugging request to the iOS proxy module, and the iOS proxy module sends the debugging request to the iOS hijacking module. The iOS hijacking module uses the hijacking method in iOS based on the debugging request to hijack the parameters of the page code of the first page during operation, and uses the hijacking result as the debugging result of the first page. If the hijacking method corresponding to the debugging request is located in the Android hijacking module or the public hijacking module, the receiving submodule sends the debugging request to the corresponding proxy module, which is sent to the corresponding hijacking module by the corresponding proxy module, and then the hijacking module obtains the debugging result of the first page based on the hijacking request.

[0566] In step 709, the first terminal sends the debugging result of the first page to the second terminal through the server.

[0567] The first terminal sends the debugging result of the first page to the second communication channel corresponding to the webpage view of the first page, so that the debugging result of the first page is transmitted to the second terminal.

[0568] In a possible implementation, step 710 is performed by a target script in the page code of the first page. Figure 8 For example, if the iOS hijacking module obtains the debugging result of the first page, the iOS hijacking module sends the debugging result to the iOS proxy module, and the iOS proxy module sends the debugging result of the first page to the sending submodule (Sender) in the information module, and the sending submodule sends the debugging result of the first page to the second communication channel, so that the debugging result of the first page is transmitted to the server. After the server receives the debugging result of the first page, it sends the debugging result of the first page to the second terminal through the fourth communication channel.

[0569] In step 710, the second terminal receives the debugging result of the first page sent by the server.

[0570] For example, the second terminal receives the debugging result of the first page in the fourth communication channel, and displays the debugging result of the first page in the debugging panel corresponding to the fourth communication channel for the user to view.

[0571] In the method provided by the embodiment of the present disclosure, the first terminal sends a debugging prompt message to the second terminal through the server to prompt the second terminal of the page that supports debugging in the target application in the first terminal, and receives the debugging request of the second terminal for the page through the server, and then the first terminal obtains the debugging result of the page based on the debugging request, and returns the debugging result of the page to the second terminal through the server. Therefore, in the debugging process of the web page, the first terminal and the second terminal do not need to use a USB connection cable, and the server transmits data between the first terminal and the second terminal to achieve remote debugging. In addition, the first terminal debugs the first page by injecting a target script into the page code of the first page. The target script can be applicable to different operating systems, and can expand the debugging function of the debugging tool, assisting the debugging tool to debug the page, so as to achieve customized debugging of the page.

[0572] In a possible implementation, the debugging application also has an attribute acquisition function. The attribute acquisition function refers to a function of acquiring attribute data of a page. The attribute data of the page includes container state data of the page, container performance data, and performance data of the application to which the page belongs. The container state data includes state data of the web page view of the debugged page, and the container performance data includes performance data of the web page view of the debugged page.

[0573] Correspondingly, the debugging application includes a debugger (Inspector) and a property acquirer, wherein the debugger has a page debugging function, and the property acquirer has a property acquisition function. In the main interface of the debugging front end, the debugger corresponds to a debugging panel, and the property acquirer corresponds to a property panel, and the property panel is used to provide a function of triggering the second terminal to obtain the property data of the page from the first terminal and a function of displaying the property data of the page.

[0574] Still Figure 8 For example, Figure 8 As shown, the front-end module includes a debugging panel, a property panel and a main panel, wherein the debugging panel, the property panel and the main panel all include an information module, and the information module in each panel is used to transmit messages between the corresponding panel and the server.

[0575] The debugging panel is used to trigger page debugging and display the debugging results of the page. The debugging panel also includes multiple debugging function panels, each of which is used to trigger the first terminal to debug a debugging function on the page and display the corresponding debugging results. For example, the debugging function panel includes an element panel (Element Panel), a network panel (Network Panel) and other debugging function panels, wherein the debugging request generated by the element panel is used to trigger the first terminal to debug the page layout of the page, and the element panel can also display the debugging results of the page layout by the first terminal. The debugging request generated by the network panel is used to trigger the first terminal to debug the network occupied by the page, and the network panel can also display the debugging results of the network by the first terminal. Other debugging function panels can be customized according to user needs.

[0576] The attribute panel is used to trigger the acquisition of page attribute data and display the attribute data of the page. The attribute panel also includes multiple attribute function panels, and the information module is used to receive messages from each attribute function panel and send messages to each debugging panel. Each attribute function panel is used to trigger the acquisition of a kind of attribute data of the page from the first terminal and display the acquired attribute data. For example, the attribute function panel includes a real time panel (Real Time panel), an offline package panel (Offline Package Panel) and other attribute panels, wherein the real time panel is used to display the real time corresponding to the attribute data, and the offline package panel is used to provide the offline page code of the page, so that the second terminal can directly run the offline page code to display the page. Other attribute function panels can be customized according to user needs.

[0577] The main panel is used to display the debugging prompt message of the first terminal. The main panel includes a connection module (ConnectModule) and other modules. The information module is used to display the debuggable list of the application and trigger the display of the debugging panel and the property panel. Other modules can be customized according to user needs.

[0578] Accordingly, in addition to creating a communication channel leading to the front-end module for each web page view, the operating system of the first terminal also provides the ability to collect container status data, container performance data or application performance data.

[0579] Based on different panels in the main interface of the debugging front end, the user can choose to debug the page in the application in the first terminal or obtain its attribute data. Fig. 9 According to an exemplary embodiment, a corresponding relationship diagram of page debugging is shown, such as Fig. 9As shown, three pages in a certain application of the first terminal support debugging, and these three pages are mounted in web page views A, B, and C respectively. The user triggers the second terminal to request the first terminal to debug the page in web page view A through the debugging panel corresponding to the page in web page view A, and triggers the second terminal to obtain the attribute data of the page in web page view A from the first terminal through the attribute panel corresponding to the page in web page view A. The user triggers the second terminal to obtain the attribute data of the page in web page view B from the first terminal through the attribute panel corresponding to the page in web page view B, but does not choose to debug the page in web page view B. The user triggers the second terminal to request the first terminal to debug the page in web page view C through the debugging panel corresponding to the page in web page view C, but does not choose to obtain the attribute data of the page mounted in web page view C.

[0580] In a possible implementation, a communication channel is created for the main panel, debug panel and property panel of different pages between the second terminal and the server, so as to transmit data related to the corresponding panel through different communication channels. And a communication channel is established between the server and the first terminal to transmit information related to the page debugged in the first terminal. Accordingly, for any page in the target application in the first terminal, it corresponds to a data transmission channel from the first terminal to the second terminal, and the message format of the data transmission channel can be the target message format, such as the message format of the WebSocket protocol, and the data transmission channel is also called the WebSocket channel. Each endpoint in the data transmission channel includes the operating system of the first terminal, the debug panel, the property panel and the main panel in the debugging front end. Each endpoint in the data transmission channel is also called a client (Client), or a WebSocket client. Different pages (or web page views) correspond to different data transmission channels. In order to distinguish the data transmission channels corresponding to different pages, the server stores the endpoint information of each data transmission channel.

[0581] For example Fig.10According to a communication architecture diagram of a server shown in an exemplary embodiment, during the process of debugging a certain page, as the data transmission channel of the page is established, the server stores the endpoint information of the data transmission channel. The endpoint information of the data transmission channel includes the operating system type, the debugging panel type, the property panel type, and the main panel type. Among them, for any page in the target application in the first terminal (or the web page view corresponding to the page), the operating system type of the page is indicated by the identifier of the operating system in the first terminal, the debugging panel type of the page is indicated by the identifier of the debugging panel, the property panel type of the page is indicated by the identifier of the property panel, and the main panel type of the page is indicated by the identifier of the main panel. Among them, the identifiers of the operating systems of different first terminals are different, and the identifiers of the debugging panels of different pages are different, the identifiers of the property panels are different, and the identifiers of the main panels are different. For example Fig.10 As shown, the endpoint information of the data transmission channel corresponding to a certain page recorded in the server includes operating system A, debugging panel A, property panel A and main panel A.

[0582] like Fig.10 As shown, the channel management module in the server is used to manage each data transmission channel in the page debugging system. Each data transmission channel corresponds to a pair of debugging end and debugged end, and each endpoint in each data transmission channel corresponds to a communication channel connecting an endpoint and a server. For example, operating system A corresponds to communication channel A, debugging panel A corresponds to communication channel B, and property panel A corresponds to communication channel C.

[0583] Each communication channel is used to transmit and receive messages and heartbeat detection, etc. The messages transmitted by each communication channel are the same type of messages during page debugging. For example, the communication channel corresponding to the debug panel is used to transmit messages related to page debugging, while the communication channel corresponding to the property panel is used to transmit messages related to page properties.

[0584] The server is also provided with a controller set (Group Controllers) and an information stream module (MessageStream), and the controller set includes a plurality of controllers, each of which corresponds to each endpoint in the data transmission channel. For example, the script controller corresponds to the target script, and is used to transmit information sent to the target script, that is, the controller of the second communication channel. The main panel controller corresponds to the main panel, and is used to transmit information sent to the main panel, that is, the controller of the third communication channel. The debug controller corresponds to the debug panel, and is used to transmit information sent to the debug panel, that is, the controller of the fourth communication channel. The property controller corresponds to the property panel, and is used to transmit information sent to the property panel, that is, the controller of the fifth communication channel, wherein the fifth communication channel is the communication channel between the second terminal and the server, and corresponds to the property panel of the page. The operating system controller corresponds to the operating system, and is used to transmit information sent to the operating system, that is, the controller of the sixth communication channel. The information stream module is used to receive messages from each communication channel and distribute the messages to the corresponding controllers.

[0585] Among them, the message transmission process in the server is: after each communication channel receives the message, it transmits the message to the channel management module. If the user has a demand, the channel management module customizes the received message according to the user's demand, and then encapsulates the processed message into the target message format and sends it to the message sending module (Message Sender). The message encapsulation submodule (Message Wrapper) in the message sending module encapsulates the received message, such as encapsulating the logo of the web page view. The message encapsulation submodule sends the encapsulated message to the information flow module. For any message received, the information flow module distributes the message to the corresponding controller according to the content of the message body, and the corresponding controller notifies the channel management module to forward the message to the target communication channel.

[0586] For example, communication channel A receives a debugging prompt message sent by the operating system, and the debugging prompt message is transmitted to the information flow module through the channel management module and the sending module. The information flow module sends the debugging prompt message to the controller corresponding to the main panel, and the controller corresponding to the main panel notifies the channel management module of the debugging prompt message. The channel management module uses the communication channel corresponding to the main panel as the target communication channel and sends the debugging prompt message from the target communication channel.

[0587] In addition, if a controller sends the message to other controllers after receiving it, the controller will send the message to the message management module. In addition to forwarding the message to the communication channel corresponding to the controller, the message management module will also treat the message as a new message received by the message management module and redistribute the message until the message is redistributed to other controllers, which will then forward the message.

[0588] The server is also provided with a storage module (Store), which is used for the setting information of the server, the user information of the user, the correspondence between the debugging end and the debugged end, and the setting information of the data transmission channel, etc. The technicians can modify the corresponding data in the storage module in the server.

[0589] based on Fig.10 In the server communication architecture shown, the server receives the debugging request of the second terminal through the fourth communication channel, and sends the debugging request of the second terminal to the first terminal, including the following steps A1-A3.

[0590] In step A1, the channel management module in the server receives the debugging request of the second terminal through the fourth communication channel, and sends the debugging request to the information flow module.

[0591] For example, the channel management module receives the debugging request from the fourth communication channel. If the user has a need, the channel management module customizes the received debugging request according to the user's need. If the user has no need, the debugging request is not customized. Afterwards, the channel management module encapsulates the debugging request into the target message format and sends the encapsulated debugging request to the message sending module. The message sending module performs the final encapsulation processing on the received debugging request and sends the encapsulated debugging request to the information flow module.

[0592] In step A2, the information flow module sends the debugging request to the first controller according to the debugging request.

[0593] The first controller is a controller corresponding to the communication channel between the first terminal in the server and the server.

[0594] After receiving the debugging request, the information flow module determines that the receiving end of the debugging request is the first terminal according to the content of the debugging request, and distributes the debugging request to the first controller.

[0595] In step A3, the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

[0596] The communication channel between the server and the first terminal is also the sixth communication channel.

[0597] When the first controller receives the debugging request, it sends the received debugging request to the channel management module to notify the channel management module to send the debugging request to the corresponding sixth communication channel. When the channel management module receives the debugging request from the first controller, it sends the debugging request to the sixth communication channel corresponding to the first controller according to the corresponding relationship between the communication channel and the controller.

[0598] based on Fig.10 In the server communication architecture shown, the server receives a debugging prompt message from a first terminal, and sends the debugging prompt message to a second terminal through a third communication channel, including the following steps B1-B3.

[0599] In step B1, the channel management module in the server receives a debugging prompt message from the first terminal, and sends the debugging prompt message to the information flow module.

[0600] For example, the channel management module receives the debugging prompt message from the sixth communication channel between the server and the first terminal. If the user has a need, the channel management module customizes the received debugging prompt message according to the user's need. If the user has no need, the debugging prompt message is not customized. Afterwards, the channel management module encapsulates the debugging prompt message into the target message format and sends the encapsulated debugging prompt message to the message sending module. The message sending module performs the final encapsulation processing on the received debugging prompt message and sends the encapsulated debugging prompt message to the information flow module.

[0601] In step B2, the information flow module sends the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels according to the debugging prompt message.

[0602] The multiple communication channels are communication channels between the server and the second terminal, and the controllers corresponding to the multiple communication channels in the server are called second controllers.

[0603] After receiving the debugging prompt message, the information flow module determines, based on the content of the debugging prompt message, that the receiving end of the debugging request is the main panel in the second terminal, and the main panel corresponds to the third communication channel. Therefore, the information flow module distributes the debugging prompt message to the second controller corresponding to the third communication channel.

[0604] In step B3, the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

[0605] When the second controller receives the debugging prompt message, it sends the received debugging prompt message to the channel management module to notify the channel management module to send the debugging prompt message to the corresponding third communication channel. When the channel management module receives the debugging request from the second controller, it sends the debugging prompt message to the third communication channel corresponding to the second controller according to the corresponding relationship between the communication channel and the controller.

[0606] based on Fig.10In the server communication architecture shown, the server receives the debugging result of the first page from the first terminal, and sends the debugging result of the first page to the second terminal through the fourth communication channel, including the following steps C1-C3.

[0607] In step C1, the channel management module in the server receives the debugging result of the first page from the first terminal, and sends the debugging result to the information flow module.

[0608] For example, the channel management module receives the debugging result from the sixth communication channel between the server and the first terminal. If the user has a need, the channel management module customizes the received debugging result according to the user's need. If the user has no need, the debugging result is not customized. Afterwards, the channel management module encapsulates the debugging result into a target message format and sends the encapsulated debugging result to the message sending module. The message sending module performs the final encapsulation processing on the received debugging result and sends the encapsulated debugging result to the information flow module.

[0609] In step C2, the information flow module sends the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels according to the debugging result.

[0610] The multiple communication channels are communication channels between the server and the second terminal.

[0611] After receiving the debugging result, the information flow module determines that the receiving end of the debugging result is the debugging panel in the second terminal according to the content of the debugging result, and the debugging panel corresponds to the fourth communication channel. Therefore, the information flow module distributes the debugging result to the second controller corresponding to the fourth communication channel.

[0612] In step C3, the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

[0613] When the second controller receives the debugging result, it sends the received debugging result to the channel management module to notify the channel management module to send the debugging result to the corresponding fourth communication channel. When the channel management module receives the debugging result from the second controller, it sends a debugging prompt message to the fourth communication channel corresponding to the second controller according to the corresponding relationship between the communication channel and the controller.

[0614] From the above introduction to the property panel, it can be known that the property panel is used to provide page property functions, wherein the page properties include at least one of the web page view state, the web page view performance, and the performance of the target application.

[0615] Based on the communication architecture of the above server, in combination with different embodiments, the process of obtaining the web page view state, web page view performance and target application performance during page debugging is introduced as follows:

[0616] Fig.11 The following is a flowchart showing a method for obtaining container status data according to an exemplary embodiment. The process includes:

[0617] In step 1101, in response to a debugging prompt operation on a first page in a target application, the first terminal sends a debugging prompt message to a server, where the debugging prompt message is used to prompt that the first page in the target application supports debugging.

[0618] Among them, this step 1101 is the same as the process shown in step 603 or step 702. Here, the embodiment of the present disclosure will not repeat step 1101.

[0619] In step 1102, the server receives a debugging prompt message from the first terminal.

[0620] For example, the sixth communication channel between the server and the first terminal receives the debugging prompt message.

[0621] In step 1103, the server sends the debugging prompt message to the second terminal through a third communication channel, where the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message.

[0622] The third communication channel is the communication channel corresponding to the main panel in the data transmission channel corresponding to the first page. Fig.10 The communication architecture in the server transmits the debugging prompt message received from the sixth communication channel to the third communication channel, so that the debugging message is transmitted to the second terminal. Fig.10 The process of message transmission in the communication architecture has been introduced above and will not be repeated here.

[0623] It should be noted that the process of step 1103 is similar to that of step 605. In step 605, the server can also Fig.10 The communication architecture in transmits the debugging prompt message received from the sixth communication channel to the third communication channel.

[0624] In step 1104, the second terminal receives the debugging prompt message of the first terminal sent by the server through the third communication channel.

[0625] In step 1105, the second terminal displays a main panel, and displays the property acquisition option and the address information of the first page carried in the debugging prompt message in the main panel.

[0626] The property acquisition option is used to trigger the display of the property panel. Since the third communication channel corresponds to the main panel, when the second panel receives the debugging prompt message from the third communication channel, the main panel corresponding to the third communication channel is displayed, and the adjustable list carried by the debugging prompt message is displayed in the panel.

[0627] If the debuggable list carried by the debugging prompt message includes the address information of the first page, the second terminal displays an attribute acquisition option, a debugging option and the address information of the first page in the main panel, and the attribute acquisition option and the debugging option both correspond to the address information of the first page.

[0628] If the debuggable list carried by the debugging prompt message includes address information of at least one second page, the second terminal displays multiple property acquisition options, multiple debugging options and the debuggable list in the main panel, each property acquisition option corresponds to the address information of a second page in the debuggable list, and each debugging option corresponds to the address information of a second page in the debuggable list.

[0629] In step 1106, in response to the selection operation of the property acquisition option, the second terminal displays the property panel of the first page, where the property panel is used to provide a function of the web page view state, and the property panel includes a container state acquisition option.

[0630] The container status option is used to provide a function of generating a container status acquisition request.

[0631] When the debuggable list displayed in the main panel includes the address information of at least one second page, the user can select any page in the at least one second page to instruct to obtain the attribute data of the page. For example, the page selected by the user in the main panel can be the first page that triggers the debugging prompt message, or it can be the second page in the debuggable list other than the first page. For the sake of ease of description, the embodiment of the present disclosure takes the user selecting to obtain the attribute data of the first page in the main panel as an example for the following description:

[0632] The user selects an attribute acquisition option corresponding to the address information of the first page in the main panel, and the second terminal displays the attribute panel of the first page in response to the selection operation of the attribute acquisition option in the main panel.

[0633] In step 1107, in response to the selection operation of the container status acquisition option, the second terminal sends a container status acquisition request to the server through the fifth communication channel, where the container status acquisition request is used to instruct to obtain the status data of the web page view of the first page, and the fifth communication channel corresponds to the property panel.

[0634] The state data of the web page view is a kind of attribute data of the first page, and the state data of the web page view includes at least one of the bridge call stack information of the web page view, the basic state information of the web page view, the data (Cookie) information stored on the first terminal of the web page view, and the Cookie operation log. The bridge call stack information includes the input parameters and output parameters of the web page view when bridging the call stack. The basic state information of the web page view includes the layout information of the page view and the setting information of the web page view, and the layout information of the page view includes the background, color and other information of the web page view.

[0635] The user selects the container status acquisition option, and the second terminal generates a container status acquisition request in response to the selection operation of the container status acquisition option. The second terminal establishes a fifth communication channel corresponding to the property panel, wherein the fifth communication channel is a communication channel between the second terminal and the server corresponding to the property panel of the first page.

[0636] The second terminal also establishes a correspondence between the fifth communication channel and the web page view of the first page to indicate that the fifth communication channel is a communication channel between the property panel of the first page and the server. For example, the second terminal adds an identifier of the web page view of the first page to the fifth communication channel to indicate that the fourth communication channel corresponds to the web page view.

[0637] After the fifth communication channel is established, the second terminal sends the container status acquisition request to the fifth communication channel, so that the container status acquisition request is transmitted to the server.

[0638] If the message format of the message transmitted in the fifth communication channel is the target message format, before sending the container status acquisition request, the second terminal first uses the target message format to encapsulate the container status acquisition request, and then sends the encapsulated container status acquisition request to the fifth communication channel.

[0639] In step 1108, the server receives the container status acquisition request of the second terminal through the fifth communication channel.

[0640] The server receives the container state acquisition request from the fifth communication channel. Since the fifth communication channel carries the identifier of the web page view of the first web page, the server can also add the identifier of the web page view of the first web page to the container state acquisition request. After that, the server sends the container state acquisition request carrying the identifier of the web page view to the first terminal.

[0641] Still Fig.10Based on the information flow module, the channel management module in the server receives the container status acquisition request of the second terminal through the fifth communication channel, and sends the container status acquisition request to the information flow module.

[0642] For example, the channel management module receives the container status acquisition request from the fifth communication channel. If the user has a need, the channel management module customizes the received container status acquisition request according to the user's need. If the user has no need, the container status acquisition request is not customized. Afterwards, the channel management module encapsulates the container status acquisition request into a target message format and sends the encapsulated container status acquisition request to the message sending module. The message sending module encapsulates the identifier of the web page view into the container status acquisition request and sends the encapsulated container status acquisition request to the information flow module.

[0643] In step 1109, the server sends the container status acquisition request to the first terminal.

[0644] After receiving the container status acquisition request, the server determines that the first terminal is the debugged terminal based on the correspondence between the device identification of the second terminal and the device identification of the first terminal, and sends the container status acquisition request to the sixth communication channel between the server and the first terminal, so that the container status acquisition request is transmitted to the first terminal.

[0645] Still Fig.10 Based on the received container status acquisition request, the information flow module sends the container status acquisition request to the first controller, and the first controller notifies the channel management module to send the container status acquisition request to the communication channel between the server and the first terminal.

[0646] For example, after receiving the container status acquisition request, the information flow module determines that the receiving end of the container status acquisition request is the first terminal according to the content of the container status acquisition request, thereby distributing the container status acquisition request to the first controller. After the first controller receives the container status acquisition request, it sends the received container status acquisition request to the channel management module to notify the channel management module to send the container status acquisition request to the corresponding sixth communication channel. When the channel management module receives the container status acquisition request from the first controller, it sends the container status acquisition request to the sixth communication channel corresponding to the first controller according to the corresponding relationship between the communication channel and the controller.

[0647] In step 1110, the first terminal receives a container status acquisition request of the second terminal from the server.

[0648] For example, the first terminal receives the container status acquisition request from the sixth communication channel.

[0649] In step 1111, the first terminal obtains the state data of the webpage view based on the container state acquisition request.

[0650] Taking the operating system in the first terminal executing step 1111 as an example, after receiving the container status acquisition request, the operating system acquires the status data of the web page view based on the identifier of the web page view carried in the container status acquisition request.

[0651] In one possible implementation, Figure 8 As shown, a container attribute module is provided in the operating system, and this step 1111 is executed by the container attribute module.

[0652] In step 1112, the first terminal sends the state data of the web page view to the server.

[0653] The first terminal sends the state data of the webpage view to the sixth communication channel, so that the state data of the webpage view is transmitted to the server.

[0654] If the message format of the message transmitted in the sixth communication channel is the target message format of the first terminal, then before sending the status data of the web page view, the first terminal first encapsulates the status data of the web page view using the target message format, and then sends the encapsulated status data of the web page view to the sixth communication channel.

[0655] In step 1113, the server receives the state data of the webpage view from the first terminal.

[0656] Still Fig.10 Based on the information flow module, the channel management module in the server receives the status data of the web page view through the sixth communication channel, and sends the status data of the web page view to the information flow module.

[0657] For example, the channel management module receives the status data from the sixth communication channel. If the user has a need, the channel management module customizes the received status data according to the user's need. If the user has no need, the status data is not customized. Afterwards, the channel management module encapsulates the status data into the target message format and sends the encapsulated status data to the message sending module. The message sending module performs the final encapsulation processing on the received status data and sends the encapsulated status data to the information flow module.

[0658] In step 1114, the server sends the state data of the webpage view to the second terminal through the fifth communication channel.

[0659] Still Fig.10Based on the received status data, the information flow module sends the status data to the second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0660] For example, after receiving the status data, the information flow module determines, based on the content of the status data, that the receiving end of the status data is the attribute panel in the second terminal, and the attribute panel corresponds to the fifth communication channel. Therefore, the information flow module distributes the status data to the second controller corresponding to the fifth communication channel. When the second controller receives the status data, it sends the received status data to the channel management module to notify the channel management module to send the status data to the corresponding fifth communication channel. When the channel management module receives the status data from the second controller, it sends the status data to the fifth communication channel corresponding to the second controller based on the correspondence between the communication channel and the controller.

[0661] In step 1115, the second terminal receives the state data of the webpage view sent by the server through the fifth communication channel.

[0662] For example, the second terminal receives the state data of the webpage view from the fifth communication channel. After receiving the state data of the webpage view, the second terminal displays the state data of the webpage view in the property panel corresponding to the fifth communication channel for the user to view.

[0663] When the attribute panel includes a real time panel, the second terminal displays the real time corresponding to the attribute data of the first page in the real time panel. For example, the real time corresponding to the state data of the web page view is displayed in the real time panel.

[0664] In the method provided in the embodiment of the present disclosure, the front-end module of the debugging tool is provided with a property panel. When the container status acquisition option in the property panel is selected, the second terminal is triggered to send a container status acquisition request for the page to the first terminal through the server, so that the first terminal returns the status data of the web page view of the page to the second terminal through the server based on the container status acquisition request, and then during the page debugging process, the second terminal can also obtain the container status of the page, so that the user can view the container status of the page in real time.

[0665] Fig.12 The following is a flowchart of obtaining container performance data according to an exemplary embodiment. The process includes:

[0666] In step 1201, the first terminal sends a debugging prompt message to the server, where the debugging prompt message is used to prompt that the first page in the target application supports debugging.

[0667] Among them, this step 1201 is the same as the process shown in step 603 or step 702. Here, the embodiment of the present disclosure will not repeat step 1201.

[0668] In step 1202, the server receives a debugging prompt message from the first terminal.

[0669] For example, the sixth communication channel between the server and the first terminal receives the debugging prompt message.

[0670] In step 1203, the server sends the debugging prompt message to the second terminal through a third communication channel, where the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message.

[0671] Among them, the process of step 1203 is the same as that of step 1103, and the embodiment of the present disclosure will not repeat step 1203 here.

[0672] In step 1204, the second terminal receives the debugging prompt message of the first terminal sent by the server through the third communication channel.

[0673] In step 1205, the second terminal displays a main panel, and displays the property acquisition option and the address information of the first page carried in the debugging prompt message in the main panel.

[0674] Among them, the process of step 1205 is the same as that of step 1105, and the embodiment of the present disclosure will not repeat step 1205 here.

[0675] In step 1206, in response to the selection operation of the property acquisition option, the second terminal displays the property panel of the first page, the property panel is also used to provide the function of web page view performance, and the property panel also includes a container performance acquisition option.

[0676] The container status option is used to provide a function of generating a container performance acquisition request, wherein the container performance acquisition request is described in step 1207. The process of step 1206 is the same as that of step 1106, and step 1206 is not described in detail in this embodiment of the disclosure.

[0677] In step 1207, the second terminal sends a container performance acquisition request to the server through the fifth communication channel in response to the selection operation of the container performance acquisition option, and the container performance acquisition request is used to indicate the acquisition of performance data of the web page view of the first page. The fifth communication channel corresponds to the property panel.

[0678] The web page view performance data is a type of attribute data of the first page, and the web page view performance data includes the amount of resources occupied by the web page view, for example, at least one of the amount of processing resources of the processor occupied by the web page view, the memory occupied by the script (JavaScript, JS) of the web page view, and the memory occupied by the Native of the web page view. The processor includes at least one of a central processing unit (CPU) and a graphics processing unit (GPU).

[0679] The user selects the container performance acquisition option, and the second terminal generates a container performance acquisition request in response to the selection operation of the container performance acquisition option. If the second terminal has established a fifth communication channel corresponding to the property panel, the second terminal sends the container performance acquisition request to the fifth communication channel, so that the container performance acquisition request is transmitted to the server. If the second terminal has not yet established the fifth communication channel corresponding to the property panel, the second terminal first establishes the fifth communication channel, and when the fifth communication channel is established, the second terminal sends the container performance acquisition request to the fifth communication channel. Among them, the establishment process of the fifth communication channel is relatedly introduced in 1107, which will not be repeated here.

[0680] Optionally, before sending the container performance acquisition request, the second terminal encapsulates the container performance acquisition request into a target message format, and sends the encapsulated container performance acquisition request to the fifth communication channel.

[0681] In step 1208, the server receives the container performance acquisition request of the second terminal through the fifth communication channel.

[0682] For example, the server receives the container performance acquisition request from the fifth communication channel. Since the fifth communication channel carries the identifier of the web page view of the first web page, the server can also add the identifier of the web page view of the first web page to the container performance acquisition request. Then, the server sends the container performance acquisition request carrying the identifier of the web page view to the first terminal.

[0683] Still Fig.10 Based on the information flow module, the channel management module in the server receives the container performance acquisition request of the second terminal through the fifth communication channel, and sends the container performance acquisition request to the information flow module.

[0684] For example, the channel management module receives the container performance acquisition request from the fifth communication channel. If the user has a need, the channel management module customizes the received container performance acquisition request according to the user's need. If the user has no need, the container performance acquisition request is not customized. Afterwards, the channel management module encapsulates the container performance acquisition request into a target message format and sends the encapsulated container performance acquisition request to the message sending module. The message sending module encapsulates the identifier of the web page view into the container performance acquisition request and sends the encapsulated container performance acquisition request to the information flow module.

[0685] In step 1209, the server sends the container performance acquisition request to the first terminal.

[0686] After receiving the container performance acquisition request, the server determines that the first terminal is the debugged terminal based on the correspondence between the device identifier of the second terminal and the device identifier of the first terminal, and then sends the container performance acquisition request to the sixth communication channel between the server and the first terminal, so that the container performance acquisition request is transmitted to the first terminal.

[0687] Still Fig.10 Based on the received container performance acquisition request, the information flow module sends the container performance acquisition request to the first controller, and the first controller notifies the channel management module to send the container performance acquisition request to the communication channel between the server and the first terminal.

[0688] For example, after receiving the container performance acquisition request, the information flow module determines that the receiving end of the container performance acquisition request is the first terminal according to the content of the container performance acquisition request, thereby distributing the container performance acquisition request to the first controller. When the first controller receives the container performance acquisition request, it sends the received container performance acquisition request to the channel management module to notify the channel management module to send the container performance acquisition request to the corresponding sixth communication channel. When the channel management module receives the container performance acquisition request from the first controller, it sends the container performance acquisition request to the sixth communication channel corresponding to the first controller according to the correspondence between the communication channel and the controller.

[0689] In step 1210, the first terminal receives a container performance acquisition request of the second terminal from the server.

[0690] For example, the first terminal receives the container performance acquisition request from the sixth communication channel.

[0691] In step 1211, the first terminal obtains performance data of the web page view based on the container performance acquisition request.

[0692] If the performance data of the web page view includes the amount of resources occupied by the web page view, the first terminal obtains the amount of resources occupied by the web page view from the memory analysis tool (memory-infra) in the web page view kernel of the web browser of the first terminal based on the container performance acquisition request. It should be noted that the technicians pre-developed the web page view kernel to extract the fields in the memory analysis tool that are more affected by the front end for assembly, and return the assembled fields to the memory analysis tool, so that the subsequent memory analysis tool can obtain the performance data of the web page view.

[0693] In a possible implementation, this step 1211 is performed by the operating system in the first terminal. There is a first communication channel corresponding to the web view of the first page between the web browsing web view kernel and the operating system, and the operating system sends the container performance acquisition request to the web view kernel through the first communication channel to instruct to obtain the performance data of the web view of the first page. The user performs at least one operation on the first page, and the memory analysis tool in the web view kernel samples the resource consumption of the processor, the memory occupied by JS, and the memory occupied by Native after receiving the container performance acquisition request, and obtains the initial value and end value of the resource consumption of the processor, the memory occupied by JS, and the memory occupied by Native when the web view responds to the at least one operation. The memory analysis tool uses the obtained data as the performance data of the web view, and sends the performance data of the web view to the operating system through the first communication channel. Correspondingly, the operating system receives the performance data of the web view from the first communication channel.

[0694] Among them, the initial values ​​of the processor's resource consumption, JS memory occupied, and Native memory occupied refer to the values ​​of the processor's resource consumption, JS memory occupied, and Native memory occupied before the web page view responds to the at least one operation, and the end values ​​of the processor's resource consumption, JS memory occupied, and Native memory occupied refer to the values ​​of the processor's resource consumption, JS memory occupied, and Native memory occupied after the web page view responds to the at least one operation.

[0695] In one possible implementation, Figure 8 As shown, a container attribute module is provided in the operating system, and this step 1211 is executed by the container attribute module.

[0696] In step 1212, the first terminal sends the performance data of the web page view to the server.

[0697] The first terminal sends the performance data of the web page view to the sixth communication channel, so that the performance data of the web page view is transmitted to the server.

[0698] If the message format of the message transmitted in the sixth communication channel is the target message format, before sending the status data of the web page view, the first terminal first uses the target message format to encapsulate the performance data of the web page view, and then sends the encapsulated performance data of the web page view to the sixth communication channel.

[0699] In step 1213, the server receives performance data of the web page view from the first terminal.

[0700] Still Fig.10 Based on this, the channel management module in the server receives the performance data of the web page view through the sixth communication channel, and sends the performance data of the web page view to the information flow module.

[0701] For example, the channel management module receives the performance data from the sixth communication channel. If the user has a need, the channel management module customizes the received performance data according to the user's need. If the user has no need, the performance data is not customized. Afterwards, the channel management module encapsulates the performance data into the target message format and sends the encapsulated performance data to the message sending module. The message sending module performs the final encapsulation processing on the received performance data and sends the encapsulated performance data to the information flow module.

[0702] In step 1214, the server sends the performance data of the webpage view to the second terminal through the fifth communication channel.

[0703] Still Fig.10 Based on the received performance data, the information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0704] For example, after receiving the performance data, the information flow module determines, based on the content of the performance data, that the receiving end of the performance data is the attribute panel in the second terminal, and the attribute panel corresponds to the fifth communication channel. Therefore, the information flow module distributes the performance data to the second controller corresponding to the fifth communication channel. When the second controller receives the performance data, it sends the received performance data to the channel management module to notify the channel management module to send the performance data to the corresponding fifth communication channel. When the channel management module receives the performance data from the second controller, it sends the performance data to the fifth communication channel corresponding to the second controller based on the correspondence between the communication channel and the controller.

[0705] In step 1215, the second terminal receives the performance data of the webpage view sent by the server through the fifth communication channel.

[0706] For example, the second terminal receives the performance data of the web page view from the fifth communication channel. After receiving the performance data of the web page view, the second terminal displays the performance data of the web page view in the property panel corresponding to the fifth communication channel for the user to view.

[0707] In one possible implementation, when the second terminal receives the performance data of the web page view, the second terminal, based on the performance data of the web page view, counts the change in the performance data of the web page view before and after the web page view responds to at least one operation of the user on the first page. For example, the second terminal uses the difference between the end value and the initial value of the processor's resource consumption as the change in the processing resource consumption of the processor. Or calculate the target percentile between the end value and the initial value of the processor's resource consumption. The target percentile is, for example, P50 or P90. The calculation method for the change in other performance data of the web page view is similar to that of the processor's resource consumption, which will not be repeated here.

[0708] After counting the change in performance data of the web page view before and after the web page view responds to at least one operation of the user on the first page, the second terminal also displays the change in performance data of the web page view in the property panel, through which the user can learn about the impact of at least one operation on the first page on the performance of the web page view of the first page.

[0709] When the property panel includes a real time panel, the second terminal displays the real time corresponding to the property data of the first page in the real time panel. For example, the real time corresponding to the performance data of the web page view is displayed in the real time panel.

[0710] In the method provided in the embodiment of the present disclosure, the front-end module of the debugging tool is provided with a property panel. When the container performance acquisition option in the property panel is selected, the second terminal is triggered to send a container performance acquisition request for the page to the first terminal through the server, so that the first terminal returns the performance data of the web page view of the page to the second terminal through the server based on the container performance acquisition request, and then during the page debugging process, the second terminal can also obtain the container performance of the page, so that the user can view the container performance of the page in real time.

[0711] Fig.13 The following is a flowchart of obtaining application performance data according to an exemplary embodiment. The process includes:

[0712] In step 1301, the first terminal sends a debugging prompt message to the server, where the debugging prompt message is used to prompt that the first page in the target application supports debugging.

[0713] Among them, the process of step 1301 is the same as that of step 603 or step 702, and the embodiment of the present disclosure will not repeat step 1301 here.

[0714] In step 1302, the server receives a debugging prompt message from the first terminal.

[0715] For example, the sixth communication channel between the server and the first terminal receives the debugging prompt message.

[0716] In step 1303, the server sends the debugging prompt message to the second terminal through a third communication channel, where the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message.

[0717] In one possible implementation, the server is based on Fig.10 The communication architecture in the server transmits the debugging prompt message received from the sixth communication channel to the third communication channel, so that the debugging message is transmitted to the second terminal. Fig.10 The process of message transmission in the communication architecture has been introduced above and will not be repeated here.

[0718] It should be noted that the process of step 1303 is similar to that of step 605. In step 605, the server may also Fig.10 The communication architecture in transmits the debugging prompt message received from the sixth communication channel to the third communication channel.

[0719] In step 1304, the second terminal receives the debugging prompt message of the first terminal sent by the server through the third communication channel.

[0720] In step 1305, the second terminal displays a main panel, and displays the property acquisition option and the address information of the first page carried in the debugging prompt message in the main panel.

[0721] Among them, the process of this step 1305 is the same as that of step 1105, and here, the embodiment of the present disclosure will not repeat step 1305.

[0722] In step 1306, the second terminal selects the property acquisition option and displays the property panel of the first page. The property panel is also used to provide the performance function of the target application. The property panel also includes an application performance acquisition option.

[0723] Among them, the application performance acquisition option is used to provide a function of generating an application performance acquisition request. For the relevant introduction of the application performance acquisition request, please refer to step 1307.

[0724] In step 1307, in response to the selection operation of the application performance acquisition option, the second terminal sends an application performance acquisition request to the server through the fifth communication channel, where the application performance acquisition request is used to instruct to obtain performance data of the target application, and the fifth communication channel corresponds to the property panel.

[0725] Among them, the status data of the target application is a kind of attribute data of the first page, and the performance data of the target application includes the amount of resources occupied by the target application, and the resources occupied by the target application include at least one of the memory size occupied by the target application and the CPU time occupied by the target application.

[0726] The user selects the application performance acquisition option, and the second terminal generates an application performance acquisition request in response to the selection of the application performance acquisition option. If the second terminal has established the fifth communication channel corresponding to the property panel, the second terminal sends the container performance acquisition request to the fifth communication channel, so that the container performance acquisition request is transmitted to the server. If the second terminal has not yet established the fifth communication channel corresponding to the property panel, the second terminal first establishes the fifth communication channel, and when the fifth communication channel is established, the second terminal sends the application performance acquisition request to the fifth communication channel. Among them, the establishment process of the fifth communication channel is relatedly introduced in 1107, which will not be repeated here.

[0727] If the message format of the message transmitted in the fifth communication channel is the target message format, then before sending the application performance acquisition request, the second terminal first uses the target message format to encapsulate the application performance acquisition request, and then sends the encapsulated application performance acquisition request to the fifth communication channel.

[0728] In step 1308, the server receives the application performance acquisition request from the second terminal through the fifth communication channel.

[0729] For example, the server receives the application performance acquisition request from the fifth communication channel. Since the fifth communication channel carries the identifier of the web page view of the first web page, the server can also add the identifier of the web page view of the first web page to the application performance acquisition request. Then, the server sends the application performance acquisition request carrying the identifier of the web page view to the first terminal.

[0730] Still Fig.10 Based on this, the channel management module in the server receives the application performance acquisition request of the second terminal through the fifth communication channel, and sends the application performance acquisition request to the information flow module.

[0731] For example, the channel management module receives the application performance acquisition request from the fifth communication channel. If the user has a need, the channel management module customizes the received application performance acquisition request according to the user's need. If the user has no need, the application performance acquisition request is not customized. Afterwards, the channel management module encapsulates the application performance acquisition request into a target message format and sends the encapsulated application performance acquisition request to the message sending module. The message sending module encapsulates the identifier of the web page view into the application performance acquisition request and sends the encapsulated application performance acquisition request to the information flow module.

[0732] In step 1309, the server sends the application performance acquisition request to the first terminal.

[0733] After receiving the application performance acquisition request, the server determines that the first terminal is the debugged terminal based on the correspondence between the device identifier of the second terminal and the device identifier of the first terminal, and then sends the application performance acquisition request to the sixth communication channel between the server and the first terminal, so that the application performance acquisition request is transmitted to the first terminal.

[0734] Still Fig.10 Based on the received application performance acquisition request, the information flow module sends the application performance acquisition request to the first controller, and the first controller notifies the channel management module to send the application performance acquisition request to the communication channel between the server and the first terminal.

[0735] For example, after receiving the application performance acquisition request, the information flow module determines that the receiving end of the application performance acquisition request is the first terminal according to the content of the application performance acquisition request, thereby distributing the application performance acquisition request to the first controller. When the first controller receives the application performance acquisition request, it sends the received application performance acquisition request to the channel management module to notify the channel management module to send the application performance acquisition request to the corresponding sixth communication channel. When the channel management module receives the application performance acquisition request from the first controller, it sends the application performance acquisition request to the sixth communication channel corresponding to the first controller according to the corresponding relationship between the communication channel and the controller.

[0736] In step 1310, the first terminal receives an application performance acquisition request of the second terminal from the server.

[0737] For example, the first terminal receives the application performance acquisition request from the sixth communication channel.

[0738] In step 1311, the first terminal obtains performance data of the target application based on the application performance acquisition request.

[0739] If the performance data of the target application includes the amount of resources occupied by the target application, the first terminal obtains the amount of resources occupied by the target application from the debug memory information (Debug.MemoryInfo) class in the operating system of the first terminal based on the application performance acquisition request.

[0740] Taking the operating system in the first terminal executing this step 1311 as an example, after the operating system receives the application performance acquisition request, the operating system reads the current performance data of the target application from the debugging memory information class based on the application performance acquisition request.

[0741] In one possible implementation, Figure 8 As shown, an application performance module is provided in the operating system, and this step 1311 is executed by the application performance module.

[0742] In step 1312, the first terminal sends the performance data of the target application to the server.

[0743] The first terminal sends the performance data of the target application to the sixth communication channel, so that the performance data of the target application is transmitted to the server.

[0744] If the format of the message transmitted in the sixth communication channel is the target message format, before sending the performance data of the target application, the first terminal first uses the target message format to encapsulate the performance data of the target application, and then sends the encapsulated performance data of the target application to the fifth communication channel.

[0745] In step 1313, the server receives performance data of the target application from the first terminal.

[0746] Still Fig.10 Based on this, the channel management module in the server receives the performance data of the target application through the sixth communication channel, and sends the performance data of the target application to the information flow module.

[0747] For example, the channel management module receives the performance data from the sixth communication channel. If the user has a need, the channel management module customizes the received performance data according to the user's need. If the user has no need, the performance data is not customized. Afterwards, the channel management module encapsulates the performance data into the target message format and sends the encapsulated performance data to the message sending module. The message sending module performs the final encapsulation processing on the received performance data and sends the encapsulated performance data to the information flow module.

[0748] In step 1314, the server sends the performance data of the target application to the second terminal through the fifth communication channel.

[0749] Still Fig.10 Based on the received performance data, the information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0750] For example, after receiving the performance data, the information flow module determines, based on the content of the performance data, that the receiving end of the performance data is the attribute panel in the second terminal, and the attribute panel corresponds to the fifth communication channel. Therefore, the information flow module distributes the performance data to the second controller corresponding to the fifth communication channel. When the second controller receives the performance data, it sends the received performance data to the channel management module to notify the channel management module to send the performance data to the corresponding fifth communication channel. When the channel management module receives the performance data from the second controller, it sends the performance data to the fifth communication channel corresponding to the second controller based on the correspondence between the communication channel and the controller.

[0751] In step 1315, the second terminal receives the performance data of the target application sent by the server through the fifth communication channel.

[0752] For example, the second terminal receives the performance data of the target application from the fifth communication channel. After receiving the performance data of the target application, the second terminal displays the performance data of the target application in the property panel corresponding to the fifth communication channel for the user to view.

[0753] When the property panel includes a real time panel, the second terminal displays the real time corresponding to the property data of the first page in the real time panel. For example, the real time corresponding to the performance data of the target application is displayed in the real time panel.

[0754] In the method provided in the embodiment of the present disclosure, the front-end module of the debugging tool is provided with a property panel. When the application performance acquisition option in the property panel is selected, the second terminal is triggered to send an application performance acquisition request for the target application to the first terminal through the server, so that the first terminal returns the performance data of the target application to the second terminal through the server based on the application performance acquisition request, and then during the page debugging process, the second terminal can also obtain the performance status of the target application, so that the user can view the performance status of the target application in real time.

[0755] In a possible implementation, when the property panel corresponding to the first page includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, and the offline package panel includes a run option, and the run option is used to provide a function of running the offline page code. The run option in the offline package panel is selected, and the second terminal runs the offline page code of the first page in response to the selection of the run option in the offline package panel, and displays the first page, so that the user can view the first page at the second terminal at any time.

[0756] In a possible implementation, in each of the above flowcharts, the steps executed by the first terminal are executed by the operating system in the first terminal. In order to further reflect the steps executed by the operating system during the page debugging process and the interaction process between various devices in the page debugging system, see Fig.14 A communication flow chart in a page debugging process is shown according to an exemplary embodiment.

[0757] like Fig.14As shown, after the server opens the debugging permission of the first terminal for the second terminal, if the user chooses to open a page of a certain application, the operating system of the first terminal responds to the opening operation of the page, creates a web view for the page, generates an identifier of the web view, and adds the identifier of the web view to the address information of the page. After that, the operating system notifies the message management module of the identifier of the web view, and notifies the message management module to create a first communication channel from the operating system to the web view kernel for the web view. After receiving the notification, the message management module requests the web view kernel to obtain the debuggable list of the application. After receiving the message management module, the web view kernel returns the debuggable list of the application to the message management module. Based on the identifier of the web view, the message management module queries the address information of the page opened by the user from the debuggable list, and based on the address information of the page and the identifier of the web view, creates a Local Socket (i.e., the first communication channel) for the web view, and the message management module upgrades the communication protocol of the Local Socket to the WebSocket communication protocol. After that, the message management module sends the debuggable list of the application to the second terminal through the server. The second terminal displays the debuggable list of the application in the main panel, and the user makes a selection operation in the main panel, triggering the second terminal to send a corresponding request message (such as a debugging request, a container status acquisition request, a container performance acquisition request, or an application performance acquisition request) to the server. The server receives the request message, adds the web view identifier of the corresponding page to the request message, and sends the request message to the message management module in the operating system. After receiving the request message, the message management module decodes the request message and encodes the request message into a WebSocke message using the data format of the WebSocke communication protocol. The message management module sends a WebSocke message to the Local Socket corresponding to the web view based on the identifier of the web view carried in the request message. Correspondingly, the web view kernel receives the WebSocke message from the Local Socke, parses the WebSocke message, and executes the content of the WebSocke message, and returns the execution result to the message management module through the Local Socke. The message management module decodes the received execution result, repackages it into the target message format, and sends the packaged execution result to the server. The server forwards the execution result to the communication channel corresponding to the identifier of the web page view, and the second terminal receives the execution result from the communication channel and displays the received execution result.

[0758] Fig.15 is a block diagram of a page debugging device according to an exemplary embodiment. Fig.15 , applied to a first terminal, the device 1500 includes:

[0759] The first sending unit 1501 is configured to execute a debugging prompt operation on a first page in a target application, and send a debugging prompt message to a second terminal through a server, wherein the debugging prompt message is used to prompt that the first page in the target application supports debugging;

[0760] The receiving unit 1502 is configured to receive a debugging request of the second terminal from the server, where the debugging request is used to instruct to debug the first page;

[0761] The acquisition unit 1503 is configured to acquire the debugging result of the first page based on the debugging request;

[0762] The second sending unit 1504 is further configured to execute sending the debugging result of the first page to the second terminal through the server.

[0763] In a possible implementation manner, the web page view mounted on the first page corresponds to a first communication channel, and the first communication channel is a communication channel between an operating system of the first terminal and a web page view kernel; the acquiring unit 1503 is configured to execute:

[0764] Sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view, so that the web page view kernel debugs the first page based on the debugging request to obtain a debugging result of the first page;

[0765] The debugging result of the first page sent by the debugging front end is received through the first communication channel corresponding to the web page view.

[0766] In a possible implementation manner, the apparatus 1500 further includes a creating unit;

[0767] The acquisition unit 1503 is further configured to execute, in response to a debugging prompt operation on a first page in the target application, acquire a web page view for mounting the first page;

[0768] The creating unit is configured to execute creation of the first communication channel corresponding to the web page view.

[0769] In a possible implementation manner, the creating unit includes:

[0770] an acquisition sub-sub-unit, configured to execute, in response to a debugging prompt operation on a first page in a target application, acquiring address information of the first page, the address information including an identifier of the web page view;

[0771] A creation sub-sub-unit configured to execute creation of a first communication channel between the operating system and the web page view kernel;

[0772] The creation sub-subunit is further configured to establish a corresponding relationship between the address information and the created first communication channel.

[0773] In a possible implementation manner, the acquisition sub-subunit is configured to execute:

[0774] In response to a debugging prompt operation on a first page in a target application, an address acquisition request is sent to a web view kernel, wherein the address acquisition request is used to instruct acquisition of address information of a page in the target application that supports debugging and has been mounted in a web view;

[0775] receiving address information of at least one second page from the web view kernel;

[0776] Based on the identifier of the web page view, the address information of the first page is queried from the address information of the at least one second page.

[0777] In a possible implementation manner, the first communication channel is a local socket; and the device further includes:

[0778] An updating unit, configured to update the communication protocol of the first communication channel from the Hypertext Transfer Protocol to the Network Socket Protocol;

[0779] The second sending unit is further configured to send the debugging request to the first communication channel through the network socket protocol.

[0780] In a possible implementation manner, the receiving unit 1502 is further configured to execute receiving a container status acquisition request of the second terminal from the server, where the container status acquisition request is used to instruct to acquire status data of the webpage view mounted on the first page;

[0781] The acquisition unit 1503 is further configured to execute the state data of the webpage view based on the container state acquisition request;

[0782] The second sending unit 1504 is further configured to send the state data of the webpage view to the second terminal through the server.

[0783] In a possible implementation, the receiving unit 1502 is further configured to execute receiving a container performance acquisition request of the second terminal from the server, where the container performance acquisition request is used to instruct to acquire performance data of the web page view mounted by the first page;

[0784] The acquisition unit 1503 is further configured to execute the performance data of the web page view based on the container performance acquisition request;

[0785] The second sending unit 1504 is further configured to send the performance data of the webpage view to the second terminal through the server.

[0786] In a possible implementation manner, the performance data of the web page view includes an amount of resources occupied by the web page view;

[0787] The acquisition unit 1503 is further configured to execute, based on the container performance acquisition request, to acquire the amount of resources occupied by the web page view from a memory analysis tool in the web page browser kernel of the first terminal.

[0788] In a possible implementation manner, the receiving unit 1502 is further configured to execute receiving an application performance acquisition request of the second terminal from the server, where the application performance acquisition request is used to instruct to acquire performance data of the target application;

[0789] The acquisition unit 1503 is further configured to execute, based on the application performance acquisition request, to acquire the performance data of the target application;

[0790] The second sending unit 1504 is further configured to send the performance data of the target application to the server through the server.

[0791] In a possible implementation manner, the performance data of the target application includes the amount of resources occupied by the target application;

[0792] The acquisition unit 1503 is further configured to execute, based on the application performance acquisition request, acquiring the amount of resources occupied by the target application from the debug memory information class in the operating system of the first terminal.

[0793] In a possible implementation manner, the device 1500 further includes:

[0794] The injection unit is configured to execute, in response to a debugging prompt operation on a first page in a target application, inject a target script into the page code of the first page, and the target script executes the steps of receiving a debugging request from the second terminal from the server, obtaining a debugging result of the first page based on the debugging request, and sending the debugging result of the first page to the second terminal through the server.

[0795] In a possible implementation manner, the webpage view mounted by the first page corresponds to a second communication channel, and the second communication channel is a communication channel between the server and the target script;

[0796] The target script receiving the debugging request of the second terminal from the server includes:

[0797] The target script receives a debugging request of the second terminal from the server through the second communication channel;

[0798] The target script sending the debugging result of the first page to the second terminal through the server includes:

[0799] The target script sends the debugging result of the first page to the server through the second communication channel, and the server sends the debugging result of the first page to the second terminal.

[0800] In a possible implementation, the target script includes an information module and a target hijacking module, the target hijacking module includes a target hijacking method, and the target hijacking method is used to provide a page debugging function for the operating system of the first terminal; the target script receives a debugging request of the second terminal from the server, and based on the debugging request, obtaining a debugging result of the first page includes:

[0801] The information module receives a debugging request of the second terminal from the server through the second communication channel;

[0802] The information module sends the debugging request to the target hijacking module;

[0803] The target hijacking module obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

[0804] In a possible implementation, the target script includes at least one proxy module and at least one specific hijacking module, each proxy module corresponds to a specific hijacking module, each specific hijacking module includes a specific hijacking method, and each specific hijacking method is used to provide a page debugging function for an operating system;

[0805] The target hijacking module is one of the at least one specific hijacking module, and the target hijacking module corresponds to a target proxy module in the at least one proxy module;

[0806] The information module sending the debugging request to the target hijacking module includes:

[0807] The information module sends the debugging request to the target agent module;

[0808] The target proxy module receives the debugging request and sends the received debugging request to the target hijacking module.

[0809] In one possible implementation, the target hijacking module is a public hijacking module in the target script, the target hijacking method is a public hijacking method included in the public hijacking module, the public hijacking method is used to provide a page debugging function, and the page debugging function is applicable to multiple operating systems.

[0810] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.

[0811] Fig.16 is a block diagram of a page debugging device according to an exemplary embodiment. Fig.16 According to a fifth aspect of an embodiment of the present disclosure, a page debugging device is provided, which is applied to a server. The device 1600 includes:

[0812] The receiving unit 1601 is configured to receive a debugging prompt message from the first terminal, where the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging;

[0813] The sending unit 1602 is configured to send the debugging prompt message to the second terminal through a third communication channel, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message;

[0814] The receiving unit 1601 is further configured to receive a debugging request from the second terminal through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, and the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function;

[0815] The sending unit 1602 is further configured to send a debugging request of the second terminal to the first terminal;

[0816] The receiving unit 1601 is further configured to receive a debugging result of the first page from the first terminal;

[0817] The sending unit 1602 is further configured to send the debugging result of the first page to the second terminal through the fourth communication channel.

[0818] In a possible implementation manner, the server includes a channel management module, an information flow module, and a first controller, and the first controller corresponds to a communication channel between the server and the first terminal;

[0819] The receiving unit 1601 is further configured to receive a debugging request from the second terminal through a fourth communication channel based on the channel management module, and send the debugging request to the information flow module;

[0820] The sending unit 1602 is further configured to execute, based on the information flow module, sending the debugging request to the first controller according to the debugging request, and the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

[0821] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0822] The receiving unit 1601 is further configured to receive a debugging prompt message from the first terminal based on the channel management module, and send the debugging prompt message to the information flow module;

[0823] The sending unit 1602 is further configured to execute, based on the information flow module and according to the debugging prompt message, sending the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

[0824] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0825] The receiving unit 1601 is further configured to receive a debugging result of the first page from the first terminal based on the channel management module, and send the debugging result to the information flow module;

[0826] The sending unit 1602 is further configured to execute, based on the information flow module and according to the debugging result, sending the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

[0827] In a possible implementation, the receiving unit 1601 is further configured to receive a container status acquisition request of the second terminal through a fifth communication channel, the container status acquisition request being used to instruct acquisition of status data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing a web page view status;

[0828] The sending unit 1602 is further configured to send the container status acquisition request to the first terminal;

[0829] The receiving unit 1601 is further configured to receive the state data of the webpage view from the first terminal;

[0830] The sending unit 1602 is further configured to send the state data of the webpage view to the second terminal through a fifth communication channel.

[0831] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0832] The receiving unit 1601 is further configured to receive the status data from the first terminal based on the channel management module, and send the status data to the information flow module;

[0833] The sending unit 1602 is further configured to execute, based on the information flow module and according to the status data, sending the status data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0834] In a possible implementation, the receiving unit 1601 is further configured to receive a container performance acquisition request of the second terminal through a fifth communication channel, where the container performance acquisition request is used to instruct to obtain performance data of the web page view mounted by the first page, and the fifth communication channel corresponds to a property panel of the second terminal, where the property panel is used to provide a function of web page view performance;

[0835] The sending unit 1602 is further configured to send the container performance acquisition request to the first terminal;

[0836] The receiving unit 1601 is further configured to receive the performance data of the webpage view from the first terminal;

[0837] The sending unit 1602 is further configured to send the performance data of the webpage view to the second terminal through the fifth communication channel.

[0838] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0839] The receiving unit 1601 is further configured to receive the status data from the first terminal based on the channel management module, and send the status data to the information flow module;

[0840] The sending unit 1602 is further configured to execute, based on the information flow module and according to the status data, sending the status data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

[0841] In a possible implementation, the receiving unit 1601 is further configured to receive, through a fifth communication channel, an application performance acquisition request of the second terminal, the application performance acquisition request being used to instruct acquisition of performance data of the target application, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing performance of the target application;

[0842] The sending unit 1602 is further configured to send the application performance acquisition request to the first terminal;

[0843] The receiving unit 1601 is further configured to receive the performance data of the target application from the first terminal;

[0844] The sending unit 1602 is further configured to send the performance data of the target application to the second terminal through the fifth communication channel;

[0845] In a possible implementation manner, there are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively;

[0846] The receiving unit 1601 is further configured to receive the performance data from the first terminal based on the channel management module and send the performance data to the information flow module;

[0847] The sending unit 1602 is further configured to execute, based on the information flow module and according to the performance data, sending the performance data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

[0848] Regarding the device 1600 in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.

[0849] Fig.17 is a block diagram of a page debugging device according to an exemplary embodiment. Fig.17 , applied to a second terminal, the device 1700 includes:

[0850] The receiving unit 1701 is configured to receive a debugging prompt message of the first terminal sent by the server through a third communication channel, wherein the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging, and the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message;

[0851] The sending unit 1702 is configured to execute, in response to the debugging operation on the first page, sending a debugging request to the server through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function;

[0852] The receiving unit 1701 is further configured to receive the debugging result of the first page sent by the server through the fourth communication channel.

[0853] In a possible implementation manner, the device 1700 further includes:

[0854] A first display unit is configured to be executed in the main panel to display the debugging options and the address information of the first page carried by the debugging prompt message;

[0855] The first display unit is further configured to display the debugging panel in response to a selection operation for the debugging option in the main panel, wherein the debugging panel includes a debugging function option, and the debugging function option is used to provide a function of generating the debugging request;

[0856] The sending unit 1702 is further configured to execute, in response to a selection operation on the debugging function option, sending the debugging request to the server through a fourth communication channel.

[0857] In a possible implementation manner, the main panel further includes an attribute acquisition option, and the attribute acquisition option corresponds to the address information;

[0858] The first display unit is further configured to execute, in response to a selection operation on the property acquisition option, display a property panel of the first page, the property panel being used to provide a function of a web page view state, the property panel including a container state acquisition option;

[0859] The sending unit 1702 is further configured to execute, in response to a selection operation on the container status acquisition option, sending a container status acquisition request to the server through a fifth communication channel, wherein the container status acquisition request is used to instruct to acquire status data of the webpage view mounted on the first page;

[0860] The receiving unit 1701 is further configured to receive the state data of the webpage view sent by the server through the fifth communication channel.

[0861] In a possible implementation manner, the device 1700 further includes:

[0862] The second display unit is configured to be executed in the property panel to display the status data of the web page view.

[0863] In a possible implementation, the property panel is further used to provide a function of web page view performance, and the property panel further includes a container performance acquisition option;

[0864] The sending unit 1702 is further configured to execute, in response to a selection operation on the container performance acquisition option, sending a container performance acquisition request to the server through the fifth communication channel, wherein the container performance acquisition request is used to instruct to acquire performance data of the webpage view mounted by the first page;

[0865] The receiving unit 1701 is further configured to receive the performance data of the webpage view sent by the server through the fifth communication channel.

[0866] In a possible implementation manner, the device 1700 further includes:

[0867] The third display unit is configured to be executed in the property panel to display the performance data of the web page view.

[0868] In a possible implementation manner, the property panel is further used to provide a function of the performance of the target application, and the property panel further includes an application performance acquisition option;

[0869] The sending unit 1702 is further configured to execute, in response to a selection operation on the application performance acquisition option, sending an application performance acquisition request to the server through the fifth communication channel, wherein the application performance acquisition request is used to instruct to acquire performance data of the target application;

[0870] The receiving unit 1701 is further configured to receive the performance data of the target application sent by the server through the fifth communication channel.

[0871] In a possible implementation manner, the device 1700 further includes:

[0872] The fourth display unit is configured to be executed in the property panel to display the performance data of the target application.

[0873] In a possible implementation manner, the property panel further includes a real time panel, and the real time panel is used to display the real time corresponding to the property data of the page. The device 1700 further includes:

[0874] The fifth display unit is configured to be executed in the real time panel to display the real time corresponding to the attribute data of the first page.

[0875] In a possible implementation manner, the property panel further includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, the offline package panel includes a run option, the run option is used to provide a function of running the offline page code; the device 1700 further includes:

[0876] The running unit is configured to execute the offline page code of the first page in response to the selection operation of the running option in the offline package panel.

[0877] In a possible implementation manner, the device 1700 further includes:

[0878] The sixth display unit is configured to display the debugging result of the first page in the debugging panel.

[0879] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.

[0880] Fig.18 It is a block diagram of an electronic device according to an exemplary embodiment. Fig.18The electronic device 1800 shown is configured as a first terminal or a second terminal, and the electronic device 1800 may be a portable mobile terminal, such as a smart phone, a tablet computer, a player, a notebook computer or a desktop computer. The electronic device 1800 may also be called a user device, a portable terminal, a laptop terminal, a desktop terminal or other names.

[0881] Typically, the electronic device 1800 includes: a processor 1801 and a memory 1802. In some embodiments, the processor 1801 may be integrated with a GPU, and the GPU is responsible for rendering and drawing the content to be displayed on the display screen. The memory 1802 may include one or more computer-readable storage media, and the computer-readable storage medium in the memory 1802 is used to store at least one instruction, and the at least one instruction is used to be executed by the processor 1801 to implement the page debugging method provided in the method embodiment of the present application.

[0882] In some embodiments, the electronic device 1800 may further optionally include: a peripheral device interface 1803 and at least one peripheral device. The processor 1801, the memory 1802 and the peripheral device interface 1803 may be connected via a bus or a signal line. Each peripheral device may be connected to the peripheral device interface 1803 via a bus, a signal line or a circuit board. Specifically, the peripheral device includes: at least one of a radio frequency circuit 1804, a display screen 1805 and a power supply 1806.

[0883] The peripheral device interface 1803 can be used to connect at least one peripheral device related to input / output (I / O) to the processor 1801 and the memory 1802. The radio frequency circuit 1804 is used to receive and transmit radio frequency (RF) signals, also known as electromagnetic signals. The radio frequency circuit 1804 communicates with the communication network and other communication devices through electromagnetic signals. The display screen 1805 is used to display the user interface (UI). The UI may include graphics, text, icons, videos and any combination thereof. When the display screen 1805 is a touch display screen, the display screen 1805 also has the ability to collect touch signals on the surface or above the surface of the display screen 1805. The touch signal can be input to the processor 1801 as a control signal for processing. At this time, the display screen 1805 can also be used to provide virtual buttons and / or virtual keyboards, also known as soft buttons and / or soft keyboards. The power supply 1806 is used to power the various components in the electronic device 1800.

[0884] In some embodiments, the electronic device 1800 further includes one or more sensors 1810 . The one or more sensors 1810 include but are not limited to: an acceleration sensor 1811 , a gyroscope sensor 1812 , and a pressure sensor 1813 .

[0885] The acceleration sensor 1811 can detect the magnitude of acceleration on the three coordinate axes of the coordinate system established by the electronic device 1800. The processor 1801 can control the display screen 1805 to display the user interface in a horizontal view or a vertical view according to the gravity acceleration signal collected by the acceleration sensor 1811.

[0886] The gyro sensor 1812 can detect the body direction and rotation angle of the electronic device 1800, and the gyro sensor 1812 can cooperate with the acceleration sensor 1811 to collect the user's 3D actions on the electronic device 1800. The processor 1801 can implement the following functions based on the data collected by the gyro sensor 1812: motion sensing (such as changing the UI according to the user's tilt operation) and inertial navigation.

[0887] The pressure sensor 1813 may be disposed on the side frame of the electronic device 1800 and / or the lower layer of the display screen 1805. When the pressure sensor 1812 is disposed on the side frame of the electronic device 1800, it may detect the user's holding signal of the electronic device 1800, and the processor 1801 may perform left and right hand recognition or shortcut operations according to the holding signal collected by the pressure sensor 1813. When the pressure sensor 1813 is disposed on the lower layer of the display screen 1805, the processor 1801 may control the operable controls on the UI interface according to the user's pressure operation on the display screen 1805.

[0888] Those skilled in the art will understand that Fig.18 The structure shown in the figure does not constitute a limitation on the electronic device 1800, and may include more or less components than those shown in the figure, or combine certain components, or adopt a different component arrangement.

[0889] Fig.19 is a block diagram of an electronic device provided in an embodiment of the present application, see Fig.19 , the electronic device 1900 is configured as a server, and the electronic device 1900 may have relatively large differences due to different configurations or performances, and may include one or more processors 1901 and one or more memories 1902, wherein the memory 1902 stores at least one program code, and the at least one program code is loaded and executed by the processor 1901 to implement the methods provided by the following various method embodiments. Of course, the electronic device 1900 may also have components such as a wired or wireless network interface, a keyboard, and an input and output interface for input and output, and the electronic device 1900 may also include other components for implementing device functions, which will not be described in detail here.

[0890] In an exemplary embodiment, a storage medium including instructions is also provided, such as a memory 804 including instructions, and the instructions can be executed by a processor in a computer device to complete the above method. Optionally, the storage medium can be a non-temporary computer-readable storage medium, for example, the non-temporary computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a tape, a floppy disk, and an optical data storage device. The computer device is the first terminal, the second terminal, or the server mentioned above.

[0891] In an exemplary embodiment, a computer program product is also provided, the computer program product includes a program code, the program code is stored in a computer-readable storage medium, a processor of a computer device reads the program code from the computer-readable storage medium, and the processor executes the program code, so that the computer device performs the above method. The computer device is the above-mentioned first terminal, second terminal or server.

[0892] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.

[0893] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims

1. A page debugging method, characterized in that: Applied to a first terminal, the method includes: In response to a debugging prompt operation on a first page in a target application, sending a debugging prompt message to a second terminal through a server, wherein the debugging prompt message is used to prompt that the first page in the target application supports debugging; receiving a debugging request from the second terminal from the server, wherein the debugging request is used to instruct to debug the first page; Sending the debugging request to the web view kernel through the first communication channel corresponding to the web view mounted on the first page, and the web view kernel debugging the first page based on the debugging request to obtain the debugging result of the first page, wherein the first communication channel is a communication channel between the operating system of the first terminal and the web view kernel, different web views correspond to different first communication channels, and the web view kernel is shared by the web views mounted on each page of each application in the first terminal; receiving, through the first communication channel corresponding to the web page view mounted on the first page, a debugging result of the first page sent by the web page view kernel; The debugging result of the first page is sent to the second terminal through the server.

2. The page debugging method according to claim 1, characterized in that: The method further comprises: In response to a debugging prompt operation on a first page in a target application, obtaining a web page view for mounting the first page; The first communication channel corresponding to the webpage view is created.

3. The page debugging method according to claim 2, characterized in that: The creating the first communication channel corresponding to the webpage view comprises: In response to a debugging prompt operation on a first page in a target application, acquiring address information of the first page, the address information including an identifier of the web page view; creating a first communication channel between the operating system and the web view kernel; A correspondence between the address information and the created first communication channel is established.

4. The page debugging method according to claim 3, characterized in that: In response to the debugging prompt operation on the first page in the target application, obtaining the address information of the first page includes: In response to a debugging prompt operation on a first page in a target application, an address acquisition request is sent to a web view kernel, wherein the address acquisition request is used to instruct acquisition of address information of a page in the target application that supports debugging and has been mounted in a web view; receiving address information of at least one second page from the web view kernel; Based on the identifier of the web page view, the address information of the first page is queried from the address information of the at least one second page.

5. The page debugging method according to claim 2, characterized in that: The first communication channel is a local socket; the method further comprises: Updating the communication protocol of the first communication channel from Hypertext Transfer Protocol to Network Socket Protocol; The sending the debugging request to the web page view kernel through the first communication channel corresponding to the web page view comprises: The debugging request is sent to the first communication channel through the network socket protocol.

6. The page debugging method according to any one of claims 1 to 5, characterized in that: The method further comprises: receiving a container status acquisition request from the second terminal from the server, wherein the container status acquisition request is used to instruct acquisition of status data of a webpage view mounted on the first page; Based on the container status acquisition request, acquiring status data of the webpage view; The state data of the webpage view is sent to the second terminal through the server.

7. The page debugging method according to any one of claims 1 to 5, characterized in that: The method further comprises: receiving a container performance acquisition request of the second terminal from the server, where the container performance acquisition request is used to instruct to acquire performance data of the web page view mounted on the first page; Based on the container performance acquisition request, acquiring performance data of the web page view; The performance data of the webpage view is sent to the second terminal through the server.

8. The page debugging method according to claim 7, characterized in that: The performance data of the web page view includes the amount of resources occupied by the web page view; The obtaining of the performance data of the web page view based on the container performance obtaining request includes: Based on the container performance acquisition request, the amount of resources occupied by the web page view is acquired from a memory analysis tool in the web page browser kernel of the first terminal.

9. The page debugging method according to any one of claims 1 to 5, characterized in that: The method further comprises: receiving an application performance acquisition request from the second terminal from the server, where the application performance acquisition request is used to instruct acquisition of performance data of the target application; Based on the application performance acquisition request, acquiring performance data of the target application; The performance data of the target application is sent to the server via the server.

10. The page debugging method according to claim 9, characterized in that: The performance data of the target application includes the amount of resources occupied by the target application; The acquiring the performance data of the target application based on the application performance acquisition request includes: Based on the application performance acquisition request, the amount of resources occupied by the target application is acquired from a debug memory information class in the operating system of the first terminal.

11. The page debugging method according to claim 1, characterized in that: The method further comprises: In response to a debugging prompt operation on a first page in a target application, a target script is injected into the page code of the first page, and the target script executes the steps of receiving a debugging request from the second terminal from the server, obtaining a debugging result of the first page based on the debugging request, and sending the debugging result of the first page to the second terminal through the server.

12. The page debugging method according to claim 11, characterized in that: The web page view mounted on the first page corresponds to a second communication channel, and the second communication channel is a communication channel between the server and the target script; The target script receiving the debugging request of the second terminal from the server includes: The target script receives a debugging request of the second terminal from the server through the second communication channel; The target script sending the debugging result of the first page to the second terminal through the server includes: The target script sends the debugging result of the first page to the server through the second communication channel, and the server sends the debugging result of the first page to the second terminal.

13. The page debugging method according to claim 12, characterized in that: The target script includes an information module and a target hijacking module, the target hijacking module includes a target hijacking method, and the target hijacking method is used to provide a page debugging function for the operating system of the first terminal; The target script receives a debugging request of the second terminal from the server, and based on the debugging request, obtains the debugging result of the first page, including: The information module receives a debugging request of the second terminal from the server through the second communication channel; The information module sends the debugging request to the target hijacking module; The target hijacking module obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

14. The page debugging method according to claim 13, characterized in that: The target script includes at least one proxy module and at least one specific hijacking module, each proxy module corresponds to a specific hijacking module, each specific hijacking module includes a specific hijacking method, and each specific hijacking method is used to provide a page debugging function for an operating system; The target hijacking module is one of the at least one specific hijacking module, and the target hijacking module corresponds to a target proxy module in the at least one proxy module; The information module sending the debugging request to the target hijacking module includes: The information module sends the debugging request to the target agent module; The target proxy module receives the debugging request and sends the received debugging request to the target hijacking module.

15. The page debugging method according to claim 13, characterized in that: The target hijacking module is a public hijacking module in the target script, the target hijacking method is a public hijacking method included in the public hijacking module, the public hijacking method is used to provide a page debugging function, and the page debugging function is applicable to multiple operating systems.

16. A page debugging method, characterized in that: Applied to a server, the method comprises: receiving a debugging prompt message from a first terminal, wherein the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging; sending the debugging prompt message to the second terminal via a third communication channel, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message; receiving a debugging request from the second terminal through a fourth communication channel, the debugging request being used to instruct debugging of the first page, the fourth communication channel corresponding to a debugging panel of the second terminal, the debugging panel being used to provide a page debugging function; Sending a debugging request of the second terminal to the first terminal; receiving a debugging result of the first page from the first terminal, wherein the debugging result is transmitted in the first terminal through a first communication channel corresponding to the web page view mounted by the first page, wherein the first communication channel is a communication channel between an operating system of the first terminal and a web page view kernel, and different web page views correspond to different first communication channels, and the web page view kernel is shared by web page views mounted by various pages of various applications in the first terminal; The debugging result of the first page is sent to the second terminal through the fourth communication channel.

17. The page debugging method according to claim 16, characterized in that: The server includes a channel management module, an information flow module and a first controller, wherein the first controller corresponds to a communication channel between the server and the first terminal; receiving a debugging request from the second terminal via a fourth communication channel; Sending a debugging request of the second terminal to the first terminal includes: The channel management module receives the debugging request of the second terminal through the fourth communication channel, and sends the debugging request to the information flow module; The information flow module sends the debugging request to the first controller according to the debugging request, and the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

18. The page debugging method according to claim 16, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; receiving a debugging prompt message from the first terminal; The sending the debugging prompt message to the second terminal through the third communication channel includes: The channel management module receives a debugging prompt message from the first terminal, and sends the debugging prompt message to the information flow module; The information flow module sends the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels according to the debugging prompt message, and the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

19. The page debugging method according to claim 16, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; receiving a debugging result of the first page from the first terminal; Sending the debugging result of the first page to the second terminal through the fourth communication channel includes: The channel management module receives the debugging result of the first page from the first terminal, and sends the debugging result to the information flow module; The information flow module sends the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels according to the debugging result, and the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

20. The page debugging method according to any one of claims 16 to 19, characterized in that: The method further comprises: receiving a container status acquisition request from the second terminal through a fifth communication channel, the container status acquisition request being used to instruct acquisition of status data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing a web page view status; Sending the container status acquisition request to the first terminal; receiving state data of the webpage view from the first terminal; The state data of the webpage view is sent to the second terminal through a fifth communication channel.

21. The page debugging method according to claim 20, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; receiving the state data of the webpage view from the first terminal; The sending the state data of the webpage view to the second terminal through the fifth communication channel includes: The channel management module receives the status data from the first terminal and sends the status data to the information flow module; The information flow module sends the status data to the second controller corresponding to the fifth communication channel among the multiple communication channels according to the status data, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

22. The page debugging method according to any one of claims 16-19, characterized in that: The method further comprises: receiving, via a fifth communication channel, a container performance acquisition request of the second terminal, the container performance acquisition request being used to instruct acquisition of performance data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of web page view performance; Sending the container performance acquisition request to the first terminal; receiving performance data of the webpage view from the first terminal; The performance data of the webpage view is sent to the second terminal through the fifth communication channel.

23. The page debugging method according to claim 22, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; receiving performance data of the webpage view from the first terminal; The sending the performance data of the webpage view to the second terminal through the fifth communication channel includes: The channel management module receives the performance data from the first terminal and sends the performance data to the information flow module; The information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels based on the performance data, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

24. The page debugging method according to any one of claims 16 to 19, characterized in that: The method further comprises: receiving, via a fifth communication channel, an application performance acquisition request of the second terminal, the application performance acquisition request being used to instruct acquisition of performance data of the target application, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing performance of the target application; Sending the application performance acquisition request to the first terminal; receiving performance data of the target application from the first terminal; The performance data of the target application is sent to the second terminal through the fifth communication channel.

25. The page debugging method according to claim 24, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; receiving performance data of the target application from the first terminal; Sending the performance data of the target application to the second terminal through the fifth communication channel includes: The channel management module receives the performance data from the first terminal and sends the performance data to the information flow module; The information flow module sends the performance data to the second controller corresponding to the fifth communication channel among the multiple communication channels based on the performance data, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

26. A page debugging method, characterized in that: Applied to the second terminal, the method includes: receiving, via a third communication channel, a debugging prompt message of the first terminal sent by the server, the debugging prompt message being used to prompt the first terminal that a first page in a target application supports debugging, the third communication channel corresponding to a main panel of the second terminal, the main panel being used to provide a function of processing the debugging prompt message; In response to a debugging operation on the first page, sending a debugging request to the server through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function; The debugging result of the first page sent by the server is received through the fourth communication channel, and the debugging result is transmitted in the first terminal through the first communication channel corresponding to the web page view mounted by the first page. The first communication channel is a communication channel between the operating system of the first terminal and the web page view kernel. Different web page views correspond to different first communication channels. The web page view kernel is shared by the web page views mounted by each page of each application in the first terminal.

27. The page debugging method according to claim 26, characterized in that: In response to the debugging operation on the first page, sending a debugging request to the server through the fourth communication channel includes: In the main panel, displaying debugging options and address information of the first page carried in the debugging prompt message; In response to a selection operation on the debugging option in the main panel, displaying the debugging panel, the debugging panel including debugging function options, the debugging function options being used to provide a function of generating the debugging request; In response to the selection operation of the debugging function option, the debugging request is sent to the server through a fourth communication channel.

28. The page debugging method according to claim 27, characterized in that: The main panel further includes an attribute acquisition option, and the attribute acquisition option corresponds to the address information, and the method further includes: In response to a selection operation of the property acquisition option, displaying a property panel of the first page, the property panel is used to provide a function of web page view state, and the property panel includes a container state acquisition option; In response to a selection operation on the container status acquisition option, sending a container status acquisition request to the server through a fifth communication channel, wherein the container status acquisition request is used to instruct acquisition of status data of the webpage view mounted on the first page; The state data of the webpage view sent by the server is received through the fifth communication channel.

29. The page debugging method according to claim 28, characterized in that: After receiving the state data of the webpage view sent by the server through the fifth communication channel, the method further includes: In the property panel, the status data of the web page view is displayed.

30. The page debugging method according to claim 28, characterized in that: The property panel is also used to provide a function of web page view performance, and the property panel also includes a container performance acquisition option; the method also includes: In response to a selection operation on the container performance acquisition option, sending a container performance acquisition request to the server through the fifth communication channel, wherein the container performance acquisition request is used to instruct to acquire performance data of the webpage view mounted on the first page; The performance data of the webpage view sent by the server is received through the fifth communication channel.

31. The page debugging method according to claim 30, characterized in that: After receiving the performance data of the webpage view sent by the server through the fifth communication channel, the method further includes: In the property panel, performance data of the web page view is displayed.

32. The page debugging method according to claim 28, characterized in that: The property panel is also used to provide a function of the performance of the target application, and the property panel also includes an application performance acquisition option; the method further includes: In response to a selection operation on the application performance acquisition option, sending an application performance acquisition request to the server through the fifth communication channel, wherein the application performance acquisition request is used to instruct to acquire performance data of the target application; The performance data of the target application sent by the server is received through the fifth communication channel.

33. The page debugging method according to claim 32, characterized in that: After receiving the performance data of the target application sent by the server through the fifth communication channel, the method further includes: In the property panel, performance data of the target application is displayed.

34. The page debugging method according to any one of claims 28 to 33, characterized in that: The property panel further includes a real time panel, and the real time panel is used to display the real time corresponding to the property data of the page. The method further includes: In the real time panel, the real time corresponding to the attribute data of the first page is displayed.

35. The page debugging method according to any one of claims 28 to 33, characterized in that: The property panel further includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, the offline package panel includes a run option, the run option is used to provide a function of running the offline page code; The method further comprises: In response to a selection operation on the run option in the offline package panel, the offline page code of the first page is run.

36. The page debugging method according to any one of claims 26-33, characterized in that: After receiving the debugging result of the first page sent by the server through the fourth communication channel, the method further includes: In the debugging panel, the debugging result of the first page is displayed.

37. A page debugging device, characterized in that: Applied to a first terminal, the device includes: A first sending unit is configured to execute a debugging prompt operation on a first page in a target application, and send a debugging prompt message to a second terminal through a server, wherein the debugging prompt message is used to prompt that the first page in the target application supports debugging; a receiving unit, configured to receive a debugging request of the second terminal from the server, wherein the debugging request is used to instruct to debug the first page; an acquiring unit, configured to execute a first communication channel corresponding to the web page view mounted on the first page, send the debugging request to the web page view kernel, and debug the first page based on the debugging request by the web page view kernel to obtain a debugging result of the first page, wherein the first communication channel is a communication channel between the operating system of the first terminal and the web page view kernel, different web page views correspond to different first communication channels, and the web page view kernel is shared by the web page views mounted on each page of each application in the first terminal; and receive the debugging result of the first page sent by the web page view kernel through the first communication channel corresponding to the web page view mounted on the first page; The second sending unit is configured to send the debugging result of the first page to the second terminal through the server.

38. The page debugging device according to claim 37, characterized in that: The device also includes a creation unit; The acquisition unit is further configured to execute, in response to a debugging prompt operation on a first page in the target application, acquire a web page view for mounting the first page; The creating unit is configured to execute creation of the first communication channel corresponding to the web page view.

39. The page debugging device according to claim 38, characterized in that: The creation unit comprises: an acquisition sub-sub-unit, configured to execute, in response to a debugging prompt operation on a first page in a target application, acquiring address information of the first page, the address information including an identifier of the web page view; A creation sub-sub-unit configured to execute creation of a first communication channel between the operating system and the web page view kernel; The creation sub-subunit is further configured to establish a corresponding relationship between the address information and the created first communication channel.

40. The page debugging device according to claim 39, characterized in that: The acquisition sub-subunit is configured to perform: In response to a debugging prompt operation on a first page in a target application, an address acquisition request is sent to a web view kernel, wherein the address acquisition request is used to instruct acquisition of address information of a page in the target application that supports debugging and has been mounted in a web view; receiving address information of at least one second page from the web view kernel; Based on the identifier of the web page view, the address information of the first page is queried from the address information of the at least one second page.

41. The page debugging device according to claim 39, characterized in that: The first communication channel is a local socket; the device further comprises: An updating unit, configured to update the communication protocol of the first communication channel from the Hypertext Transfer Protocol to the Network Socket Protocol; The second sending unit is further configured to send the debugging request to the first communication channel through the network socket protocol.

42. The page debugging device according to any one of claims 37-41, characterized in that: The receiving unit is further configured to receive a container status acquisition request of the second terminal from the server, wherein the container status acquisition request is used to instruct to acquire status data of the webpage view mounted on the first page; The acquisition unit is further configured to execute the state data of the webpage view based on the container state acquisition request; The second sending unit is further configured to send the state data of the webpage view to the second terminal through the server.

43. The page debugging device according to any one of claims 37-41, characterized in that: The receiving unit is further configured to receive a container performance acquisition request of the second terminal from the server, where the container performance acquisition request is used to instruct to acquire performance data of the web page view mounted on the first page; The acquisition unit is further configured to execute the performance data of the web page view based on the container performance acquisition request; The second sending unit is further configured to send the performance data of the web page view to the second terminal through the server.

44. The page debugging device according to claim 43, characterized in that: The performance data of the web page view includes the amount of resources occupied by the web page view; The acquisition unit is further configured to execute, based on the container performance acquisition request, to acquire the amount of resources occupied by the web page view from a memory analysis tool in the web page browser kernel of the first terminal.

45. The page debugging device according to any one of claims 37-41, characterized in that: The receiving unit is further configured to receive an application performance acquisition request of the second terminal from the server, where the application performance acquisition request is used to instruct to acquire performance data of the target application; The acquisition unit is further configured to execute, based on the application performance acquisition request, to acquire the performance data of the target application; The second sending unit is further configured to send the performance data of the target application to the server through the server.

46. ​​The page debugging device according to claim 45, characterized in that: The performance data of the target application includes the amount of resources occupied by the target application; The acquisition unit is further configured to execute, based on the application performance acquisition request, acquiring the amount of resources occupied by the target application from the debug memory information class in the operating system of the first terminal.

47. The page debugging device according to claim 37, characterized in that: The device also includes: The injection unit is configured to execute, in response to a debugging prompt operation on a first page in a target application, inject a target script into the page code of the first page, and the target script executes the steps of receiving a debugging request from the second terminal from the server, obtaining a debugging result of the first page based on the debugging request, and sending the debugging result of the first page to the second terminal through the server.

48. The page debugging device according to claim 47, characterized in that: The web page view mounted on the first page corresponds to a second communication channel, and the second communication channel is a communication channel between the server and the target script; The target script receiving the debugging request of the second terminal from the server includes: The target script receives a debugging request of the second terminal from the server through the second communication channel; The target script sending the debugging result of the first page to the second terminal through the server includes: The target script sends the debugging result of the first page to the server through the second communication channel, and the server sends the debugging result of the first page to the second terminal.

49. The page debugging device according to claim 48, characterized in that: The target script includes an information module and a target hijacking module, the target hijacking module includes a target hijacking method, and the target hijacking method is used to provide a page debugging function for the operating system of the first terminal; The target script receives a debugging request of the second terminal from the server, and based on the debugging request, obtains the debugging result of the first page, including: The information module receives a debugging request of the second terminal from the server through the second communication channel; The information module sends the debugging request to the target hijacking module; The target hijacking module obtains the debugging result of the first page based on the received debugging request and the target hijacking method.

50. The page debugging device according to claim 49, characterized in that: The target script includes at least one proxy module and at least one specific hijacking module, each proxy module corresponds to a specific hijacking module, each specific hijacking module includes a specific hijacking method, and each specific hijacking method is used to provide a page debugging function for an operating system; The target hijacking module is one of the at least one specific hijacking module, and the target hijacking module corresponds to a target proxy module in the at least one proxy module; The information module sending the debugging request to the target hijacking module includes: The information module sends the debugging request to the target agent module; The target proxy module receives the debugging request and sends the received debugging request to the target hijacking module.

51. The page debugging device according to claim 50, characterized in that: The target hijacking module is a public hijacking module in the target script, the target hijacking method is a public hijacking method included in the public hijacking module, the public hijacking method is used to provide a page debugging function, and the page debugging function is applicable to multiple operating systems.

52. A page debugging device, characterized in that: Applied to a server, the device comprises: A receiving unit is configured to receive a debugging prompt message from a first terminal, where the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging; a sending unit, configured to send the debugging prompt message to the second terminal through a third communication channel, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message; The receiving unit is further configured to receive a debugging request from the second terminal through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function; The sending unit is further configured to execute sending a debugging request of the second terminal to the first terminal; The receiving unit is further configured to receive a debugging result of the first page from the first terminal, wherein the debugging result is transmitted in the first terminal through a first communication channel corresponding to the web page view mounted by the first page, wherein the first communication channel is a communication channel between an operating system of the first terminal and a web page view kernel, and different web page views correspond to different first communication channels, and the web page view kernel is shared by web page views mounted by various pages of various applications in the first terminal; The sending unit is further configured to send the debugging result of the first page to the second terminal through the fourth communication channel.

53. The page debugging device according to claim 52, characterized in that: The server includes a channel management module, an information flow module and a first controller, wherein the first controller corresponds to a communication channel between the server and the first terminal; The receiving unit is further configured to receive a debugging request from the second terminal through a fourth communication channel based on the channel management module, and send the debugging request to the information flow module; The sending unit is further configured to execute, based on the information flow module, sending the debugging request to the first controller according to the debugging request, and the first controller notifies the channel management module to send the debugging request to the communication channel between the server and the first terminal.

54. The page debugging device according to claim 52, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; The receiving unit is further configured to receive a debugging prompt message from the first terminal based on the channel management module, and send the debugging prompt message to the information flow module; The sending unit is further configured to execute, based on the information flow module and according to the debugging prompt message, sending the debugging prompt message to the second controller corresponding to the third communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the debugging prompt message to the third communication channel.

55. The page debugging device according to claim 52, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; The receiving unit is further configured to receive a debugging result of the first page from the first terminal based on the channel management module, and send the debugging result to the information flow module; The sending unit is further configured to execute, based on the information flow module and according to the debugging result, sending the debugging result to the second controller corresponding to the fourth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the debugging result to the fourth communication channel.

56. The page debugging device according to any one of claims 52-55, characterized in that: The receiving unit is further configured to receive a container status acquisition request from the second terminal through a fifth communication channel, the container status acquisition request being used to instruct acquisition of status data of a web page view mounted on the first page, the fifth communication channel corresponding to a property panel of the second terminal, the property panel being used to provide a function of providing a web page view status; The sending unit is further configured to send the container status acquisition request to the first terminal; The receiving unit is further configured to receive the state data of the webpage view from the first terminal; The sending unit is further configured to send the state data of the webpage view to the second terminal through a fifth communication channel.

57. The page debugging device according to claim 56, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; The receiving unit is further configured to receive the status data from the first terminal based on the channel management module and send the status data to the information flow module; The sending unit is further configured to execute, based on the information flow module and according to the status data, sending the status data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

58. The page debugging device according to any one of claims 52-55, characterized in that: The receiving unit is further configured to receive a container performance acquisition request of the second terminal through a fifth communication channel, wherein the container performance acquisition request is used to instruct to obtain performance data of the web page view mounted by the first page, and the fifth communication channel corresponds to a property panel of the second terminal, and the property panel is used to provide a function of web page view performance; The sending unit is further configured to send the container performance acquisition request to the first terminal; The receiving unit is further configured to receive performance data of the webpage view from the first terminal; The sending unit is further configured to send the performance data of the web page view to the second terminal through the fifth communication channel.

59. The page debugging device according to claim 56, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; The receiving unit is further configured to receive the status data from the first terminal based on the channel management module and send the status data to the information flow module; The sending unit is further configured to execute, based on the information flow module and according to the status data, sending the status data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the status data to the fifth communication channel.

60. The page debugging device according to any one of claims 52-55, characterized in that: The receiving unit is further configured to receive an application performance acquisition request of the second terminal through a fifth communication channel, the application performance acquisition request is used to instruct to obtain performance data of the target application, the fifth communication channel corresponds to a property panel of the second terminal, and the property panel is used to provide a function of providing the performance of the target application; The sending unit is further configured to send the application performance acquisition request to the first terminal; The receiving unit is further configured to receive the performance data of the target application from the first terminal; The sending unit is further configured to send the performance data of the target application to the second terminal through the fifth communication channel.

61. The page debugging device according to claim 60, characterized in that: There are multiple communication channels between the server and the second terminal, and the server includes a channel management module, an information flow module, and multiple second controllers, and the multiple second controllers correspond to the multiple communication channels respectively; The receiving unit is further configured to receive the performance data from the first terminal based on the channel management module and send the performance data to the information flow module; The sending unit is further configured to execute, based on the information flow module and according to the performance data, sending the performance data to a second controller corresponding to the fifth communication channel among the multiple communication channels, and the second controller notifies the channel management module to send the performance data to the fifth communication channel.

62. A page debugging device, characterized in that: Applied to a second terminal, the device includes: a receiving unit configured to receive a debugging prompt message of a first terminal sent by a server through a third communication channel, wherein the debugging prompt message is used to prompt the first terminal that a first page in a target application supports debugging, wherein the third communication channel corresponds to a main panel of the second terminal, and the main panel is used to provide a function of processing the debugging prompt message; a sending unit configured to execute, in response to a debugging operation on the first page, sending a debugging request to the server through a fourth communication channel, wherein the debugging request is used to instruct to debug the first page, the fourth communication channel corresponds to a debugging panel of the second terminal, and the debugging panel is used to provide a page debugging function; The receiving unit is further configured to receive the debugging result of the first page sent by the server through the fourth communication channel, and the debugging result is transmitted in the first terminal through the first communication channel corresponding to the web page view mounted by the first page, the first communication channel is a communication channel between the operating system of the first terminal and the web page view kernel, different web page views correspond to different first communication channels, and the web page view kernel is shared by the web page views mounted by each page of each application in the first terminal.

63. The page debugging device according to claim 62, characterized in that: The device also includes: A first display unit is configured to be executed in the main panel and display the debugging options and the address information of the first page carried by the debugging prompt message; The first display unit is further configured to display the debugging panel in response to a selection operation for the debugging option in the main panel, wherein the debugging panel includes a debugging function option, and the debugging function option is used to provide a function of generating the debugging request; The sending unit is further configured to execute, in response to a selection operation on the debugging function option, sending the debugging request to the server through a fourth communication channel.

64. The page debugging device according to claim 63, characterized in that: The main panel further includes an attribute acquisition option, and the attribute acquisition option corresponds to the address information; The first display unit is further configured to display a property panel of the first page in response to a selection operation on the property acquisition option, wherein the property panel is used to provide a function of a web page view state, and the property panel includes a container state acquisition option; The sending unit is further configured to execute, in response to a selection operation on the container status acquisition option, sending a container status acquisition request to the server through a fifth communication channel, wherein the container status acquisition request is used to instruct to acquire status data of the webpage view mounted on the first page; The receiving unit is further configured to receive the state data of the webpage view sent by the server through the fifth communication channel.

65. The page debugging device according to claim 64, characterized in that: The device also includes: The second display unit is configured to be executed in the property panel to display the status data of the web page view.

66. The page debugging device according to claim 64, characterized in that: The property panel is also used to provide a function of web page view performance, and the property panel also includes a container performance acquisition option; The sending unit is further configured to execute, in response to a selection operation on the container performance acquisition option, sending a container performance acquisition request to the server through the fifth communication channel, wherein the container performance acquisition request is used to instruct to acquire performance data of the webpage view mounted by the first page; The receiving unit is further configured to receive the performance data of the web page view sent by the server through the fifth communication channel.

67. The page debugging device according to claim 66, characterized in that: The device also includes: The third display unit is configured to be executed in the property panel to display the performance data of the web page view.

68. The page debugging device according to claim 64, characterized in that: The property panel is also used to provide the function of the performance of the target application, and the property panel also includes an application performance acquisition option; The sending unit is further configured to execute, in response to a selection operation on the application performance acquisition option, sending an application performance acquisition request to the server through the fifth communication channel, wherein the application performance acquisition request is used to instruct to acquire performance data of the target application; The receiving unit is further configured to receive the performance data of the target application sent by the server through the fifth communication channel.

69. The page debugging device according to claim 68, characterized in that: The device also includes: The fourth display unit is configured to be executed in the property panel to display the performance data of the target application.

70. The page debugging device according to any one of claims 64-69, characterized in that: The attribute panel also includes a real time panel, and the real time panel is used to display the real time corresponding to the attribute data of the page. The device also includes: The fifth display unit is configured to be executed in the real time panel to display the real time corresponding to the attribute data of the first page.

71. The page debugging device according to any one of claims 64-69, characterized in that: The property panel further includes an offline package panel, the offline package panel is used to provide the offline page code of the first page, the offline package panel includes a run option, the run option is used to provide a function of running the offline page code; the device further includes: The running unit is configured to execute the offline page code of the first page in response to the selection operation of the running option in the offline package panel.

72. The page debugging device according to any one of claims 62-69, characterized in that: The device also includes: The sixth display unit is configured to display the debugging result of the first page in the debugging panel.

73. An electronic device, characterized in that: include: one or more processors; one or more memories for storing the one or more processor-executable instructions; The one or more processors are configured to execute the instructions to implement the page debugging method according to any one of claims 1 to 36.

74. A computer-readable storage medium, characterized in that When the instructions in the storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the page debugging method as described in any one of claims 1 to 36.

75. A computer program product, characterized in that When one or more instructions in the computer program product are executed by one or more processors of an electronic device, the electronic device is enabled to execute the page debugging method as described in any one of claims 1 to 36.