CN116132490A - Remote debugging method and device of equipment and equipment - Google Patents
Remote debugging method and device of equipment and equipment Download PDFInfo
- Publication number
- CN116132490A CN116132490A CN202310087448.0A CN202310087448A CN116132490A CN 116132490 A CN116132490 A CN 116132490A CN 202310087448 A CN202310087448 A CN 202310087448A CN 116132490 A CN116132490 A CN 116132490A
- Authority
- CN
- China
- Prior art keywords
- internet
- port
- adb
- signaling channel
- equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000011664 signaling Effects 0.000 claims abstract description 65
- 238000012544 monitoring process Methods 0.000 claims abstract description 43
- 238000013507 mapping Methods 0.000 claims description 24
- 238000012360 testing method Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 18
- 238000003860 storage Methods 0.000 description 15
- 230000006872 improvement Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y10/00—Economic sectors
- G16Y10/75—Information technology; Communication
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y40/00—IoT characterised by the purpose of the information processing
- G16Y40/20—Analytics; Diagnosis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Debugging And Monitoring (AREA)
Abstract
The embodiment of the specification discloses a remote debugging method, a remote debugging device and equipment. By establishing a signaling channel with a server side; receiving an android debug ADB instruction forwarded by the server through the signaling channel; acquiring a monitoring port; and transmitting the ADB instruction to the monitoring port so that the Internet of things equipment can acquire and execute the ADB instruction from the monitoring port, thereby realizing the remote ADB debugging of the Internet of things equipment.
Description
Technical Field
The present disclosure relates to the field of internet technologies, and in particular, to a method, an apparatus, and a device for remote debugging of a device.
Background
With the development of the internet of things equipment, the hardware and software types of the internet of things equipment are more and more diversified. In some platforms where the ecological environment is complex, when they interface with multiple suppliers at the same time, the equipment provided by these suppliers has to be approved and commissioned both in hardware and software. Such acceptance and commissioning, if performed on-the-fly in a local area network, is obviously very labor intensive and inefficient.
Based on this, a convenient remote debugging scheme for the device is needed.
Disclosure of Invention
The embodiment of the specification provides a remote debugging scheme of equipment, which is used for solving the following technical problems: there is a need for a convenient remote commissioning solution for a device.
To solve the above technical problems, one or more embodiments of the present specification are implemented as follows:
in a first aspect, an embodiment of the present disclosure provides a remote debugging method of a device, applied to a client in an internet of things device, the method including: establishing a signaling channel with a server; receiving an android debug ADB instruction forwarded by the server through the signaling channel; acquiring a monitoring port; and transmitting the ADB instruction to the monitoring port so that the internet of things equipment obtains and executes the ADB instruction from the monitoring port.
In a second aspect, an embodiment of the present disclosure provides a remote debugging method of a device, applied to a server, where the method includes: establishing a signaling channel with a client in the Internet of things equipment; receiving an android debug ADB instruction sent by a debugging device; and forwarding the ADB instruction to the Internet of things equipment through the signaling channel.
In a third aspect, corresponding to the first aspect, an embodiment of the present disclosure provides a remote debugging device of a device, applied to a client in an internet of things device, where the device includes: the first building module is used for building a signaling channel with the server side; the first receiving module receives the android debug ADB instruction forwarded by the server through the signaling channel; the first acquisition module acquires a monitoring port; and the first sending module is used for transmitting the ADB instruction to the monitoring port so that the internet of things equipment can acquire and execute the ADB instruction from the monitoring port.
In a fourth aspect, an embodiment of the present disclosure provides a remote debugging device of an apparatus, applied to a server, where the device includes: the second building module is used for building a signaling channel with a client in the Internet of things equipment; the second acquisition module is used for receiving an android debug ADB instruction sent by the debugging equipment; and the second sending module forwards the ADB instruction to the Internet of things equipment through the signaling channel.
In a fifth aspect, embodiments of the present disclosure provide an electronic device, comprising:
at least one processor; the method comprises the steps of,
a memory communicatively coupled to the at least one processor; wherein,,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of the first or second aspect.
In a sixth aspect, embodiments of the present description provide a non-volatile computer storage medium having stored thereon computer-executable instructions that, when read by a computer in the storage medium, cause one or more processors to perform the method according to the first or second aspect.
The above-mentioned at least one technical solution adopted by one or more embodiments of the present disclosure can achieve the following beneficial effects: by establishing a signaling channel with a server side; receiving an android debug ADB instruction forwarded by the server through the signaling channel; acquiring a monitoring port; and transmitting the ADB instruction to the monitoring port so that the Internet of things equipment can acquire and execute the ADB instruction from the monitoring port, thereby realizing the remote ADB debugging of the Internet of things equipment and being more convenient.
Drawings
In order to more clearly illustrate the embodiments of the present description or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described below, it being obvious that the drawings in the following description are only some of the embodiments described in the present description, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a system architecture according to an embodiment of the present disclosure;
fig. 2 is a schematic flow chart of a remote debugging method of a device according to an embodiment of the present disclosure;
FIG. 3 is a diagram of a port mapping according to an embodiment of the present disclosure;
FIG. 4 is a flow engineering schematic diagram of another method for remote debugging of a device according to an embodiment of the present disclosure;
fig. 5 is a schematic structural diagram of a remote debugging device of an apparatus according to an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of a remote debugging device of another apparatus according to an embodiment of the present disclosure;
fig. 7 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
Detailed Description
The embodiment of the specification provides a remote debugging method, a remote debugging device, remote debugging equipment and a storage medium of the equipment.
In order to make the technical solutions in the present specification better understood by those skilled in the art, the technical solutions in the embodiments of the present specification will be clearly and completely described below with reference to the drawings in the embodiments of the present specification, and it is obvious that the described embodiments are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art based on the embodiments herein without making any inventive effort, shall fall within the scope of the present application.
With the development of the internet, the types of the internet of things equipment are also more and more diversified. This diversity is manifested in the diversity of hardware and software of the internet of things device (e.g., the operating system carried by the internet of things device). Then, when an open platform needs to dock multiple types of internet devices, it is unavoidable that these internet devices are compatible at the same time. Once the update occurs, it is necessary to debug (including test and acceptance, etc.) these different types of internet of things devices one by one.
The updating can be bidirectional, namely, after the hardware or software of the internet of things equipment is updated, the platform needs to be aligned for debugging; after relevant functions in the platform are updated, the internet of things equipment (possibly a plurality of internet of things equipment) which is in butt joint with the platform is debugged, and whether the updated functions are suitable for the internet of things equipment is checked. These internet of things devices often belong to different vendors and are widely distributed in physical space.
In the current state, the debugging of the device is usually performed by adopting An Zhuoqiao test (Android debug bridge, ADB) in the local area network, so that different manufacturers are often required to perform the test on the surface, and when the ecological environment of the platform is complex, the number of manufacturers is large, which requires a great deal of manpower and material resources, and is very inconvenient. Based on this, the present description embodiments provide a convenient remote debugging scheme for devices.
As shown in fig. 1, fig. 1 is a schematic architecture diagram of a system according to an embodiment of the present disclosure. In this schematic, three parts are included in total: the system comprises a client on the Internet of things equipment, a server on the management equipment and an ADB service.
In this case, there may be a plurality of different types of internet of things devices (for example, the internet of things device 1 and the internet of things device N) at the same time, and the same client is installed in each of these different types of internet of things devices.
The management device comprises a server corresponding to the client, and the management device communicates with the plurality of Internet of things devices through the server. In general, the management device and the internet of things device are in different places, and are difficult to directly connect through a local area network.
The ADB test equipment is also connected with the server side in the management platform, and a debugging personnel can send out a debugging instruction in the ADB test equipment and receive a returned debugging result for analysis. Furthermore, the ADB test device may be the same device as the management device. The management device can provide the function of the service end and the function of ADB test at the same time.
The client and the server in the foregoing system are described below, respectively.
In a first aspect, as shown in fig. 2, fig. 2 is a flow chart of a remote debugging method of a device provided in an embodiment of the present disclosure, where the method is applied to a client in an internet of things device, and the method includes:
s201, a signaling channel with a server is established.
The internet of things device in the embodiment of the present disclosure generally refers to an Android device, and hardware and software functions of the Android device are not specifically limited. The Android device can be pre-provided with the client with the corresponding function. The corresponding functions should include at least the following two functions: and establishing a signaling channel with the server side, and forwarding the ADB instruction to the Android device.
Signaling refers to control instructions in a communication system that can establish a temporary communication channel (i.e., signaling channel) between designated terminals (i.e., between a client and the management platform) and maintain proper operation of the network itself. The signaling is transmitted in compliance with certain conventions and regulations, i.e. signaling protocols and signaling modes, which may be predefined.
In the embodiment of the application, the signaling is transmitted through a pre-configured port number. For example, when the server is open to the outside, the port map may be in the form of (access port, internal port) by configuring the port map. The access port provides a function of interfacing with an external client, and the internal port provides a function of interfacing with an ADB debug service.
And providing a corresponding access port to the outside, establishing a signaling channel between the client and the server through the access port, and receiving and transmitting data of the client by the server through the access port. And the server forwards the data from the access port to the internal port through the port mapping and forwards the data to the ADB debugging equipment, so that a complete signaling channel is established.
As shown in fig. 3, fig. 3 is a schematic diagram of a port mapping according to an embodiment of the present disclosure. The port mapping can support the server to simultaneously open a plurality of external access ports. And, one internal port may also support mapping with multiple external ports at the same time.
S203, receiving the android debug ADB instruction forwarded by the server through the signaling channel.
As described above, the server side does not have an ADB function, and receives an android debug ADB instruction sent from the debug device and forwards the instruction to the server side through the signaling channel, and after the signaling channel is established, the ADB instruction sent from the debug device is accessed through an internal port of the server side and forwards the instruction to the client side through the signaling channel, and the client side receives the instruction.
S205, acquiring a monitoring port.
And monitoring a port, namely a port in the internet of things equipment, which monitors the execution process and the execution result by adopting an ADB program when the ADB command is executed. For example, in a typical default scenario, the ADB port may be 5555.
However, in practical application, in order to adapt to the diversity of the internet of things equipment, a user can configure the monitoring ports of most ADBs by himself, and the configuration result is locally saved or uploaded in advance.
Thus, when acquiring the monitoring port, the corresponding monitoring port can be directly acquired from the local. Or the user informs the monitoring port to the server in advance, the server performs configuration updating, acquires the updated monitoring port from the server, and stores the updated monitoring port locally, so that the updated monitoring port can be acquired locally.
For example, the listening port in the default manner may be "5555", but in some devices, the port may be occupied or disabled, and then, i.e. the listening port number may be configured in advance at the server as another port, and typically the other port may be a port that is less used, for example, a larger value of the port number "10001" may be used as the updated listening port, and the client may obtain the updated listening port 10001 and save it locally, so as to obtain the updated listening port 10001 locally when forwarding the ADB instruction.
In one embodiment, after the monitoring port is configured, the server side may further carry the monitoring port in the ADB instruction, so that the client side may directly obtain the monitoring port carried by the ADB instruction. In this embodiment, in order to achieve the ADB function, the internal ports configured in the port mapping are usually referred to as ADB listening ports.
For example, after the server has configured the port mapping (80,10001), the client communicates with the server through port 80, and at the same time, the server communicates with the debug apparatus through port 10001. In this case, the internal port number "10001" has identified the role of this signaling channel: the method is used for realizing ADB instruction debugging, so that the ADB instruction can carry an internal port number '10001' in port mapping configured by the server side, and the client side can realize ADB debugging by taking the carried internal port number '10001' as a monitoring port of the internet of things equipment when receiving the ADB instruction, thereby realizing accurate route distribution.
S207, the ADB instruction is transmitted to the monitoring port, so that the Internet of things equipment obtains and executes the ADB instruction from the monitoring port.
The ADB instructions may include, for example, startup and shutdown operation instructions of the device (including connect, view device, disconnect, restart, root, etc.), application operation instructions of the device (including, for example, view application, install/uninstall application, clear application data), log, screen capture/record, backup, and stress test, etc. Through these instructions, e.g. UI automation tests, debag tests, compatibility tests, etc. can be implemented.
After the internet of things device executes the instructions, corresponding execution results are generated, and then the client can acquire the execution results of the ADB instructions from the monitoring port; and the execution result is sent to the management platform through the signaling channel and is forwarded to the ADB debugging equipment by the management platform, so that remote debugging is realized.
The foregoing first section describes the execution of the client. In a second aspect, as shown in fig. 4, fig. 4 is a flow engineering schematic diagram of another remote debugging method of a device provided in an embodiment of the present disclosure, where the method is applied to a server, and the method includes:
s401, establishing a signaling channel with a client in the Internet of things equipment.
As previously described, the device on which the server is located may establish a signaling channel with the client in a variety of different forms.
Particularly, when the device where the server is located and the internet of things device are not capable of being connected through a local area network, in a specific embodiment, the signaling channel is implemented through the aforementioned port mapping. I.e. when the server is open to the outside, the form of the port mapping may be (access port, internal port) by configuring the port mapping. The access port provides a function of interfacing with an external client, and the internal port provides a function of interfacing with an ADB debug service. In other words, in this way, the signaling channel is established based on the "access ports" contained in the pre-configured port map.
S403, receiving an android debug ADB instruction sent by the debugging equipment.
The debugging equipment can simultaneously provide ADB debugging functions for a plurality of external Internet of things equipment. The equipment of the service end receives ADB instructions based on the communication connection established with the debugging equipment in advance. Such communication connections may be implemented based on ip addresses, domain names, or ports.
In an embodiment, the debugging device and the device where the server is located may be the same device, that is, the device where the server is located may also provide an ADB service to the outside. In this embodiment, the established signaling channel based on the port mapping can be actually implemented at the server by configuring two port numbers.
As mentioned above, the port mapping may be in the form of (access port, internal port), where when the debug device and the device where the service end is located may be the same device, the access port may be any port for providing a function of interfacing to the client, and the internal port is the port served by the ADB, where the port served by the ADB is generally a fixed port by default.
When the user needs to modify the PORT of the ADB service, a corresponding ADB command may be used to modify the PORT of the ADB service, for example, "add_adb_server_port, 10001" may be used to modify the PORT number of the ADB service to "10001".
S405, forwarding the ADB instruction to the Internet of things equipment through the signaling channel.
For example, when a signaling channel is established based on the port mapping. At this time, the instruction sent by the ADB service flows out through the internal port, and the server side can obtain the ADB instruction based on the segment port mapping, and send the ADB instruction through the external port through the port mapping, so that the ADB instruction is sent to the internet of things device based on the signaling channel established by the external port.
After the client in the internet of things equipment receives the ADB instruction, the ADB instruction can be executed on the equipment where the client is located, and a corresponding execution result is generated. And then, the execution result returned by the client can be received through the signaling channel, and the execution result is forwarded to the debugging equipment.
In one embodiment, the management platform may simultaneously interface with a system or application to multiple different internet of things devices (e.g., the same application a may be installed on each of the different internet of things devices), where the internet of things devices are in different physical spaces.
If the system or application iterates, the compatibility of the new credit on the devices needs to be tested, and in a conventional manner, the plurality of internet of things devices need to be tested one by one in the local area network. In the scheme of the application, the following method can be adopted: firstly, configuring the port mapping, and establishing a signaling channel with the equipment where the service end is located by the plurality of equipment through the port mapping; and further forwarding the ADB instruction to a plurality of corresponding Internet of things devices through the plurality of signaling channels respectively; correspondingly, forwarding the execution result to the debugging device comprises the following steps: and forwarding the received execution results to the debugging equipment so that the debugging equipment can test the compatibility of the internet of things equipment.
For example, three internet of things devices are currently located in Beijing, shanghai and Hangzhou respectively, the devices where the ADB service device and the service end are located are the same device, and the port of the ADB service defaults to 10001.
At this time, when the compatibility test needs to be performed on the three devices, one-to-one port mapping (80, 10001), (90, 10001), (100, 10001) may be preconfigured, and the three internet of things devices in beijing, shanghai and hangzhou access through three external ports respectively, so as to establish signaling connection with the server. The access port of Beijing is 80, the access port of Shanghai is 90, and the access port of Hangzhou is 100. The one-to-one correspondence here refers to the one-to-one correspondence between the access ports in the configured port map and the internet of things device.
When the ADB service sends an ADB instruction, the ADB instruction flows out through the port 10001 and is forwarded out through the ports 80, 90 and 100 simultaneously based on the three port maps, so that the three pieces of internet of things equipment can receive the ADB instruction through the respective channels and execute the ADB instruction.
After the execution result is generated, the client on the Internet of things equipment obtains the execution result based on the monitoring port, and returns the instruction result to the access port of the server based on the respective signaling channel. At this time, the server side sends the execution results received based on the access ports 80, 90 and 100 to the port 10001 through the port mapping, so that the ADB service can obtain the multiple execution results through the port 10001 at the same time, and test the compatibility of the multiple internet of things devices based on the execution results.
In addition, in the test mode of the compatibility of the plurality of internet of things devices, the internet of things device corresponding to the execution result can be identified through one-to-one correspondence of the external port number and the internet of things device. If the test result returned by the port 80 received by the debugging device fails, the internet of things device in Beijing can be rapidly positioned through the one-to-one correspondence, so that the rapid ADB compatibility test is realized
In a third aspect, corresponding to the first aspect, embodiments of the present disclosure further provide a remote debugging device of an apparatus. As shown in fig. 5, fig. 5 is a schematic structural diagram of a remote debugging device of an apparatus according to an embodiment of the present disclosure, where the remote debugging device is applied to a client in an internet of things device, and the device includes:
a first establishing module 501, which establishes a signaling channel with a server;
a first receiving module 503, configured to receive, through the signaling channel, an android debug ADB instruction forwarded by the server side;
a first obtaining module 505, configured to obtain a listening port;
and the first sending module 507 is used for transmitting the ADB instruction to the monitoring port so that the internet of things equipment can acquire and execute the ADB instruction from the monitoring port.
Optionally, the apparatus further includes an update module 509, where the server obtains an updated listening port and stores the updated listening port locally; accordingly, the first obtaining module 505 obtains the updated listening port from the local.
Optionally, when the android debug ADB instruction carries a listening port, the first obtaining module 505 obtains the listening port carried by the ADB instruction, where the listening port is determined based on a port mapping configured by the server.
Optionally, the first sending module 507 obtains an execution result of the ADB instruction from the listening port; and sending the execution result to the management platform through the signaling channel.
In a third aspect, corresponding to the second aspect, embodiments of the present disclosure further provide a remote debugging apparatus of another device. As shown in fig. 6, fig. 6 is a schematic structural diagram of a remote debugging device of another apparatus provided in an embodiment of the present disclosure, where the remote debugging device is applied to a server, and the device includes:
a second establishing module 601, configured to establish a signaling channel with a client in the internet of things device;
a second receiving module 603, configured to receive an android debug ADB instruction sent by the debug device;
and a second forwarding module 605 forwards the ADB instruction to the internet of things device through the signaling channel.
Optionally, the second establishing module 601 establishes a signaling channel with a client in the internet of things device based on a pre-configured port mapping.
Optionally, the second forwarding module 605 receives, through the signaling channel, an execution result returned by the client, and forwards the execution result to the debug apparatus.
Optionally, when there are multiple signaling channels, the second forwarding module 605 forwards the ADB instruction to a plurality of corresponding devices of the internet of things through the multiple signaling channels, and forwards the received execution results to the debugging device, so that the debugging device tests the compatibility of the plurality of devices of the internet of things.
As shown in fig. 7, fig. 7 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure, where the device includes:
at least one processor; the method comprises the steps of,
a memory communicatively coupled to the at least one processor; wherein,,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of the first or second aspect.
Based on the same idea, the embodiments of the present specification further provide a non-volatile computer storage medium corresponding to the above method, where computer executable instructions are stored, which when the computer reads the computer executable instructions in the storage medium, cause one or more processors to perform the method according to the first aspect or the second aspect.
In the 90 s of the 20 th century, improvements to one technology could clearly be distinguished as improvements in hardware (e.g., improvements to circuit structures such as diodes, transistors, switches, etc.) or software (improvements to the process flow). However, with the development of technology, many improvements of the current method flows can be regarded as direct improvements of hardware circuit structures. Designers almost always obtain corresponding hardware circuit structures by programming improved method flows into hardware circuits. Therefore, an improvement of a method flow cannot be said to be realized by a hardware entity module. For example, a programmable logic device (Programmable Logic Device, PLD) (e.g., field programmable gate array (Field Programmable Gate Array, FPGA)) is an integrated circuit whose logic function is determined by the programming of the device by a user. A designer programs to "integrate" a digital system onto a PLD without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Moreover, nowadays, instead of manually manufacturing integrated circuit chips, such programming is mostly implemented by using "logic compiler" software, which is similar to the software compiler used in program development and writing, and the original code before the compiling is also written in a specific programming language, which is called hardware description language (Hardware Description Language, HDL), but not just one of the hdds, but a plurality of kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), lava, lola, myHDL, PALASM, RHDL (Ruby Hardware Description Language), etc., VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog are currently most commonly used. It will also be apparent to those skilled in the art that a hardware circuit implementing the logic method flow can be readily obtained by merely slightly programming the method flow into an integrated circuit using several of the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, application specific integrated circuits (Application Specific Integrated Circuit, ASIC), programmable logic controllers, and embedded microcontrollers, examples of which include, but are not limited to, the following microcontrollers: ARC625D, atmel AT91SAM, microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic of the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller in a pure computer readable program code, it is well possible to implement the same functionality by logically programming the method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers, etc. Such a controller may thus be regarded as a kind of hardware component, and means for performing various functions included therein may also be regarded as structures within the hardware component. Or even means for achieving the various functions may be regarded as either software modules implementing the methods or structures within hardware components.
The system, apparatus, module or unit set forth in the above embodiments may be implemented in particular by a computer chip or entity, or by a product having a certain function. One typical implementation is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being functionally divided into various units, respectively. Of course, the functions of each element may be implemented in one or more software and/or hardware elements when implemented in the present specification.
It will be appreciated by those skilled in the art that the present description may be provided as a method, system, or computer program product. Accordingly, the present specification embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present description embodiments may take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The present description is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the specification. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises the element.
The description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for apparatus, devices, non-volatile computer storage medium embodiments, the description is relatively simple, as it is substantially similar to method embodiments, with reference to the section of the method embodiments being relevant.
The foregoing describes specific embodiments of the present disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
The foregoing is merely one or more embodiments of the present description and is not intended to limit the present description. Various modifications and alterations to one or more embodiments of this description will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement, or the like, which is within the spirit and principles of one or more embodiments of the present description, is intended to be included within the scope of the claims of the present description.
Claims (11)
1. A remote debugging method of a device, applied to a client in an internet of things device, the method comprising:
establishing a signaling channel with a server;
receiving an android debug ADB instruction forwarded by the server through the signaling channel;
acquiring a monitoring port;
and transmitting the ADB instruction to the monitoring port so that the Internet of things equipment can acquire and execute the ADB instruction from the monitoring port.
2. The method of claim 1, wherein the method further comprises:
acquiring an updated monitoring port from the server and locally storing the updated monitoring port;
correspondingly, acquiring the monitoring port includes: the updated listening port is obtained locally.
3. The method of claim 1, wherein when the android debug ADB instruction carries a snoop port, the obtaining a snoop port comprises:
and acquiring a monitoring port carried by the ADB instruction, wherein the monitoring port is determined based on port mapping configured by the server.
4. The method of claim 1, wherein the method further comprises:
acquiring an execution result of the ADB instruction from the monitoring port;
and sending the execution result to the management platform through the signaling channel.
5. A remote debugging method of equipment is applied to a server, and the method comprises the following steps:
establishing a signaling channel with a client in the Internet of things equipment;
receiving an android debug ADB instruction sent by a debugging device;
and forwarding the ADB instruction to the Internet of things equipment through the signaling channel.
6. The method of claim 5, establishing a signaling path with a client in an internet of things device, comprising:
and establishing a signaling channel with a client in the Internet of things equipment based on the pre-configured port mapping.
7. The method of claim 5, wherein the method further comprises:
and receiving an execution result returned by the client through the signaling channel, and forwarding the execution result to the debugging equipment.
8. The method of claim 7, wherein the forwarding the ADB instructions to the internet of things device via the signaling channel when there are multiple signaling channels comprises:
forwarding the ADB instruction to a plurality of corresponding Internet of things devices through the plurality of signaling channels respectively;
correspondingly, forwarding the execution result to the debugging device comprises the following steps: and forwarding the received execution results to the debugging equipment so that the debugging equipment can test the compatibility of the internet of things equipment.
9. A remote debugging apparatus of a device, applied to a client in an internet of things device, the apparatus comprising:
the first building module is used for building a signaling channel with the server side;
the first receiving module receives the android debug ADB instruction forwarded by the server through the signaling channel;
the first acquisition module acquires a monitoring port;
and the first sending module is used for transmitting the ADB instruction to the monitoring port so that the internet of things equipment can acquire and execute the ADB instruction from the monitoring port.
10. A remote debugging device of a device, applied to a server, the device comprising:
the second building module is used for building a signaling channel with a client in the Internet of things equipment;
the second acquisition module is used for receiving an android debug ADB instruction sent by the debugging equipment;
and the second sending module forwards the ADB instruction to the Internet of things equipment through the signaling channel.
11. An electronic device, comprising:
at least one processor; the method comprises the steps of,
a memory communicatively coupled to the at least one processor; wherein,,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1 to 8.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310087448.0A CN116132490A (en) | 2023-01-13 | 2023-01-13 | Remote debugging method and device of equipment and equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310087448.0A CN116132490A (en) | 2023-01-13 | 2023-01-13 | Remote debugging method and device of equipment and equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116132490A true CN116132490A (en) | 2023-05-16 |
Family
ID=86300715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310087448.0A Pending CN116132490A (en) | 2023-01-13 | 2023-01-13 | Remote debugging method and device of equipment and equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116132490A (en) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201858A (en) * | 2015-05-07 | 2016-12-07 | 阿里巴巴集团控股有限公司 | The test system of application program and control method thereof and device in mobile terminal |
CN107026764A (en) * | 2016-02-02 | 2017-08-08 | 腾讯科技(深圳)有限公司 | A kind of remote debugging method, equipment, server and system |
CN107463499A (en) * | 2017-08-08 | 2017-12-12 | 百度在线网络技术(北京)有限公司 | The long-range connection methods of ADB, device, equipment and storage medium |
US20180365133A1 (en) * | 2017-06-14 | 2018-12-20 | T-Mobile Usa, Inc. | Continuous integration testing for network-based applications |
CN109873728A (en) * | 2017-12-01 | 2019-06-11 | 腾讯科技(深圳)有限公司 | A kind of terminal test method, device and storage medium |
CN111026662A (en) * | 2019-12-06 | 2020-04-17 | 联陆智能交通科技(上海)有限公司 | Remote debugging method, system and medium for terminal equipment of Internet of things |
US10725890B1 (en) * | 2017-07-12 | 2020-07-28 | Amazon Technologies, Inc. | Program testing service |
CN111866083A (en) * | 2020-06-23 | 2020-10-30 | 北京三快在线科技有限公司 | Equipment debugging system and method, equipment to be debugged, remote debugging equipment and transfer server |
CN112491970A (en) * | 2020-11-09 | 2021-03-12 | 山东星宏电讯有限责任公司 | Remote debugging end deployment method based on virtual network link |
CN113852426A (en) * | 2021-09-24 | 2021-12-28 | 博鼎实华(北京)技术有限公司 | Remote testing method, device and system |
CN114741273A (en) * | 2021-01-07 | 2022-07-12 | 腾讯科技(深圳)有限公司 | Remote real mobile terminal testing method, device, storage medium and equipment |
-
2023
- 2023-01-13 CN CN202310087448.0A patent/CN116132490A/en active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201858A (en) * | 2015-05-07 | 2016-12-07 | 阿里巴巴集团控股有限公司 | The test system of application program and control method thereof and device in mobile terminal |
CN107026764A (en) * | 2016-02-02 | 2017-08-08 | 腾讯科技(深圳)有限公司 | A kind of remote debugging method, equipment, server and system |
US20180365133A1 (en) * | 2017-06-14 | 2018-12-20 | T-Mobile Usa, Inc. | Continuous integration testing for network-based applications |
US10725890B1 (en) * | 2017-07-12 | 2020-07-28 | Amazon Technologies, Inc. | Program testing service |
CN107463499A (en) * | 2017-08-08 | 2017-12-12 | 百度在线网络技术(北京)有限公司 | The long-range connection methods of ADB, device, equipment and storage medium |
CN109873728A (en) * | 2017-12-01 | 2019-06-11 | 腾讯科技(深圳)有限公司 | A kind of terminal test method, device and storage medium |
CN111026662A (en) * | 2019-12-06 | 2020-04-17 | 联陆智能交通科技(上海)有限公司 | Remote debugging method, system and medium for terminal equipment of Internet of things |
CN111866083A (en) * | 2020-06-23 | 2020-10-30 | 北京三快在线科技有限公司 | Equipment debugging system and method, equipment to be debugged, remote debugging equipment and transfer server |
CN112491970A (en) * | 2020-11-09 | 2021-03-12 | 山东星宏电讯有限责任公司 | Remote debugging end deployment method based on virtual network link |
CN114741273A (en) * | 2021-01-07 | 2022-07-12 | 腾讯科技(深圳)有限公司 | Remote real mobile terminal testing method, device, storage medium and equipment |
CN113852426A (en) * | 2021-09-24 | 2021-12-28 | 博鼎实华(北京)技术有限公司 | Remote testing method, device and system |
Non-Patent Citations (1)
Title |
---|
李星宇;: "智能移动终端的远程真机测试――云服务", 电子制作, no. 24, 26 December 2013 (2013-12-26) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106970873B (en) | On-line mock testing method, device and system | |
CN107168841B (en) | Remote testing method and device for mobile equipment | |
US11003668B2 (en) | Programming language independent software testing environment | |
CN111897740A (en) | User interface testing method and device, electronic equipment and computer readable medium | |
US20090036115A1 (en) | System and method for testing gsm modules | |
CN110764788B (en) | Cloud storage deployment method and device, computer equipment and readable storage medium | |
TWI684916B (en) | Function selection method and server | |
CN109639818A (en) | Service discovery method, device, server and storage medium under a kind of cloud environment | |
CN117075930B (en) | Computing framework management system | |
CN111209188A (en) | Testing method and device for distributed storage system | |
CN110083366B (en) | Application running environment generation method and device, computing equipment and storage medium | |
CN109324933A (en) | A kind of AEP memory reboot test method, device, terminal and storage medium | |
CN116132490A (en) | Remote debugging method and device of equipment and equipment | |
CN110244964B (en) | Operation and maintenance method, device and equipment based on operation and maintenance application | |
CN109582388B (en) | Parameter configuration method, device and equipment | |
CN116048977B (en) | Test method and device based on data reduction | |
CN110874322B (en) | Test method and test server for application program | |
CN115617648A (en) | Addressing test method and device, storage medium and electronic equipment | |
CN209821820U (en) | Interface conversion circuit | |
CN115208854B (en) | MLAG dynamic double-master detection method, device, equipment and medium based on DHCP | |
CN113064833A (en) | Single chip microcomputer simulation method, system, device, equipment and storage medium | |
CN115437551A (en) | Data cloning method, device, storage medium and computer program product | |
CN111427603A (en) | Application program upgrading method and device | |
CN111796864A (en) | Data verification method and device | |
CN112187759A (en) | Cross-network data transmission method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |