CN110795336A - Application program control method, device, equipment and readable storage medium - Google Patents

Application program control method, device, equipment and readable storage medium Download PDF

Info

Publication number
CN110795336A
CN110795336A CN201910911955.5A CN201910911955A CN110795336A CN 110795336 A CN110795336 A CN 110795336A CN 201910911955 A CN201910911955 A CN 201910911955A CN 110795336 A CN110795336 A CN 110795336A
Authority
CN
China
Prior art keywords
client
application program
running
service
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910911955.5A
Other languages
Chinese (zh)
Inventor
杨夏
周大军
张力柯
荆彦青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910911955.5A priority Critical patent/CN110795336A/en
Publication of CN110795336A publication Critical patent/CN110795336A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime

Abstract

The application discloses a control method, a control device, control equipment and a readable storage medium of an application program, and relates to the field of program design. The method comprises the following steps: receiving a service creation request sent by a program client; creating a service container according to the service creation request and acquiring the running data of the target application program from the application program client; inputting the running data into a target operation matching model to obtain target operation; and sending the target operation to the program client, and correspondingly controlling the running of the target application program. By presetting rules in the test server, when a target application program needs to be tested, only the program client needs to be accessed into the test server, a service container is created through the test server, and target operation is determined through the test server according to running data, and an AI system does not need to be configured in the program client for AI processing in the test process of the target application program, so that the AI processing efficiency is improved.

Description

Application program control method, device, equipment and readable storage medium
Technical Field
The embodiment of the application relates to the field of program design, in particular to a control method, a control device, control equipment and a readable storage medium of an application program.
Background
On terminals such as smartphones, tablets, etc., there are many applications with two-dimensional or three-dimensional virtual environments, such as: first-person shooter games (FPS), Simulation strategy games (SLG), and the like. In the application program, a user may control a virtual object to perform an operation in order to win a win, and when testing the application program, the user needs to rely on Artificial Intelligence (AI), which is a computer program system that responds in a human thinking manner to perform a corresponding action, and is widely applied to the fields of image recognition, voice recognition, natural language processing, expert systems, and the like.
In the related art, when an operation is performed through an AI, it is usually necessary to configure an internal AI system and an external AI system in an application, where the internal AI system is behaving immortal, lacks autonomy, and cannot adapt to an unknown situation, and the external AI uses a deep neural network and a reinforcement learning algorithm, to use a picture reality of a game or extracted features as input parameters of the neural network, to use a game operation as an output of the neural network, and to assist a user in controlling a virtual object with the game operation output by the neural network. The external AI is more complex in design and higher in development and maintenance cost; the peripheral AI implementation process is complex, the learning process is uncertain, and a large amount of time and samples are required for training and hyper-parameter adjustment attempts.
Disclosure of Invention
The embodiment of the application provides a control method, a control device, control equipment and a readable storage medium of an application program, and can solve the problem that when the application program is tested, a plurality of independent AI systems need to be designed for different application programs, and the process of executing operation through AI is complex. The technical scheme is as follows:
in one aspect, a method for controlling an application program is provided, and the method includes:
receiving a service creation request sent by an application program client, wherein the service creation request comprises an identifier of a target application program, and the target application program is operated in the program client;
creating a service container corresponding to the target application program based on the service creation request;
acquiring the running data of the target application program from the application program client;
acquiring a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program;
and sending the target operation instruction to the program client, wherein the target operation instruction is used for correspondingly controlling the running of the target application program.
In another aspect, there is provided an apparatus for controlling an application, the apparatus including:
the system comprises a receiving module, a service creating module and a service creating module, wherein the receiving module is used for receiving a service creating request sent by a program client by an application, the service creating request comprises an identification of a target application program, and the target application program is operated in the program client;
a creation module for creating a service container corresponding to the target application based on the service creation request;
the acquisition module is used for acquiring the running data of the target application program from the application program client;
the acquisition module is further used for acquiring a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program;
and the sending module is used for sending the target operation instruction to the application program client, and the target operation instruction is used for correspondingly controlling the running of the target application program.
In another aspect, a computer device is provided, which includes a processor and a memory, where at least one instruction, at least one program, a set of codes, or a set of instructions is stored in the memory, and the at least one instruction, the at least one program, the set of codes, or the set of instructions is loaded and executed by the processor to implement the control method of the application program as provided in the embodiments of the present application.
In another aspect, a computer-readable storage medium is provided, in which at least one instruction, at least one program, a set of codes, or a set of instructions is stored, which is loaded and executed by the processor to implement the control method of an application program as provided in the embodiments of the present application.
In another aspect, a computer program product is provided, which when run on a computer causes the computer to execute the control method of an application program as provided in the embodiments of the present application described above.
The beneficial effects brought by the technical scheme provided by the embodiment of the application at least comprise:
by configuring the operation matching models of at least two application programs in the test server, when a target application program needs to be tested, only an application program client operating the target application program needs to be accessed into the test server, a service container is created by the server, a target operation instruction is determined by the test server according to the operation data of the target application program, the target application program is controlled through the target operation instruction, an AI system does not need to be configured in the application program client aiming at the test process of the target application program for AI processing, the AI processing can be realized only by accessing the test server, and the AI processing efficiency is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a block diagram of a program test system provided in an exemplary embodiment of the present application;
FIG. 2 is a flowchart of a method for controlling an application provided by an exemplary embodiment of the present application;
FIG. 3 is a process flow diagram of a proxy client accessing a service container provided based on the embodiment shown in FIG. 2;
FIG. 4 is a schematic interface diagram for controlling the operation of a target application according to a received target operation, according to the embodiment shown in FIG. 2;
FIG. 5 is a schematic diagram of an AI algorithm corresponding to the FPS game provided based on the embodiment shown in FIG. 2;
FIG. 6 is a flowchart of a method for controlling an application provided by another exemplary embodiment of the present application;
FIG. 7 is a schematic diagram of information input operations at a service creation interface provided based on the embodiment shown in FIG. 6;
FIG. 8 is a schematic diagram of an AI operational framework provided based on the embodiment shown in FIG. 6;
FIG. 9 is a flowchart of a method for controlling an application provided in another exemplary embodiment of the present application;
FIG. 10 is a schematic diagram of a running video acquisition process of a target application provided based on the embodiment shown in FIG. 9;
FIG. 11 is a schematic diagram of the output results of a running service report provided based on the embodiment shown in FIG. 9;
fig. 12 is a schematic view of a video list corresponding to a completed service provided based on the embodiment shown in fig. 9;
fig. 13 is a block diagram of a control apparatus of an application according to an exemplary embodiment of the present application;
fig. 14 is a block diagram of a control apparatus of an application according to another exemplary embodiment of the present application;
fig. 15 is a block diagram of a control apparatus of an application according to another exemplary embodiment of the present application;
FIG. 16 is a block diagram of a server provided in an exemplary embodiment of the present application;
fig. 17 is a block diagram of a terminal according to an exemplary embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
First, a program test system according to an embodiment of the present application will be described. Referring to fig. 1, the program testing system 100 includes a testing server 110 and an application client 120;
the test server 110 is configured to provide the service container to the application client 120, that is, the test server 110 determines an operation performed in the application client 120, so as to control the application client 120 to perform a corresponding operation. Optionally, the test server 110 includes operation matching models corresponding to at least two application programs, where the operation matching models are used to match operations corresponding to operation data generated in the application programs, and as shown in fig. 1, the test server 110 includes an operation matching model a corresponding to an application program a and an operation matching model B corresponding to an application program B, which are described by taking the application program a as an example, the application program a is run in the application program client 120, the application program client 120 generates operation data when running the application program a and sends the operation data to the test server 110, the test server 110 matches the operation data with the operation matching model a to obtain corresponding target operations, and the test server 110 sends the target operations obtained by matching to the application program client 120, the application client 120 performs the target operation in the running application a, thereby implementing control of the application a.
It should be noted that the test server 110 may be a single server, or may be a server cluster composed of a plurality of servers; the test server 110 may be a physical server or a cloud server, which is not limited in this embodiment of the present application.
The application client 120 is configured to run an application and establish a connection with the test server 110, and optionally, the connection between the application client 120 and the test server 110 is established through a Transmission Control Protocol (TCP). Optionally, the application client 120 generates running data during running the application, sends the running data to the test server 110 for operation matching, and when receiving a target operation matched by the test server 110, executes the target operation for the application.
Optionally, as can be seen from fig. 1, the application client 120 includes a running client 121 and a proxy client 122, where the running client 121 is configured to run the application, and the proxy client 122 is configured to establish a connection with the running client 121, and optionally, both the running client 121 and the proxy client 122 have an automated testing framework integrated therein, and optionally, a part of the automated testing framework is integrated in the running client 121, and another part of the automated testing framework is integrated in the proxy client 122. The proxy client 122 calls a data interface in the running client 121 through the automation test framework to obtain running data of the application running in the running client 121. Alternatively, after obtaining the operation data from the operation client 121, the proxy client 122 sends the operation data to the test server 110 for operation matching.
It should be noted that the operating environment of the operating client 121 may be a terminal device such as a mobile phone, a tablet computer, a portable laptop computer, a desktop computer, and a smart watch, and may also be a simulator environment. Optionally, the runtime environment of the runtime client 121 supports debugging tools, such as: android Debug Bridge (ADB), and the runtime client 121 is integrated with a data interface.
Optionally, the proxy client 122 is deployed on a terminal or a virtual container directly connected to the execution environment of the execution client 121.
Next, an application scenario related to the embodiment of the present application is described, which is schematically described by taking an FPS game as an example, and the embodiment of the present application at least relates to the following application scenarios:
firstly, when testing a new version of the FPS, the FPS game is run in the application client, and a service creation request is sent to the test server through the application client, and the test server creates a service container corresponding to the FPS game according to the service creation request (where the test server includes an operation matching model corresponding to the FPS game). After the service container is created and obtained by the test server, obtaining running data for running the FPS game from the application program client, and matching the running data with the operation matching model to obtain an operation corresponding to the running data;
secondly, when the FPS game is initially put into application, the number of players is relatively small, and when the FPS game corresponds to the requirement of the number of single players, such as: when the number of the single game is not less than 80, when only 70 persons can be matched in the game-to-game, the FPS game is operated in an application program client (such as 10 virtual machines), a service creation request is sent to a test server through the application program client, and the test server creates a service container corresponding to the FPS game according to the service creation request (wherein the test server comprises an operation matching model corresponding to the FPS game). After the service container is created and obtained by the test server, obtaining running data for running the FPS game from the application program client, and matching the running data with the operation matching model, so as to obtain an operation corresponding to the running data, sending the matched operation to the application program client by the test server, and executing the operation in the running FPS game by the application program client, wherein the operation is as follows: if 10 virtual machines correspond to 10 virtual players to participate in the game play, the combination of 70 players actually participating in the game play realizes that 80 persons (70 real players and 10 virtual players) exist in the game play.
It should be noted that, in the above example, the test process and the participation process of the application program are taken as an example for explanation, and the control method of the application program provided in the embodiment of the present application may also be applied to other processes of the application program, which is not limited in this embodiment of the present application.
It should be noted that, in the above example, the application is described as an example of an FPS game, in practical operation, the application may also be implemented as a social application, a financial application, an instant messaging application, an efficiency management application, and the like, which is not limited in this embodiment of the present application.
With reference to the above implementation environment and application scenario, a control method of an application program involved in an embodiment of the present application is described, fig. 2 is a flowchart of a control method of an application program provided in an exemplary embodiment of the present application, and taking as an example that the method is applied to a test server shown in fig. 1, as shown in fig. 2, the method includes:
step 201, receiving a service creation request sent by an application client, where the service creation request includes an identifier of a target application.
Optionally, a target application program runs in the application program client, and the test server includes rules corresponding to at least two application programs, where the target application program corresponds to a preset rule, and optionally, the rule is used to match the operation instruction according to the running data.
Optionally, the application client includes an operation client and a proxy client, where the operation client has a target application installed and operated therein, the operation client and the proxy client have automation test frames integrated therein, and the proxy client obtains operation data from the operation client through the automation test frames.
Optionally, a service creation request is sent to the test server by the proxy client, where the service creation request includes the identifier of the target application program.
Step 202, creating a service container corresponding to the target application program based on the service creation request.
Optionally, an AI service management platform is provided in the test server, after a TCP connection is first established between the agent client and the test server, parameters such as a service IP, a port, a key value, and the like are applied from the test server through the TCP connection, and the service creation request is sent to the test server.
Optionally, the test server generates a check value, a service IP address, and a port number based on the service creation request, creates a service container according to the check value, the service IP address, and the port number, and verifies access legitimacy of the application client by using the check value, the service IP address, and the port number when receiving the connection request sent by the application client.
Referring to fig. 3, schematically, a flowchart of a process for accessing a service container by a proxy client according to an exemplary embodiment of the present application is shown in fig. 3, where the process includes: step 301, the agent client applies for obtaining a service IP, a port number, and a key value from the AI service management platform. Optionally, the service IP, the port number, and the key value are used to provide the resource corresponding to the service container to the proxy client. Step 302, fill in configuration parameters corresponding to the service creation request in the proxy client. Optionally, the configuration parameter includes an application identifier to be subjected to AI processing, such as: the name of the application, the identification code of the application, etc. Step 303, the agent client is connected with the running client running the application program. Optionally, the proxy client is connected with the running client through an automated testing framework. Step 304, the test function of the proxy client is started. Step 305, the proxy client accesses the service container provided by the test server.
Step 203, acquiring the running data of the target application program from the application program client.
Optionally, the running data is any form of data generated by the target application during the running process, such as: environment data in the virtual environment, data corresponding to the virtual object, progress data, video data, program run mode data, and the like.
Optionally, the running data is data in JavaScript Object Notation (JSON) format, which is abbreviated as JSON data.
Illustratively, the target application is implemented as an FPS game, and the operation data includes environment data of the virtual environment (e.g., enemy position, carrier position, door position, window position, house position, center position of the safety zone, radius of the safety zone), state data of the virtual object (e.g., position coordinates of the virtual object, angle of view of the virtual object, condition of holding the therapeutic item, life information, injury information, number of bullets of the gun being held), operation mode data of the FPS game, and the like.
Illustratively, in conjunction with the data types in the FPS game described above, JSON data acquired by the test server at a single time is as follows:
Figure BDA0002214959940000081
Figure BDA0002214959940000091
wherein GameMode is used to indicate that the game mode is PVP mode, GameState is used to indicate that the game state is StartGame (started) state, SelfPos is used to indicate position coordinates of a virtual object, wherein x-axis coordinates are 8.084824562072754, y-axis coordinates are-9.378540992736816, z-axis coordinates are-14.430070877075195, HurtDirection is used to indicate an attacked direction of the virtual object, RemainAmmo is used to indicate the number of remaining bullets of the virtual object gun, carrierpos is used to indicate a vehicle queue on the side of the virtual object, HasbloodPack is used to indicate that the virtual object holds a therapeutic article, playdirection is used to indicate an enemy direction on the side of the virtual object, selmappos is used to indicate coordinates of the virtual object in a game minimap, windowpos is used to indicate a window list of the virtual object, housepos list is used to indicate a house list of the virtual object, HP is used to indicate a life value of the virtual object, doorposefest is used to indicate a security list on the side of the virtual object, saeaa security area, the Radius represents the Radius of the safety zone, the Pos represents the coordinate of the center point of the safety zone, the DroppedPickUpList is used for representing a list of articles which can be picked up on the peripheral side of the virtual object, the Camp represents that the battle of the virtual object is Guarder, namely guardian, the EnemyPosList represents a list of the directions of enemies, and the Angley represents the directions of the enemies.
And 204, acquiring a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program.
Optionally, the preset rule is that the operation data is input into the target operation matching model and output to obtain the target operation instruction.
Optionally, the target operation matching model includes any one of a reinforcement learning model, a deep neural network model and a policy tree model, where the reinforcement learning model is a model obtained by training by defining a reward function and optimizing model parameters, the deep neural network model is a model obtained by training through sample operation data and sample operation, and the policy tree model is a model obtained by coding through a hard coding rule.
Optionally, inputting the operation data into a reinforcement learning model to obtain a target operation instruction; or inputting the operation data into the deep neural network model to obtain a target operation instruction; or inputting the operation data into the strategy tree model to obtain the target operation instruction.
Optionally, the test server includes rules corresponding to at least two applications, where the target and the application correspond to a preset rule.
Step 205, sending a target operation instruction to the application program client, where the target operation instruction is used to perform corresponding control on the operation of the target application program.
Optionally, after the test server obtains the target operation instruction in a matching manner, the target operation instruction is sent to the application program client, and the application program client performs corresponding control on the operation of the target application program according to the target operation instruction.
Optionally, the application client is configured to call a touch screen action interface according to the target operation instruction to perform corresponding control on the operation of the target application, where the touch screen action interface is used to release a contact in a program interface of the target application; or the application program client is used for calling a program action interface according to the target operation instruction to correspondingly control the running of the target application program, wherein the program action interface is used for controlling the movement of the object in the program interface.
Illustratively, taking the FPS game as an example for explanation, the target operation instruction includes any one of the following operations: 1. a RESET operation (ACTION _ ID _ RESET ═ 0); 2. firing operation (ACTION _ ID _ FIRE ═ 1); 3. throw grenade operation (ACTION _ ID _ SHOULEI ═ 2); 4. skip operation (ACTION _ ID _ JUMP ═ 3); 5. squat down operation (ACTION _ ID _ CROUCH ═ 4); 6. an ACTION _ ID _ read ═ 5 bullet loading operation; 7. an aiming operation (ACTION _ ID _ ADS ═ 6); 8. WEAPON1 is switched (ACTION _ ID _ WEAPON1 ═ 7); 9. WEAPON2 is switched (ACTION _ ID _ WEAPON2 ═ 8); 10. parachute jumping operation (ACTION _ ID _ SKYDIVING ═ 9); 11. move operation (ACTION _ ID _ MOVING ═ 10); 12. a steering operation (ACTION _ ID _ TURNING ═ 11); 13. swimming operation (ACTION _ ID _ SWIM ═ 12); 14. medical operation (ACTION _ ID _ MED ═ 13); 15. an operation to open the door (ACTION _ ID _ OPENDOOR ═ 14); 16. a PICK-up operation (ACTION _ ID _ PICK 15); 17. driving operation (ACTION _ ID _ DRIVE ═ 16); 18. an get-off operation (ACTION _ ID _ GETOFF ═ 17); 19. opening backpack operation (ACTION _ ID _ OPENBAG ═ 18); 20. selecting WEAPON a in backpack (ACTION _ ID _ wear _ SLOT _ a 19); 21. a discard operation (ACTION _ ID _ DROPALL ═ 20); 22. close the back packet (ACTION _ ID _ closed tag ═ 21).
Optionally, the foregoing operations may be implemented by using a touch screen interface or an interface provided in the FPS game, including:
first, a touch screen action interface:
touchDown (contid, x, y), i.e., using the contid contact pressing coordinates (x, y);
touchMove (conticid, x, y), i.e. moving the conticid contact to coordinate (x, y);
touchup (contid), i.e., release the conticid contact.
Second, the game action interface:
set _ player _ rotation (x, y), i.e., the orientation of the virtual object to be moved to the (x, y) coordinate with the screen center as the origin.
Referring to fig. 4, when a target operation instruction 410 is received, a device touch screen event 421 is generated through the touch screen action interface 420, or a game client proxy interface 431 is called through the game action interface 430.
Illustratively, when a backpack opening operation is received, determining position coordinates corresponding to a backpack opening control in a user interface according to the backpack opening operation, and calling a touch screen interface to generate a touch screen event for the position coordinates corresponding to the backpack opening control; when receiving the object moving operation, generating a game action interface according to the object moving operation, and performing moving control on the virtual object through the game action interface.
To sum up, in the method for controlling an application program provided in the embodiment of the present application, by configuring the operation matching models of at least two application programs in the test server, when a target application program needs to be tested, only the application program client running the target application program needs to be accessed to the test server, the server creates the service container and determines a target operation instruction through the test server according to the running data of the target application program, the target application program is controlled through the target operation instruction, an AI system does not need to be configured for a test process of the target application program in the application program client, and the AI process can be implemented only by accessing the test server, so that the AI process efficiency is improved.
Schematically, the description is given by taking the FPS game and the policy tree model as an example, and an AI algorithm corresponding to the policy tree model is shown in fig. 5, and includes the following steps:
step 501, obtaining data in the game.
Optionally, the in-game data is the operation data provided in step 202.
Step 502, determine whether it is within the session.
Optionally, it is determined whether currently in a game pair based on the game state.
And step 503, when in the opposite office, the basic operation is executed regularly.
Step 504, determine whether the virtual object is stuck.
And 505, when the virtual object is stuck, executing a random trapped-free action.
Optionally, the random escape action includes at least one of a move, jump, squat, and the like.
In step 506, when the virtual object is not stuck, it is determined whether the virtual object is in the safe area.
Optionally, it is determined whether the virtual object is within the safety zone according to the coordinates of the virtual object, the coordinates of the center point of the safety zone, and the inner diameter of the safety zone in the in-game data.
In step 507, when the virtual object is not in the safe area, the virtual object moves to the center of the safe area.
Alternatively, according to the rules of the FPS game, when the virtual object is not within the secure zone, the virtual environment exerts an influence of the life value on the virtual object, so that the virtual object is controlled to move toward the secure zone. Optionally, the virtual object is controlled to move towards the center of the safe area by taking the center of the safe area as a target.
And step 508, judging whether enemies exist near the virtual object when the virtual object is in the safe area.
In step 509, when there is an enemy in the vicinity of the virtual object, the enemy is attacked.
Alternatively, since the FPS game is a method of winning by a deprecated enemy, when an enemy is present nearby, the enemy is attacked.
And step 510, when no enemy exists near the virtual object, judging whether doors and windows exist around the virtual object.
Step 511, when there is a window around the virtual object, moving towards the window.
Step 512, when there is no door or window around the virtual object, determine whether there is a carrier around the virtual object.
Step 513, when there is a carrier around the virtual object, moving towards the carrier.
In an optional embodiment, the service creation request further includes a target operation mode identifier and a creation time length, and the identifier of the target application program, the target operation mode identifier, and the creation time length are obtained by the application client when applying for creating the service, fig. 6 is a flowchart of a control method of the application program according to another exemplary embodiment of the present application, which is described by taking as an example that the method is applied to the application client and the test server shown in fig. 1, and as shown in fig. 6, the method includes:
step 601, the application client receives an information input operation in the service creation interface.
Optionally, the service creation interface is used for filling out a service requested by the application client. Optionally, the information input operation includes a filling operation of an identification of the target application program, a filling operation of an identification of the target operation mode, and a filling operation of a creation time length.
The identifier of the target application program is used for indicating the target application program corresponding to the AI service container, and the identifier of the target application program may be a name of the target application program or an identification code of the target application program; the target operation mode identifier is used for indicating an operation mode in the target application program in the process of performing the AI service container, such as: the target operation mode mark is used for indicating that the FPS game is operated in a tactical competitive mode; the creation time length is used to indicate the time length for the target application to apply the AI service container.
In step 602, the application client generates a service creation request according to the information input operation.
Optionally, the service creation request includes an identifier of the target application program, an identifier of a target operation mode, and a creation time length.
Optionally, the creation time length is used to indicate a required time length, which is applied by the application client, for creating the service container for the target application.
In step 603, the application client sends a service creation request to the test server.
For an example, taking a target application as an FPS game, please refer to fig. 7, where the service creation interface 700 includes a game name filling area 710, a game scene filling area 720, a service type selection area 730, and a creation duration filling area 740, after the user finishes filling the filling areas and selects a submit control 750, the application client generates a service creation request and sends the service creation request to the test server, a service container display interface 760 is displayed according to the creation of a service container corresponding to the FPS game by the test server, and the service container display interface 760 displays the operation situation 770 of the current service container of the FPS game.
Step 604, the test server receives a service creation request sent by the application client, where the service creation request includes an identifier of the target application.
Optionally, a target application program runs in the application program client, and the test server includes rules corresponding to at least two application programs.
Optionally, the application client includes an operation client and a proxy client, wherein a target application is installed and operated in the operation client, an automation test framework is integrated in the operation client and the proxy client, and the proxy client calls a data interface of the operation client through the automation test framework to obtain operation data from the operation client.
Optionally, a service creation request is sent to the test server by the proxy client, where the service creation request includes the identifier of the target application program.
Optionally, an AI service management platform is provided in the test server, after a TCP connection is first established between the agent client and the test server, parameters such as a service IP, a port number, a key value, and the like are applied from the test server through the TCP connection, and the service creation request is sent to the test server.
Step 605, the test server creates a service container corresponding to the target application program according to the service creation request, and times the creation duration of the service container.
Optionally, the test server creates a service container according to the service creation request, and dynamically allocates a service IP and a port to the successfully created service container. Optionally, the service IP and the port are recycled by the test server after the service container is used.
Step 606, when the timing duration does not reach the creation duration, the test server obtains the running data of the target application program from the application program client.
Optionally, the running data is any form of data generated by the target application during the running process, such as: environment data in the virtual environment, data corresponding to the virtual object, progress data, video data, program run mode data, and the like.
Optionally, the running data is data in JavaScript Object Notation (JSON) format, which is abbreviated as JSON data.
Optionally, the application client includes an operation client and a proxy client, where the operation client has a target application installed and operated therein, the operation client and the proxy client have automation test frames integrated therein, and the proxy client calls a data interface of the operation client through the automation test frame to obtain operation data from the operation client. Optionally, the test server obtains the running data of the target application program from the proxy client. Alternatively, the running data may be obtained by the agent client from the running client every preset time and sent to the test server.
Optionally, the test server may further obtain video frame data corresponding to interface display of the target application program in the running process from the application program client, perform image recognition on the video frame data, and extract running data of the target application program.
Step 607, when the timing duration reaches the creation duration, the test server finishes acquiring the running data of the target application program from the application program client.
Optionally, when the timing duration reaches the creation duration, the test server recovers the resources applied by the service container and destroys the service container.
Step 608, the test server determines a target sub-model corresponding to the target operation mode identification from the target operation matching model.
Optionally, the target operation matching model includes a sub-model corresponding to a program running mode, and optionally, the sub-models corresponding to different program running modes are different or the same.
And step 609, the test server inputs the running data into the target sub-model, and a target operation instruction corresponding to the running data is obtained through matching.
Optionally, the test server includes a training and running framework supporting pure visual recognition or running data, for example, when the framework is applied to game AI service provision, the framework mainly includes 4 processes as shown in fig. 8, which are: an Input Output (IO) process 801, a Management Center (MC) process 802, a game image recognition process 803, and an AI algorithm logic process 804, where the IO process 801 is responsible for functions such as communication with an application client and maintaining task information; the management center process 802 is responsible for functions such as data distribution, service management, result storage and reporting; the game image recognition process 803 is responsible for extracting running data from the game screenshot picture by using an image recognition technology, and optionally, the game image recognition process 803 is not configured with tasks because the running data is directly acquired from the running client through a data interface by the proxy client; the AI algorithm logic process 804 is used to process the operational data obtained from the game and output operational action instructions accordingly.
Step 610, the test server sends a target operation instruction to the application program client, where the target operation instruction is used to perform corresponding control on the operation of the target application program.
And 611, the application program client correspondingly controls the operation of the target application program according to the target operation instruction.
Optionally, please refer to step 204 above in the process of controlling the operation of the target application according to the target operation instruction, which is not described herein again.
To sum up, in the method for controlling an application program provided in the embodiment of the present application, by configuring the operation matching models of at least two application programs in the test server, when a target application program needs to be tested, only the application program client running the target application program needs to be accessed to the test server, the server creates the service container and determines a target operation instruction through the test server according to the running data of the target application program, the target application program is controlled through the target operation instruction, an AI system does not need to be configured for a test process of the target application program in the application program client, and the AI process can be implemented only by accessing the test server, so that the AI process efficiency is improved.
According to the method provided by the embodiment, the target operation mode identifier is set, so that the problems that a plurality of different operation modes exist in the application program, and the operation matching rules are different for different operation modes, so that the operation matching process cannot be realized by a single operation matching model are solved.
In an optional embodiment, the test server stores the video in the automatic running process of the target application program in the process of providing the service container, and sends the video to the application program client for displaying after the service container is finished. Fig. 9 is a flowchart of a control method for an application program according to another exemplary embodiment of the present application, which is described by way of example as the method is applied to a running client, a proxy client, and a test server, and as shown in fig. 9, the method includes:
in step 901, the proxy client sends a service creation request to the test server.
Alternatively, the generation process of the service creation request refers to steps 601 to 602 as above.
Step 902, the test server receives a service creation request sent by the proxy client, where the service creation request includes an identifier of a target application program.
Optionally, the test server includes rules corresponding to at least two applications.
Optionally, the application client includes an operation client and a proxy client, wherein a target application is installed and operated in the operation client, an automation test framework is integrated in the operation client and the proxy client, and the proxy client calls a data interface of the operation client through the automation test framework to obtain operation data from the operation client.
Optionally, a service creation request is sent to the test server by the proxy client, where the service creation request includes the identifier of the target application program.
Step 903, the test server creates a service container corresponding to the target application program according to the service creation request.
And 904, the proxy client acquires the running data of the target application program from the running client by calling a data interface.
Step 905, the test server obtains the operation data of the target application program from the proxy client according to the service creation request.
Optionally, the running data is any form of data generated by the target application during the running process, such as: environment data in the virtual environment, data corresponding to the virtual object, progress data, video data, program run mode data, and the like.
Optionally, the running data is data in JavaScript Object Notation (JSON) format, which is abbreviated as JSON data.
Step 906, the test server obtains a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program.
Optionally, the test server includes a training and running framework supporting pure visual recognition or running data, for example, when the framework is applied to game AI service provision, the framework mainly includes an input/output process, a management center process, a game image recognition process, and an AI algorithm logic process.
Step 907, the test server sends a target operation instruction to the proxy client, where the target operation instruction is used to correspondingly control the operation of the target application program.
In step 908, the proxy client sends the target operation instruction to the running client.
In step 909, the running client performs corresponding control on the running of the target application according to the target operation instruction.
Optionally, please refer to step 204 above in the process of controlling the operation of the target application according to the target operation instruction, which is not described herein again.
In step 910, the test server obtains the video frame of the target application program in the running process from the application program client according to the service creation request.
Step 911, the test server identifies the video frame to obtain video frame data corresponding to the video frame.
Illustratively, the target application program is implemented as a game, after a service container accesses the game, game data and picture frames are transmitted to the test server in real time, a management center process of the test server stores game videos in a background, and when a game is ended or a service container is ended, the game data and the picture frames are reported to a service container report background through a hypertext transfer Protocol (HTTP) interface, and after the service container report background is processed, the game data and the picture frames are output to a web page for display. Referring to fig. 10, the test server executes step 1010 to open a video file, where the video file is used to store game video. Step 1020, receiving a game screen. Step 1030, store the game screen to the video file. Step 1040, judge whether the office is over. And 1050, closing the video file when the game is finished. And step 1060, reporting to an AI service report background. Step 1070, the video is processed. Step 1080, web presentation.
In step 912, the test server stores the video frame data.
Step 913, a running video is generated from the stored video frame data.
And step 914, the test server issues the running video for running process display.
Optionally, in the process of servicing the container, the test server outputs a running service report, where the running service report includes a service progress and a running video of the application program, and referring to fig. 11, schematically, a test task list is displayed in the service report display interface 1110, and the test task list includes a progress display from a downloading process 1120, a running process 1130, a data processing process 1140, and a report generating process 1150 of the test task to the end 1160 of the test.
Optionally, after the running service is finished, the test server stores and displays the video of the running process of the target application program on the web page, and when the proxy client applies to the test server to view the video, the proxy client obtains the video through the web page to display the video.
Illustratively, referring to fig. 12, a video list 1211 corresponding to completed services is displayed in the page 1210, each video in the video list corresponds to an identifier, a version, a test ID, a creation time, and a video viewing control of an application program, and as shown in fig. 12, when a selection operation on the video viewing control 1220 is received, a video playing interface 1230 is displayed, and the video playing interface 1230 is used for playing video content 1231 corresponding to the video viewing control. Optionally, the user may also mark a certain video, or mark a video segment or a video frame in a certain video, to indicate that a vulnerability occurs at the marked place.
To sum up, in the method for controlling an application program provided in the embodiment of the present application, by configuring the operation matching models of at least two application programs in the test server, when a target application program needs to be tested, only the application program client running the target application program needs to be accessed to the test server, the server creates the service container and determines a target operation instruction through the test server according to the running data of the target application program, the target application program is controlled through the target operation instruction, an AI system does not need to be configured for a test process of the target application program in the application program client, and the AI process can be implemented only by accessing the test server, so that the AI process efficiency is improved.
Fig. 13 is a block diagram of a control apparatus of an application according to an exemplary embodiment of the present application, and as shown in fig. 13, the apparatus is described as being applied to the test server shown in fig. 1, and includes: a receiving module 1310, a creating module 1320, an obtaining module 1330, and a transmitting module 1340;
a receiving module 1310, configured to receive, by an application, a service creation request sent by a program client, where the service creation request includes an identifier of a target application program, and the program client runs the target application program;
a creating module 1320, configured to create a service container corresponding to the target application based on the service creation request;
an obtaining module 1330, configured to obtain, from an application client, operation data of the target application;
the obtaining module 1330 is further configured to obtain a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program;
the sending module 1340 is configured to send the target operation instruction to the application client, where the target operation instruction is used to correspondingly control the operation of the target application.
In an optional embodiment, the service creation request further includes: creating a time length;
the obtaining module 1330 includes:
a timing unit 1331, configured to time a creation duration of the service container, where the service container is used to establish a connection between the application client and the test server;
an obtaining unit 1332, configured to obtain the running data of the target application from the application client when a timing duration does not reach the creation duration;
the obtaining unit 1332 is further configured to end obtaining the running data of the target application from the application client when the timing duration reaches the creation duration.
In an optional embodiment, the service creation request further includes: creating a time length;
the obtaining module 1330 includes:
a timing unit 1331, configured to time a creation duration of the service container, where the service container is used to establish a connection between the application client and the test server;
an obtaining unit 1332, configured to, when the timing duration reaches the creation duration, recycle the resource applied by the service container and destroy the service container.
In an optional embodiment, the obtaining module 1330 is further configured to obtain, from the application client, a video frame of the target application in the running process according to the service creation request; identifying the video frame to obtain video frame data corresponding to the video frame; storing the video frame data; and generating a running video according to the stored video frame data.
In an optional embodiment, the application client includes an operation client and a proxy client, the target application is installed and operated in the operation client, an automation test framework is integrated in the operation client and the proxy client, and the proxy client calls a data interface of the operation client through the automation test framework to obtain the operation data from the operation client;
the obtaining module 1330 is further configured to obtain the operation data of the target application from the proxy client according to the service creation request.
In an optional embodiment, the obtaining module 1330 is further configured to input the operation data into a reinforcement learning model to obtain the target operation instruction, where the reinforcement learning model is trained by defining a reward function and optimizing model parameters;
or the like, or, alternatively,
the obtaining module 1330 is further configured to input the operation data into a deep neural network model to obtain the target operation instruction, where the deep neural network model is trained through sample operation data and sample operation;
or the like, or, alternatively,
the obtaining module 1330 is further configured to input the operation data into a policy tree model to obtain the target operation instruction, where the policy tree model is a model encoded by a hard coding rule.
In an optional embodiment, the creating module 1320 is further configured to generate a check value, a service IP address, and a port number based on the service creation request; creating the service container according to the check value, the service IP address and the port number; and when a connection request sent by an application program client is received, verifying the access validity of the application program client through the verification value, the service IP address and the port number.
Fig. 15 is a block diagram of a control apparatus for an application according to an exemplary embodiment of the present application, and as shown in fig. 15, the apparatus is described as being applied to an application client shown in fig. 1, and includes: a receiving module 1510, a generating module 1520, a transmitting module 1530, and a control module 1540;
a receiving module 1510, configured to receive an information input operation in a service creation interface, where the information input operation includes a filling operation on an identifier of a target application program, and the target application program is run in the application program client;
a generating module 1520, configured to generate a service creation request according to the information input operation, where the service creation request includes an identifier of the target application program;
a sending module 1530, configured to send the service creation request to a test server, where the test server is configured to create a service container corresponding to the target application according to the service creation request;
the sending module 1530 is further configured to send the running data of the target application program to the test server, where the test server is configured to obtain a target operation instruction corresponding to the running data according to the running data and a preset rule;
the receiving module 1510 is further configured to receive the target operation instruction sent by the test server;
the control module 1540 is configured to perform corresponding control on the target application according to the target operation instruction.
To sum up, according to the control device for an application program provided in the embodiment of the present application, by configuring the operation matching models of at least two application programs in the test server, when a target application program needs to be tested, only the application program client running the target application program needs to be accessed to the test server, the server creates the service container and determines a target operation instruction through the test server according to the running data of the target application program, the target application program is controlled through the target operation instruction, an AI system does not need to be configured for a test process of the target application program in the application program client, AI processing can be achieved only by accessing the test server, and AI processing efficiency is improved.
It should be noted that: the control device of the application program provided in the above embodiment is only illustrated by the division of the above functional modules, and in practical applications, the above functions may be distributed by different functional modules according to needs, that is, the internal structure of the device may be divided into different functional modules to complete all or part of the above described functions. In addition, the control device of the application program and the control method embodiment of the application program provided in the above embodiments belong to the same concept, and specific implementation processes thereof are detailed in the method embodiments and are not described herein again.
The application also provides a server, which comprises a processor and a memory, wherein at least one instruction is stored in the memory, and the at least one instruction is loaded and executed by the processor to realize the control method of the application program provided by the various method embodiments. It should be noted that the server may be a server as provided in fig. 16 below.
Referring to fig. 16, a schematic structural diagram of a server according to an exemplary embodiment of the present application is shown. Specifically, the method comprises the following steps: the server 1600 includes a Central Processing Unit (CPU)1601, a system memory 1604 that includes a Random Access Memory (RAM)1602 and a Read Only Memory (ROM)1603, and a system bus 1605 that connects the system memory 1604 and the central processing unit 1601. The server 1600 also includes a basic input/output system (I/O system) 1606, which facilitates transfer of information between devices within the computer, and a mass storage device 1607 for storing an operating system 1613, application programs 1614, and other program modules 1615.
The basic input/output system 1606 includes a display 1608 for displaying information and an input device 1609 such as a mouse, keyboard, etc. for user input of information. Wherein the display 1608 and input device 1609 are connected to the central processing unit 1601 by way of an input-output controller 1610 which is connected to the system bus 1605. The basic input/output system 1606 may also include an input-output controller 1610 for receiving and processing input from a number of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, input-output controller 1610 may also provide output to a display screen, a printer, or other type of output device.
The mass storage device 1607 is connected to the central processing unit 1601 by a mass storage controller (not shown) connected to the system bus 1605. The mass storage device 1607 and its associated computer-readable media provide non-volatile storage for the server 1600. That is, the mass storage device 1607 may include a computer-readable medium (not shown) such as a hard disk or a CD-ROI drive.
Without loss of generality, the computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that the computer storage media is not limited to the foregoing. The system memory 1604 and mass storage device 1607 described above may be collectively referred to as memory.
The memory stores one or more programs configured to be executed by the one or more central processing units 1601, the one or more programs including instructions for implementing the above-described training method of the machine translation model or the translation method based on the machine translation model, and the central processing unit 1601 executes the one or more programs to implement the control method of the application program provided by the above-described respective method embodiments.
The server 1600 may also operate with remote computers connected to the network through a network, such as the internet, according to various embodiments of the invention. That is, the server 1600 may be connected to the network 1612 through the network interface unit 1611 coupled to the system bus 1605, or the network interface unit 1611 may be used to connect to other types of networks or remote computer systems (not shown).
The memory further includes one or more programs, the one or more programs are stored in the memory, and the one or more programs include steps executed by the server in the control method for executing the application program provided by the embodiment of the present invention.
Fig. 17 is a block diagram illustrating a terminal 1700 according to an exemplary embodiment of the present invention. The terminal 1700 may be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio layer iii, motion video Experts compression standard Audio layer 3), an MP4 player (Moving Picture Experts Group Audio layer IV, motion video Experts compression standard Audio layer 4), a notebook computer, or a desktop computer. Terminal 1700 may also be referred to by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, and the like.
In general, terminal 1700 includes: a processor 1701 and a memory 1702.
The processor 1701 may include one or more processing cores, such as 4-core processors, 8-core processors, and the like. The processor 1701 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 1701 may also include a main processor, which is a processor for processing data in an awake state, also called a Central Processing Unit (CPU), and a coprocessor; a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 1701 may be integrated with a GPU (Graphics Processing Unit) that is responsible for rendering and rendering content that the display screen needs to display. In some embodiments, the processor 1701 may further include an AI (Artificial Intelligence) processor for processing computing operations related to machine learning.
The memory 1702 may include one or more computer-readable storage media, which may be non-transitory. The memory 1702 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in the memory 1702 is used to store at least one instruction for execution by the processor 1701 to implement the control method for an application program provided by the method embodiments of the present application.
In some embodiments, terminal 1700 may also optionally include: a peripheral interface 1703 and at least one peripheral. The processor 1701, memory 1702 and peripheral interface 1703 may be connected by buses or signal lines. Various peripheral devices may be connected to peripheral interface 1703 by a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of a radio frequency circuit 1704, a touch display screen 1705, a camera 1706, an audio circuit 1707, a positioning component 1708, and a power source 1709.
The peripheral interface 1703 may be used to connect at least one peripheral associated with I/O (Input/Output) to the processor 1701 and the memory 1702. In some embodiments, the processor 1701, memory 1702, and peripheral interface 1703 are integrated on the same chip or circuit board; in some other embodiments, any one or both of the processor 1701, the memory 1702, and the peripheral interface 1703 may be implemented on separate chips or circuit boards, which are not limited in this embodiment.
The Radio Frequency circuit 1704 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuit 1704 communicates with a communication network and other communication devices via electromagnetic signals. The rf circuit 1704 converts the electrical signal into an electromagnetic signal for transmission, or converts the received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 1704 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuit 1704 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: the world wide web, metropolitan area networks, intranets, generations of mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the rf circuit 1704 may further include NFC (Near Field Communication) related circuits, which are not limited in this application.
The display screen 1705 is used to display a UI (user interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display screen 1705 is a touch display screen, the display screen 1705 also has the ability to capture touch signals on or above the surface of the display screen 1705. The touch signal may be input as a control signal to the processor 1701 for processing. At this point, the display 1705 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, display 1705 may be one, providing the front panel of terminal 1700; in other embodiments, display 1705 may be at least two, each disposed on a different surface of terminal 1700 or in a folded design; in still other embodiments, display 1705 may be a flexible display disposed on a curved surface or a folded surface of terminal 1700. Even further, the display screen 1705 may be arranged in a non-rectangular irregular figure, i.e., a shaped screen. The Display screen 1705 may be made of LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), or the like.
The camera assembly 1706 is used to capture images or video. Optionally, camera assembly 1706 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 1706 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
The audio circuit 1707 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, inputting the electric signals into the processor 1701 for processing, or inputting the electric signals into the radio frequency circuit 1704 for voice communication. For stereo capture or noise reduction purposes, multiple microphones may be provided, each at a different location of terminal 1700. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 1701 or the radio frequency circuit 1704 into sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, the audio circuitry 1707 may also include a headphone jack.
The positioning component 1708 is used to locate the current geographic location of the terminal 1700 to implement navigation or LBS (location based Service). The positioning component 1708 may be based on a GPS (global positioning System) in the united states, a beidou System in china, or a galileo System in russia.
Power supply 1709 is used to power the various components in terminal 1700. The power supply 1709 may be ac, dc, disposable or rechargeable. When the power supply 1709 includes a rechargeable battery, the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery. The wired rechargeable battery is a battery charged through a wired line, and the wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, terminal 1700 also includes one or more sensors 1710. The one or more sensors 1710 include, but are not limited to: acceleration sensor 1711, gyro sensor 1712, pressure sensor 1713, fingerprint sensor 1714, optical sensor 1715, and proximity sensor 1716.
The acceleration sensor 1711 can detect the magnitude of acceleration on three coordinate axes of the coordinate system established with the terminal 1700. For example, the acceleration sensor 1711 may be used to detect components of gravitational acceleration in three coordinate axes. The processor 1701 may control the touch display screen 1705 to display a user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 1711. The acceleration sensor 1711 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 1712 may detect a body direction and a rotation angle of the terminal 1700, and the gyro sensor 1712 may cooperate with the acceleration sensor 1711 to acquire a 3D motion of the user on the terminal 1700. The processor 1701 may perform the following functions based on the data collected by the gyro sensor 1712: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
Pressure sensors 1713 may be disposed on the side frames of terminal 1700 and/or underlying touch display 1705. When the pressure sensor 1713 is disposed on the side frame of the terminal 1700, the user's grip signal to the terminal 1700 can be detected, and the processor 1701 performs left-right hand recognition or shortcut operation according to the grip signal collected by the pressure sensor 1713. When the pressure sensor 1713 is disposed at the lower layer of the touch display screen 1705, the processor 1701 controls the operability control on the UI interface according to the pressure operation of the user on the touch display screen 1705. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 1714 is configured to capture a fingerprint of the user, and the processor 1701 is configured to identify the user based on the fingerprint captured by the fingerprint sensor 1714, or the fingerprint sensor 1714 is configured to identify the user based on the captured fingerprint. Upon identifying that the user's identity is a trusted identity, the processor 1701 authorizes the user to perform relevant sensitive operations including unlocking the screen, viewing encrypted information, downloading software, paying for and changing settings, etc. Fingerprint sensor 1714 may be disposed on the front, back, or side of terminal 1700. When a physical key or vendor Logo is provided on terminal 1700, fingerprint sensor 1714 may be integrated with the physical key or vendor Logo.
The optical sensor 1715 is used to collect the ambient light intensity. In one embodiment, the processor 1701 may control the display brightness of the touch display screen 1705 based on the ambient light intensity collected by the optical sensor 1715. Specifically, when the ambient light intensity is high, the display brightness of the touch display screen 1705 is increased; when the ambient light intensity is low, the display brightness of the touch display screen 1705 is turned down. In another embodiment, the processor 1701 may also dynamically adjust the shooting parameters of the camera assembly 1706 according to the ambient light intensity collected by the optical sensor 1715.
Proximity sensors 1716, also known as distance sensors, are typically disposed on the front panel of terminal 1700. Proximity sensor 1716 is used to gather the distance between the user and the front face of terminal 1700. In one embodiment, when proximity sensor 1716 detects that the distance between the user and the front surface of terminal 1700 is gradually reduced, processor 1701 controls touch display 1705 to switch from a bright screen state to a dark screen state; when proximity sensor 1716 detects that the distance between the user and the front surface of terminal 1700 is gradually increased, processor 1701 controls touch display 1705 to switch from the breath-screen state to the bright-screen state.
Those skilled in the art will appreciate that the architecture shown in fig. 17 is not intended to be limiting with respect to terminal 1700, and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components may be employed.
An embodiment of the present application further provides a computer device, where the computer device includes a memory and a processor, where the memory stores at least one instruction, at least one program, a code set, or an instruction set, and the at least one instruction, the at least one program, the code set, or the instruction set is loaded by the processor and implements the control method of the application program described in any one of fig. 2, fig. 6, and fig. 9.
An embodiment of the present application further provides a computer-readable storage medium, in which at least one instruction, at least one program, a code set, or a set of instructions is stored, and the at least one instruction, the at least one program, the code set, or the set of instructions is loaded and executed by the processor to implement the control method of the application program according to any one of fig. 2, fig. 6, and fig. 9.
The present application also provides a computer program product which, when run on a computer, causes the computer to execute to implement the control method of the application program as described in any of fig. 2, fig. 6 and fig. 9.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, which may be a computer readable storage medium contained in a memory of the above embodiments; or it may be a separate computer-readable storage medium not incorporated in the terminal. The computer readable storage medium has at least one instruction, at least one program, a set of codes, or a set of instructions stored therein, which is loaded and executed by the processor to implement the control method of the application program as described in any one of fig. 2, fig. 6, and fig. 9.
Optionally, the computer-readable storage medium may include: a Read Only Memory (ROM), a Random Access Memory (RAM), a Solid State Drive (SSD), or an optical disc. The Random Access Memory may include a resistive Random Access Memory (ReRAM) and a Dynamic Random Access Memory (DRAM). The above-mentioned serial numbers of the embodiments of the present application are merely for description and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only exemplary of the present application and should not be taken as limiting the present application, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (15)

1. A method for controlling an application, the method comprising:
receiving a service creation request sent by an application program client, wherein the service creation request comprises an identifier of a target application program;
creating a service container corresponding to the target application program based on the service creation request;
acquiring the running data of the target application program from the application program client;
acquiring a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program;
and sending the target operation instruction to the program client, wherein the target operation instruction is used for correspondingly controlling the running of the target application program.
2. The method of claim 1, wherein the service creation request further comprises: creating a time length;
the acquiring the operation data of the target application program from the application program client comprises:
timing the creating time length of the service container;
when the timing duration does not reach the creating duration, acquiring the running data of the target application program from the application program client;
and when the timing duration reaches the creation duration, finishing acquiring the running data of the target application program from the application program client.
3. The method of claim 1, wherein the service creation request further comprises: creating a time length;
the method further comprises the following steps:
timing a creation time duration of the service container,
and when the timing duration reaches the creation duration, recovering the resources applied by the service container and destroying the service container.
4. The method of any of claims 1 to 3, further comprising:
acquiring a video frame of the target application program in the running process according to the service creation request;
identifying the video frame to obtain video frame data corresponding to the video frame;
storing the video frame data;
and generating a running video according to the stored video frame data.
5. The method according to any one of claims 1 to 3, wherein the application client comprises a running client and a proxy client, the target application is installed and run in the running client, an automation test framework is integrated in the running client and the proxy client, and the proxy client calls a data interface of the running client through the automation test framework to obtain the running data from the running client;
the acquiring the operation data of the target application program from the application program client comprises:
and acquiring the operation data of the target application program from the proxy client according to the service creation request.
6. The method according to any one of claims 1 to 3, wherein the obtaining of the target operation instruction corresponding to the running data by using the preset rule corresponding to the target application program comprises:
inputting the operating data into a reinforcement learning model to obtain the target operating instruction, wherein the reinforcement learning model is trained by defining a reward function and optimizing model parameters;
or the like, or, alternatively,
inputting the operation data into a deep neural network model to obtain the target operation instruction, wherein the deep neural network model is trained through sample operation data and sample operation;
or the like, or, alternatively,
and inputting the operation data into a strategy tree model to obtain the target operation instruction, wherein the strategy tree model is obtained by coding through a hard coding rule.
7. The method according to any one of claims 1 to 3, wherein the creating a service container corresponding to the target application based on the service creation request includes:
generating a check value, a service IP address and a port number based on the service creation request;
creating the service container according to the check value, the service IP address and the port number;
and when a connection request sent by an application program client is received, verifying the access validity of the application program client through the verification value, the service IP address and the port number.
8. The method according to any one of claims 1 to 3,
the application program client is used for calling a touch screen action interface to correspondingly control the running of the target application program according to the target operation instruction;
or the like, or, alternatively,
and the application program client is used for calling a program action interface according to the target operation instruction to correspondingly control the running of the target application program, wherein the program action interface is used for controlling the movement of an object in the program interface.
9. An apparatus for controlling an application, the apparatus comprising:
the system comprises a receiving module, a service creating module and a service creating module, wherein the receiving module is used for receiving a service creating request sent by a program client by an application, the service creating request comprises an identification of a target application program, and the target application program is operated in the program client;
a creation module for creating a service container corresponding to the target application based on the service creation request;
the acquisition module is used for acquiring the running data of the target application program from the application program client;
the acquisition module is further used for acquiring a target operation instruction corresponding to the running data by using a preset rule corresponding to the target application program;
and the sending module is used for sending the target operation instruction to the application program client, and the target operation instruction is used for correspondingly controlling the running of the target application program.
10. The apparatus of claim 9, wherein the service creation request further comprises: creating a time length;
the acquisition module includes:
a timing unit, configured to time a creation duration of the service container, where the service container is used to establish a connection between the application client and the test server;
an obtaining unit, configured to obtain the running data of the target application from the application client when a timing duration does not reach the creation duration;
the obtaining unit is further configured to end obtaining the running data of the target application from the application client when the timing duration reaches the creation duration.
11. The apparatus of claim 9, wherein the service creation request further comprises: creating a time length;
the acquisition module includes:
a timing unit, configured to time a creation duration of the service container, where the service container is used to establish a connection between the application client and the test server;
and the acquisition unit is used for recovering the resources applied by the service container and destroying the service container when the timing duration reaches the creation duration.
12. The apparatus according to any one of claims 9 to 12, wherein the obtaining module is further configured to obtain, from the application client, a video frame of the target application in the running process according to the service creation request; identifying the video frame to obtain video frame data corresponding to the video frame; storing the video frame data; and generating a running video according to the stored video frame data.
13. The device according to any one of claims 9 to 12, wherein the application client includes a running client and a proxy client, the running client has the target application installed and running therein, the running client and the proxy client have an automated testing framework integrated therein, and the proxy client calls a data interface of the running client through the automated testing framework to obtain the running data from the running client;
the obtaining module is further configured to obtain the operation data of the target application program from the proxy client according to the service creation request.
14. A computer device comprising a processor and a memory, said memory having stored therein at least one instruction, at least one program, set of codes or set of instructions, which is loaded and executed by said processor to implement a method of controlling an application program as claimed in any one of claims 1 to 8.
15. A computer-readable storage medium, in which at least one instruction, at least one program, a set of codes, or a set of instructions is stored, which is loaded and executed by a processor to implement a control method of an application program according to any one of claims 1 to 8.
CN201910911955.5A 2019-09-25 2019-09-25 Application program control method, device, equipment and readable storage medium Pending CN110795336A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910911955.5A CN110795336A (en) 2019-09-25 2019-09-25 Application program control method, device, equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910911955.5A CN110795336A (en) 2019-09-25 2019-09-25 Application program control method, device, equipment and readable storage medium

Publications (1)

Publication Number Publication Date
CN110795336A true CN110795336A (en) 2020-02-14

Family

ID=69439723

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910911955.5A Pending CN110795336A (en) 2019-09-25 2019-09-25 Application program control method, device, equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN110795336A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111341315A (en) * 2020-03-06 2020-06-26 腾讯科技(深圳)有限公司 Voice control method, device, computer equipment and storage medium
CN111416756A (en) * 2020-03-13 2020-07-14 深圳市腾讯信息技术有限公司 Protocol testing method, device, computer equipment and storage medium
CN111767178A (en) * 2020-05-20 2020-10-13 北京奇艺世纪科技有限公司 Physical machine performance testing method and device
CN112100076A (en) * 2020-09-24 2020-12-18 腾讯科技(深圳)有限公司 Game testing method, related device, equipment and storage medium
CN112148604A (en) * 2020-09-21 2020-12-29 京东数字科技控股股份有限公司 iOS software testing method, device, equipment and computer readable medium
CN112667313A (en) * 2020-12-23 2021-04-16 广州三七互娱科技有限公司 Process starting method, device and system
CN113297072A (en) * 2021-05-17 2021-08-24 阿里巴巴新加坡控股有限公司 Container testing method and device
CN113727406A (en) * 2020-05-21 2021-11-30 北京三快在线科技有限公司 Communication control method, device, equipment and computer readable storage medium
CN113778843A (en) * 2020-08-28 2021-12-10 北京同邦卓益科技有限公司 Application program testing method and device, electronic equipment and readable storage medium
CN114510282A (en) * 2021-12-15 2022-05-17 北京达佳互联信息技术有限公司 Operation method, device, equipment and storage medium of automation application
CN115941834A (en) * 2022-11-25 2023-04-07 深圳心启科技有限公司 Automatic operation method, device and equipment for smart phone and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104866414A (en) * 2014-02-24 2015-08-26 腾讯科技(深圳)有限公司 Method, device and system for testing application program
CN106294102A (en) * 2015-05-20 2017-01-04 腾讯科技(深圳)有限公司 The method of testing of application program, client, server and system
CN106502890A (en) * 2016-10-18 2017-03-15 乐视控股(北京)有限公司 Method for generating test case and system
CN109408384A (en) * 2018-10-16 2019-03-01 网易(杭州)网络有限公司 Test method, device, processor and the electronic device of software application
CN109446062A (en) * 2018-09-17 2019-03-08 华为技术有限公司 The method and apparatus of software debugging in cloud computing service
CN109582670A (en) * 2018-10-31 2019-04-05 深圳市元征科技股份有限公司 A kind of recommended method and relevant device of vehicle maintenance scheme
WO2019068760A1 (en) * 2017-10-05 2019-04-11 Koninklijke Philips N.V. A system and a method for improving reliability of medical imaging devices
CN110083541A (en) * 2019-04-30 2019-08-02 网易(杭州)网络有限公司 Game test method, device, computer storage medium and electronic equipment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104866414A (en) * 2014-02-24 2015-08-26 腾讯科技(深圳)有限公司 Method, device and system for testing application program
CN106294102A (en) * 2015-05-20 2017-01-04 腾讯科技(深圳)有限公司 The method of testing of application program, client, server and system
CN106502890A (en) * 2016-10-18 2017-03-15 乐视控股(北京)有限公司 Method for generating test case and system
WO2019068760A1 (en) * 2017-10-05 2019-04-11 Koninklijke Philips N.V. A system and a method for improving reliability of medical imaging devices
CN109446062A (en) * 2018-09-17 2019-03-08 华为技术有限公司 The method and apparatus of software debugging in cloud computing service
CN109408384A (en) * 2018-10-16 2019-03-01 网易(杭州)网络有限公司 Test method, device, processor and the electronic device of software application
CN109582670A (en) * 2018-10-31 2019-04-05 深圳市元征科技股份有限公司 A kind of recommended method and relevant device of vehicle maintenance scheme
CN110083541A (en) * 2019-04-30 2019-08-02 网易(杭州)网络有限公司 Game test method, device, computer storage medium and electronic equipment

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111341315A (en) * 2020-03-06 2020-06-26 腾讯科技(深圳)有限公司 Voice control method, device, computer equipment and storage medium
CN111341315B (en) * 2020-03-06 2023-08-04 腾讯科技(深圳)有限公司 Voice control method, device, computer equipment and storage medium
CN111416756A (en) * 2020-03-13 2020-07-14 深圳市腾讯信息技术有限公司 Protocol testing method, device, computer equipment and storage medium
CN111767178A (en) * 2020-05-20 2020-10-13 北京奇艺世纪科技有限公司 Physical machine performance testing method and device
CN111767178B (en) * 2020-05-20 2023-09-01 北京奇艺世纪科技有限公司 Physical machine performance test method and device
CN113727406B (en) * 2020-05-21 2022-11-29 北京三快在线科技有限公司 Communication control method, device, equipment and computer readable storage medium
CN113727406A (en) * 2020-05-21 2021-11-30 北京三快在线科技有限公司 Communication control method, device, equipment and computer readable storage medium
CN113778843B (en) * 2020-08-28 2024-04-16 北京同邦卓益科技有限公司 Application program testing method and device, electronic equipment and readable storage medium
CN113778843A (en) * 2020-08-28 2021-12-10 北京同邦卓益科技有限公司 Application program testing method and device, electronic equipment and readable storage medium
CN112148604A (en) * 2020-09-21 2020-12-29 京东数字科技控股股份有限公司 iOS software testing method, device, equipment and computer readable medium
CN112100076A (en) * 2020-09-24 2020-12-18 腾讯科技(深圳)有限公司 Game testing method, related device, equipment and storage medium
CN112667313B (en) * 2020-12-23 2023-04-21 广州三七互娱科技有限公司 Process starting method, device and system
CN112667313A (en) * 2020-12-23 2021-04-16 广州三七互娱科技有限公司 Process starting method, device and system
CN113297072A (en) * 2021-05-17 2021-08-24 阿里巴巴新加坡控股有限公司 Container testing method and device
CN113297072B (en) * 2021-05-17 2023-11-03 阿里巴巴新加坡控股有限公司 Container testing method and device
CN114510282A (en) * 2021-12-15 2022-05-17 北京达佳互联信息技术有限公司 Operation method, device, equipment and storage medium of automation application
CN114510282B (en) * 2021-12-15 2024-02-13 北京达佳互联信息技术有限公司 Method, device, equipment and storage medium for running automation application
CN115941834A (en) * 2022-11-25 2023-04-07 深圳心启科技有限公司 Automatic operation method, device and equipment for smart phone and storage medium
CN115941834B (en) * 2022-11-25 2024-04-02 深圳朴数智能科技有限公司 Automatic operation method, device, equipment and storage medium of smart phone

Similar Documents

Publication Publication Date Title
CN110795336A (en) Application program control method, device, equipment and readable storage medium
CN109091869B (en) Method and device for controlling action of virtual object, computer equipment and storage medium
CN109126129B (en) Method, device and terminal for picking up virtual article in virtual environment
CN109445662B (en) Operation control method and device for virtual object, electronic equipment and storage medium
CN110755841B (en) Method, device and equipment for switching props in virtual environment and readable storage medium
CN111045931B (en) Application program testing method, device, equipment and storage medium
CN111589136B (en) Virtual object control method and device, computer equipment and storage medium
CN110496392B (en) Virtual object control method, device, terminal and storage medium
CN111013142A (en) Interactive effect display method and device, computer equipment and storage medium
CN112494955A (en) Skill release method and device for virtual object, terminal and storage medium
CN111921197A (en) Method, device, terminal and storage medium for displaying game playback picture
CN110448908B (en) Method, device and equipment for applying sighting telescope in virtual environment and storage medium
CN111589167A (en) Event fighting method, device, terminal, server and storage medium
CN111672106B (en) Virtual scene display method and device, computer equipment and storage medium
CN111596838B (en) Service processing method and device, computer equipment and computer readable storage medium
CN111603771A (en) Animation generation method, device, equipment and medium
CN111760278A (en) Skill control display method, device, equipment and medium
CN112156464A (en) Two-dimensional image display method, device and equipment of virtual object and storage medium
CN111603770A (en) Virtual environment picture display method, device, equipment and medium
CN110837858A (en) Network model training method and device, computer equipment and storage medium
CN112569607A (en) Display method, device, equipment and medium for pre-purchased prop
CN111589116A (en) Method, device, terminal and storage medium for displaying function options
CN114130023A (en) Virtual object switching method, device, equipment, medium and program product
CN111672115B (en) Virtual object control method and device, computer equipment and storage medium
CN112274936A (en) Method, device, equipment and storage medium for supplementing sub-props of virtual props

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40018292

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200214

RJ01 Rejection of invention patent application after publication