WO2021114854A1 - Engine isolation method and related apparatus - Google Patents

Engine isolation method and related apparatus Download PDF

Info

Publication number
WO2021114854A1
WO2021114854A1 PCT/CN2020/120768 CN2020120768W WO2021114854A1 WO 2021114854 A1 WO2021114854 A1 WO 2021114854A1 CN 2020120768 W CN2020120768 W CN 2020120768W WO 2021114854 A1 WO2021114854 A1 WO 2021114854A1
Authority
WO
WIPO (PCT)
Prior art keywords
engine
container
state
scene
switching instruction
Prior art date
Application number
PCT/CN2020/120768
Other languages
French (fr)
Chinese (zh)
Inventor
王力鹏
高凯
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2021114854A1 publication Critical patent/WO2021114854A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Definitions

  • the embodiments of the present application relate to the field of computer technology, and specifically relate to engine isolation.
  • Engine refers to the core components of some editable systems that have been written or some interactive real-time image applications. These systems can provide system developers with various tools needed to write applications. The purpose is to enable system developers Develop applications easily and quickly.
  • the embodiment of the present application provides an engine isolation method and related devices, which are used to switch the state between the first container and the second container through a first switching instruction in the same target application, thereby using the suspended state and the activated state. Switch between states to avoid running conflicts between the first engine and the second engine corresponding to the first container and the second container, and provide a way for multiple teams to use mutually advantageous engines to cooperate in the development of the same target application. Convenient.
  • an engine isolation method including:
  • the first scenario is running based on the first engine.
  • the first container corresponding to the first engine is in the activated state.
  • the first container contains the elements running by the first engine.
  • the switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
  • the state of the first container is switched from the active state to the suspended state, and the state of the second container is switched from the suspended state to the active state.
  • the second container corresponds to the second engine running the second scene ,
  • the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
  • an engine isolation device including:
  • the first acquiring unit is configured to acquire the first switching instruction in the first scene of the target application.
  • the first scene is running based on the first engine, the first container corresponding to the first engine is in an active state, and the first container contains the first The element of the engine running, the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
  • the first switching unit is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state according to the first switching instruction acquired by the first acquiring unit ,
  • the second container corresponds to the second engine running the second scene, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
  • the engine isolation device further includes:
  • the second acquiring unit is used to acquire in the second scene after the first switching unit switches the state of the first container from the active state to the suspended state, and switches the state of the second container from the suspended state to the active state A second switching instruction, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application;
  • the second switching unit is configured to switch the state of the second container from the active state to the suspended state according to the second switching instruction acquired by the second acquiring unit, and switch the state of the first container from the suspended state to the active state , Among them, the third scene is based on the operation of the first engine.
  • the engine isolation device further includes:
  • the trigger unit is used to trigger the keep-alive mechanism when the second switching unit switches the state of the second container from the active state to the suspended state.
  • the keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the third
  • the scene and the second scene are shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
  • the trigger unit is further used for:
  • the keep-alive mechanism When the first switching unit switches the state of the first container from the active state to the suspended state, the keep-alive mechanism is triggered.
  • the keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the first scene and the second scene
  • the download is shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
  • the first obtaining unit includes:
  • the first response module is configured to respond to user operations in the first scenario and obtain the first switching instruction.
  • the first obtaining unit includes:
  • the first acquiring module is configured to acquire the first switching instruction when the running time of the first engine running the first scene is greater than or equal to the first preset duration.
  • the second acquiring unit includes:
  • the second response module is configured to respond to user operations in the second scenario and obtain a second switching instruction.
  • the second acquiring unit includes:
  • the second acquiring module is configured to acquire the second switching instruction when the running time of the second engine running the second scene is greater than or equal to the second preset duration.
  • the target application is installed on the mobile terminal.
  • the target application includes a game application.
  • a third aspect of the present application provides a mobile terminal, including: a processor and a memory, the processor and the memory are connected by a communication bus; wherein the processor is used to call and execute a program stored in the memory; the memory is used to store a program, The program is used to implement the above-mentioned first aspect or any one of the possible implementation methods of the first aspect.
  • the fourth aspect of the present application provides a computer-readable storage medium.
  • the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to execute the method of the first aspect or any one of the possible implementation manners of the first aspect .
  • the fifth aspect of the embodiments of the present application provides a computer program product containing instructions, which when run on a computer or a processor, causes the computer or the processor to execute the method of any one of the foregoing aspects.
  • the second container corresponds to the first engine running the second scene and contains the second engine running
  • the first engine and the second engine are different engines
  • the first container and the second container are different containers
  • the first scene and the second scene belong to the same target application scene, so in the target application
  • the first switching instruction is acquired, and the state of the first container can be switched from the active state to the suspended state according to the first switching instruction, and the state of the second container can be switched from the suspended state to the active state.
  • the state between the first container and the second container can be switched through the first switching instruction, so that the switch between the suspended state and the active state can be used to prevent the first container and the second container from corresponding to each other
  • the running conflict between the first engine and the second engine provides convenience for the subsequent multi-team cooperation to develop the same target application by using each other's advantageous engines.
  • FIG. 1 is a schematic diagram of a system architecture of engine isolation in an embodiment of the present application
  • FIG. 2 is a schematic diagram of an embodiment of an engine isolation method in an embodiment of the present application
  • FIG. 3 is a schematic diagram of another embodiment of an engine isolation method in an embodiment of the present application.
  • FIG. 4 is a schematic diagram of the relationship between the container and the sharing module in an embodiment of the present application.
  • FIG. 5 is a schematic diagram of another embodiment of an engine isolation method in an embodiment of the present application.
  • Fig. 6 is a schematic diagram of scene switching in an application embodiment
  • FIG. 7 is a schematic diagram of another embodiment of an engine isolation method in an embodiment of the present application.
  • FIG. 8 is a schematic diagram of an embodiment of an engine isolation device provided in an embodiment of the present application.
  • FIG. 9 is a schematic diagram of another embodiment of an engine isolation device provided in an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of a mobile terminal provided by an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of another mobile terminal provided by an embodiment of the present application.
  • the embodiment of the present application provides an engine isolation method and related devices, which are used to switch the state between the first container and the second container through a first switching instruction in the same target application, thereby using the suspended state and the activated state. Switch between states to avoid running conflicts between the first engine and the second engine corresponding to the first container and the second container, and provide a way for multiple teams to use mutually advantageous engines to cooperate in the development of the same target application. Convenient.
  • steps or units may include other steps or units that are not clearly listed or are inherent to these processes, methods, products, or equipment.
  • the naming or numbering of the steps appearing in this application does not mean that the steps in the method flow must be executed in the time/logical order indicated by the naming or numbering.
  • the named or numbered process steps can be implemented according to the The technical purpose changes the execution order, as long as the same or similar technical effects can be achieved.
  • Container It can store the scenes, modules and other elements developed by the engine for the target application, so as to provide an independent operating environment for the engine.
  • the traditional engine isolation method is to effectively avoid conflicts between engines by calling different processes for the same application on the Windows operating system. But for the operating system of a mobile terminal, it is hoped that all the functions included in the application can be experienced in the same application, and because the application is independent, it cannot be like the Windows operating system on the mobile terminal.
  • Use multiple processes to develop an application For example: In a certain game application, it is usually composed of multiple scenes such as "login scene”, “mall scene”, “matching scene”, “match scene”, “settlement scene” and so on.
  • Process A can be used to run the "login scenario", process B to run the “mall scenario”, process C to run the “match scenario”, process D to run the “settlement scenario”, etc., and process A can call the first application (Application, APP) to trigger, B process, D process can call the second APP to trigger, C process calls the third APP to trigger, etc., so in the Windows operating system will involve multiple different APP Call each other to complete the game. But on mobile terminals, I always hope that after downloading the game application, I can directly experience the "login scene”, “mall scene”, “matching scene”, “matching scene”, and “settlement” in the game application. "Scene” and so on, instead of downloading multiple apps to experience.
  • an embodiment of the present application provides an engine isolation method, which is applied to the system architecture schematic diagram shown in FIG. 1.
  • FIG. 1 is a schematic diagram of the engine isolation system architecture in an embodiment of the application.
  • the system can include a first container and a second container, and the first container can contain elements run by the first engine, and the second container can contain elements run by the second engine.
  • the elements of the first engine running in the first container are all Becomes the active state, and the elements of the second engine running in the second container are all in the suspended state, which ensures that the second engine cannot work when the first container is in the active state, then you can use
  • the first engine in the activated state runs the elements developed by the first engine.
  • the target application described above can be installed on a mobile terminal.
  • the mobile terminals involved can include various handheld devices with wireless communication functions, vehicle-mounted devices, wearable devices, computing devices or other processing devices connected to wireless modems, as well as various forms of user equipment (UE). , Mobile station (mobile station, MS), terminal device (terminal device) and so on.
  • UE user equipment
  • MS Mobile station
  • terminal device terminal device
  • the devices mentioned above are collectively referred to as mobile terminals.
  • the container described above will have different operating systems for different mobile terminals.
  • the first container and the second container may be a first view controller (UIviewcontroller) container and a second view controller container, respectively.
  • the first container and the second container may be a first control container (Activity) and a second control container, respectively.
  • the operating system of the mobile terminal may include other operating systems in addition to the Android operating system or the IOS operating system. Therefore, in the embodiments of the present application, the first container and the second container will not be limited. container.
  • target applications described above include but are not limited to game applications.
  • the target applications may also be other applications that need to be rendered, which will not be specifically limited in the embodiments of the present application.
  • only a game application is taken as an example for description.
  • FIG. 2 is a schematic diagram of an embodiment of the engine isolation method in the embodiment of this application. It is applied to the mobile terminal and can be executed by the mobile terminal processor. For execution, the method may include:
  • the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
  • the first scene and the second scene both belong to scenes in the same target application, and the first engine can run the first scene, and the second engine can run the second scene. Since in the first scene of the target application, the first container corresponding to the first engine running the first scene is in the active state, it means that the first engine running elements contained in the first container at this time are all in the active state. Active state, then the first engine in the active state can run the first scene at this time. If it is desired to switch to another scene, the mobile terminal may obtain a first switching instruction in the first scene, and the first switching instruction will indicate that it is possible to switch from the first scene to the second scene.
  • the mobile terminal needs to put the first container corresponding to the first engine into a suspended state, so that the first engine cannot work for a certain period of time, and thus cannot interfere with the state.
  • the second engine switched from the suspended state to the active state runs the second scene.
  • the first engine running the above first scene will greatly increase the running speed, and can improve the rendering quality of the first scene.
  • the first engine described above is an engine that the first team has an advantage in developing the first scenario described above.
  • the second engine running the above second scene will greatly increase the running speed, and can improve the rendering quality of the second scene.
  • the second engine described above is an engine that the second team has an advantage in developing the second scenario described above.
  • first team and the second team described above are two teams belonging to different companies, and the type of the team will not be limited in the embodiment of the present application.
  • the following manners may be adopted for acquiring the first switching instruction in the first scenario of the target application:
  • the first type is to respond to user operations in the first scenario to obtain the first switching instruction.
  • logical buttons can be set in the first scene. If the user wants to switch from the first scene to the second scene, he can directly click the logical button in the first scene, so that the mobile terminal Then the first switching instruction can be obtained.
  • the first switching instruction is acquired when the running time of the first engine running the first scene is greater than or equal to the first preset time.
  • the first preset duration can be set according to different requirements, for example, it can be set to 20 seconds, 35 seconds, etc., which will not be specifically limited in the embodiment of this application. If the running time of the first engine in the active state running the first scene reaches the first preset time, the mobile terminal can automatically obtain the first switching instruction to trigger the switching from the first scene to the second scene.
  • the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
  • the first switching instruction is used to indicate that it is possible to switch from the first scene to the second scene
  • the second engine that needs to run the second scene is in the active state, if the first engine is still in the active state.
  • the first engine and the second engine will access the underlying graphics interface (OpenGL II D3D), and the underlying graphics interface will access the hardware device.
  • the first engine and the second engine are mutually black boxes. The conflict will cause the rendering result of the second scene to be abnormal.
  • the mobile terminal can switch the state of the first container from the active state to the suspended state according to the first switching instruction, and the mobile terminal changes the state of the second container from the active state to the suspended state.
  • the suspended state is switched to the active state, so that the second engine in the active state can be used to run the second scene, and the first engine switched to the suspended state will not work in the second scene because it cannot work in the second scene. Affects the operation of the company.
  • the mobile terminal switches the state between the first container and the second container through the first switching instruction, so as to avoid the first container and the second container by switching between the suspended state and the active state.
  • the running conflicts between the first engine and the second engine corresponding to the second container respectively provide convenience for subsequent multi-team cooperation to develop the same target application by using mutually advantageous engines.
  • FIG. 3 is a schematic diagram of another embodiment of the engine isolation method in the embodiment of this application.
  • the method can include:
  • a first switching instruction in a first scenario of a target application is run based on a first engine, the first container corresponding to the first engine is in an activated state, and the first container contains elements running by the first engine.
  • the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
  • the first switching instruction switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state.
  • the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
  • Step 301 to step 302 in the embodiment of the present application can be understood by referring to step 201 to step 202 shown in FIG. 2, and details are not described herein again.
  • the keep-alive mechanism is triggered.
  • the keep-alive mechanism is used to indicate that the state of the sharing module is the active state, and the sharing module is blocked in the first scene and the second scene.
  • the first engine and the second engine are shared, and the shared module is independent of the first container and the second container.
  • the network protocol transceiver module is set in the second container, if it is currently in the first scene and the mobile terminal does not obtain the first switching instruction to switch to the second scene, the state of the second container is in the suspended state. , Then the network protocol transceiver module will be in a suspended state, so that it cannot receive the network protocol sent by the server in the first scenario.
  • the network protocol transceiver modules are respectively set in the first container and the second container, if the mobile terminal is currently in the first scene and the mobile terminal does not obtain the first switching instruction to switch to the second scene, the state of the second container is In the suspended state, the network protocol transceiver module in the second container will be in the suspended state.
  • FIG. 4 is a schematic diagram of the relationship between the container and the shared module in an embodiment of the application.
  • the shared module can be set independently of the first container and the second container, and set in the storage device.
  • the native layer makes the sharing module always active regardless of whether it is currently in the first scene or the second scene.
  • the mobile terminal can trigger the keep-alive mechanism when the state of the first container is switched from the active state to the suspended state, so that the first engine runs the first scene, and the second engine runs the second scene.
  • the shared module can be called , To enhance the flexibility of the entire engine isolation program.
  • the aforementioned sharing module may also include a sound effect module, an input module, a voice module, a message display module, etc., which will not be specifically limited in the embodiments of this application. .
  • the sharing module that can be used in the first scene and the second scene is set in the keep-alive layer, so that no matter whether the first engine currently used to run the first scene is in a suspended state or in an active state, Both can call the shared module, which enhances the flexibility of the entire isolation scheme.
  • FIG. 5 is a schematic diagram of another embodiment of the engine isolation method in the embodiment of this application.
  • the method can include:
  • the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
  • the first switching instruction switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state.
  • the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
  • Step 501 to step 502 in the embodiment of the present application can be understood with reference to step 201 to step 202 shown in FIG. 2, and details are not described herein again.
  • the first scene, the second scene, and the third scene all belong to scenes in the same target application, where the first scene and the third scene may be run by the same engine, that is, the first engine.
  • the first scene and the third scene may be run by the same engine, that is, the first engine.
  • the first scene described above can be a lobby scene
  • the second scene can be a game scene
  • the third scene can be a settlement scene, that is, after the game scene ends, the player is in the game
  • settlement information such as the player's win rate and loss rate in the game will appear, that is, the settlement scenario will appear, and then the first engine can be used to run at this time.
  • the first scene, the second scene, and the third scene may also be other scenes besides the lobby scene, the game scene, and the settlement scene, which will not be specifically limited in the embodiment of the present application. Please refer to FIG. 6, which is a schematic diagram of scene switching in an embodiment of this application.
  • the lobby scene (the first scene shown in Figure 6) and the settlement scene (the first scene shown in Figure 6)
  • the three scenes are all run by the first engine with advantages developed by the first company
  • the game scenes (the second scene shown in Figure 6) are all developed by the second company with advantages in the game.
  • the second engine runs, because the elements running on the first engine have been set in the first container in advance, and the elements running on the second engine are set in the second container, so the player can click on the "square" in the first scene. Button" (as shown in the square box clicked by the finger in Figure 6), you can switch the first scene to the second scene.
  • the first engine running the first scene will become The suspended state makes the first engine unable to continue working while the second engine is running the second scene.
  • the settlement of the victory will be generated, which can be displayed in the third scene.
  • the third scene shown in Figure 6 shows that the player A wins, so it can also be displayed in the third scene. Click the "square button" in the second scene to switch the second scene to the third scene. Therefore, during the switching process, the mobile terminal can switch the states of different engines running in different scenarios between the active state and the suspended state, realizing the operation between the engines used by different companies to develop the same game application Isolation avoids the conflict of engine operation.
  • the first scene and the third scene described above may be the same, that is, in the second scene, the second switching instruction can be used to switch back to the first scene. For example: you can switch from the game scene back to the lobby scene and so on.
  • the following manners may be adopted for acquiring the second switching instruction in the second scenario of the target application:
  • the first type is to respond to user operations in the second scenario to obtain the second switching instruction.
  • logical buttons can be set in the second scene. If the user wants to switch from the second scene to the third scene, he can directly click the logical button in the second scene, so that the mobile terminal Then the second switching instruction can be obtained.
  • the second type is to obtain the second switching instruction when the second engine runs the second scene for a running time longer than or equal to the second preset time period.
  • the second preset duration can be set according to different requirements, for example, it can be set to 30 seconds, one minute, etc., which will not be specifically limited in the embodiment of the present application. If the second engine in the active state runs the second scene for a running time that reaches the second preset time length, the mobile terminal can automatically obtain the second switching instruction to trigger the switching from the second scene to the third scene.
  • the first engine that needs to run the third scene is in the active state, if the second engine is still in the active state.
  • the first engine and the second engine will access the underlying graphics interface (OpenGL II D3D), and the underlying graphics interface will access the hardware device.
  • the first engine and the second engine are mutually black boxes. The conflict will cause the rendering result of the third scene to appear abnormal.
  • the mobile terminal can switch the state of the second container from the active state to the suspended state according to the second switching instruction, and change the state of the first container from the suspended state to the suspended state. Switch to the active state, so that the first engine in the active state can be used to run the third scene, and the second engine switched to the suspended state will not cause the operation of the third scene because it cannot work in the third scene influences.
  • FIG. 7 is a schematic diagram of another embodiment of the engine isolation method in the embodiment of the present application.
  • the method can include:
  • the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
  • the first switching instruction switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state, and the second container is the same as the second running the second scene.
  • the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
  • Steps 701 to 704 in the embodiment of the present application can be understood with reference to steps 501 to 504 shown in FIG. 5, and the details are not repeated here.
  • the keep-alive mechanism is triggered.
  • the keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is blocked in the third scene and the second scene.
  • the first engine and the second engine are shared, and the shared module is independent of the first container and the second container.
  • the sharing module can be set independently of the first container and the second container, and set in the keep-alive (native) layer, so that the sharing module is always active regardless of whether it is currently in the third scene or the second scene.
  • the mobile terminal can trigger the keep-alive mechanism when the state of the first container is switched from the active state to the suspended state, so that the first engine runs the third scene, and the second engine runs the second scene.
  • the shared module can be called , Increase the flexibility of the entire engine isolation scheme. For details, it can be understood with reference to step 303 in FIG. 3, which will not be described in detail here.
  • the sharing module that can be used in the first scene and the second scene is set in the keep-alive layer, so that no matter whether the first engine currently used to run the third scene is in a suspended state or in an active state, Or, the shared module can be called when the second engine currently used to run the second scene is in a suspended state or in an active state, which enhances the flexibility of the entire isolation scheme.
  • the embodiment of the present application may divide the device into functional modules according to the foregoing method examples.
  • each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
  • FIG. 8 is a schematic diagram of an embodiment of the engine isolation device 80 provided in an embodiment of the application.
  • the engine isolation device 80 includes:
  • the first acquiring unit 801 is configured to acquire a first switching instruction in a first scene of the target application.
  • the first scene is running based on the first engine, the first container corresponding to the first engine is in an active state, and the first container contains the first An engine running element, the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
  • the first switching unit 802 is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the suspended state according to the first switching instruction acquired by the first acquiring unit 801 Active state, the second container corresponds to the second engine running the second scene, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different container.
  • the engine isolation device 80 is also include:
  • the second acquiring unit 803 is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state, in the second scene after the first switching unit 802 switches the state of the first container from the suspended state to the active state Acquire a second switching instruction below, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application;
  • the second switching unit 804 is configured to switch the state of the second container from the active state to the suspended state, and switch the state of the first container from the suspended state to the suspended state according to the second switching instruction acquired by the second acquiring unit 803 Active state, where the third scene is running based on the first engine.
  • the engine isolation device 80 further includes:
  • the trigger unit is used to trigger the keep-alive mechanism when the second switching unit 804 switches the state of the second container from the active state to the suspended state.
  • the keep-alive mechanism is used to indicate that the state of the shared module is in the active state, and the shared module is in the active state.
  • the third scene and the second scene are shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
  • the trigger unit is further used for:
  • the keep-alive mechanism is triggered.
  • the keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the first scene and the second scene.
  • the scenario is shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
  • the first acquiring unit 801 includes:
  • the first response module is configured to respond to user operations in the first scenario and obtain the first switching instruction.
  • the first acquiring unit 801 includes:
  • the first acquiring module is configured to acquire the first switching instruction when the running time of the first engine running the first scene is greater than or equal to the first preset duration.
  • the second acquiring unit 803 include:
  • the second response module is configured to respond to user operations in the second scenario and obtain a second switching instruction.
  • the second acquiring unit 803 include:
  • the second acquiring module is configured to acquire the second switching instruction when the running time of the second engine running the second scene is greater than or equal to the second preset duration.
  • FIG. 10 is a schematic structural diagram of a mobile terminal disclosed in an embodiment of the present application.
  • the mobile terminal 100 includes a processor 1001 and a memory 1002.
  • the mobile terminal 100 may also include a bus 1003.
  • the processor 1001 and the memory 1002 may be connected to each other through a bus 1003, and the bus 1003 may be an interconnection of peripheral components.
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the bus 1003 can be divided into an address bus, a data bus, a control bus, and so on. For ease of representation, only one thick line is used to represent in FIG. 10, but it does not mean that there is only one bus or one type of bus.
  • the mobile terminal 100 may also include an input/output device 1004, and the input/output device 1004 may include a display screen, such as a liquid crystal display screen.
  • the memory 1002 is used to store one or more programs containing instructions; the processor 1001 is used to call the instructions stored in the memory 1002 to execute some or all of the method steps in FIGS. 1 to 7 described above.
  • the embodiment of the present application also provides another mobile terminal, as shown in FIG. 11, for ease of description, only the part related to the embodiment of the present application is shown. For specific technical details that are not disclosed, please refer to the method of the embodiment of the present application. section.
  • the mobile terminal can be any terminal device including a mobile phone, a tablet computer, a PDA (Personal Digital Assistant), a POS (Point of Sales, sales terminal), a vehicle-mounted computer, etc. Take the mobile terminal as a mobile phone as an example:
  • FIG. 11 shows a block diagram of a part of the structure of a mobile phone related to a mobile terminal provided in an embodiment of the application.
  • the mobile phone includes: a radio frequency (RF) circuit 1110, a memory 1120, an input unit 1130, a display unit 1140, a sensor 1150, an audio circuit 1160, a wireless fidelity (Wireless Fidelity, WiFi) module 1170, and a processor 1180 , Power supply 1190, and camera 11100 and other components.
  • the input unit 1130 may include a fingerprint recognition module 1131 and other input devices 1132
  • the display unit 1140 may include a display screen 1141
  • the audio circuit 1160 includes a speaker 1161 and a microphone 1162.
  • FIG. 11 does not constitute a limitation on the mobile phone, and may include more or less components than those shown in the figure, or a combination of certain components, or different component arrangements.
  • the memory 1120 may be used to store software programs and modules.
  • the processor 1180 executes various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 1120.
  • the memory 1120 may mainly include a program storage area and a data storage area.
  • the program storage area may store an operating system, an application program required for at least one function, etc.; the data storage area may store data created according to the use of the mobile phone, etc.
  • the memory 1120 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other volatile solid-state storage devices.
  • the processor 1180 is the control center of the mobile phone. It uses various interfaces and lines to connect various parts of the entire mobile phone. It executes by running or executing software programs and/or modules stored in the memory 1120, and calling data stored in the memory 1120. Various functions and processing data of the mobile phone can be used to monitor the mobile phone as a whole.
  • the processor 1180 may include one or more processing units; preferably, the processor 1180 may integrate an application processor and a modem processor, where the application processor mainly processes the operating system, user interface, application programs, etc. , The modem processor mainly deals with wireless communication. It can be understood that the foregoing modem processor may not be integrated into the processor 1180.
  • An embodiment of the present application also provides a computer storage medium, wherein the computer storage medium stores a computer program for electronic data exchange, and the computer program causes a computer to execute any part of the engine isolation method described in the above method embodiment. Or all steps.
  • the embodiments of the present application also provide a computer program product.
  • the computer program product includes a non-transitory computer-readable storage medium storing a computer program.
  • the computer program is operable to cause a computer to execute the method described in the foregoing method embodiment. Part or all of the steps of any engine isolation method.
  • the disclosed system, device, and method can be implemented in other ways.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium.
  • a computer device which can be a personal computer, a server, or a network device, etc.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disk and other media that can store program code .

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

An engine isolation method and a related apparatus, which are used for switching, in the same target application, the states of a first container and a second container, so as to avoid, by means of the switching between a suspended state and an active state, a running conflict between a first engine and a second engine respectively corresponding to the first container and the second container, thereby providing convenience for a plurality of teams to use respective advantageous engines to cooperatively study and develop the target application in the future. The engine isolation method comprises: acquiring a first switching instruction in a first scenario of a target application, wherein the first scenario is run on the basis of a first engine, a first container corresponding to the first engine is in an active state, and the first switching instruction is used for indicating switching from the first scenario to a second scenario of the target application (201); and according to the first switching instruction, switching the state of the first container from the active state to a suspended state, and switching the state of a second container from the suspended state to the active state, wherein the second container corresponds to a second engine for running the second scenario (202).

Description

引擎隔离方法以及相关装置Engine isolation method and related device
本申请要求于2019年12月11日提交中国专利局、申请号201911268031.4、申请名称为“一种隔离处理方法以及相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the Chinese Patent Office, Application No. 201911268031.4, and the application title is "An isolation processing method and related devices" on December 11, 2019, the entire content of which is incorporated into this application by reference .
技术领域Technical field
本申请实施例涉及计算机技术领域,具体涉及引擎隔离。The embodiments of the present application relate to the field of computer technology, and specifically relate to engine isolation.
背景技术Background technique
引擎,是指一些已经编写好的可编辑***或者一些交互式实时图像应用程序的核心组件,这些***能够为***开发者提供各种编写应用所需的各种工具,其目的在于让***开发者容易且快速地开发出应用。Engine refers to the core components of some editable systems that have been written or some interactive real-time image applications. These systems can provide system developers with various tools needed to write applications. The purpose is to enable system developers Develop applications easily and quickly.
目前,在视窗(Windows)操作***上,可以较容易的使用多进程来开发同一款应用程序,从而可以使用不同的进程有效地避免引擎间的冲突。但对于移动终端的操作***来说,比如现阶段主流的IOS(internetworking operating system-cisco)操作***、安卓(android)操作***等,用户通常希望在同一个应用程序就可以体验到该应用程序中所包括的所有功能,由于应用程序讲究独立性,因此移动终端的操作***无法像Windows操作***使用多个进程来开发出一个应用程序。而随着多公司多团队进行产品“合作研发”的场景日益增加,每个团队都可以利用自身具备优势的引擎进行开发同一个应用程序,但是,在利用不同团队的引擎在合研开发同一个应用程序时,往往由于不同的引擎之间在运行过程中都会存在一定的冲突性,导致无法研发出应用程序。At present, on the Windows operating system, it is easier to use multiple processes to develop the same application program, so that different processes can be used to effectively avoid conflicts between engines. But for mobile terminal operating systems, such as the current mainstream IOS (internetworking operating system-cisco) operating system, Android (android) operating system, etc., users usually hope to experience the application in the same application For all the functions included, the operating system of the mobile terminal cannot use multiple processes to develop an application program like the Windows operating system because the application program emphasizes independence. With the increasing number of scenarios where multiple companies and teams are engaged in product "cooperative research and development", each team can use its own advantageous engine to develop the same application. However, using engines of different teams to develop the same application in joint research and development. When applying programs, there are often conflicts between different engines in the running process, which makes it impossible to develop applications.
因此,在利用不同的引擎合作研发同一个应用程序时,如何避免不同的引擎之间的冲突问题,是现阶段以及未来亟需解决的问题。Therefore, when using different engines to develop the same application program, how to avoid conflicts between different engines is a problem that needs to be solved urgently at this stage and in the future.
发明内容Summary of the invention
本申请实施例提供了一种引擎隔离方法以及相关装置,用于在同一个目标应用中,通过第一切换指令来切换第一容器和第二容器之间的状态,从而利用挂起态和激活态间的切换来避免第一容器和第二容器分别所对应的第一引擎、第二引擎之间的运行冲突,为后续多团队之间利用彼此具备优势的引擎合作研发同一个目标应用提供了便捷。The embodiment of the present application provides an engine isolation method and related devices, which are used to switch the state between the first container and the second container through a first switching instruction in the same target application, thereby using the suspended state and the activated state. Switch between states to avoid running conflicts between the first engine and the second engine corresponding to the first container and the second container, and provide a way for multiple teams to use mutually advantageous engines to cooperate in the development of the same target application. Convenient.
第一方面,本申请实施例提供了一种引擎隔离方法,包括:In the first aspect, an embodiment of the present application provides an engine isolation method, including:
在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景;Acquire the first switching instruction in the first scenario of the target application. The first scenario is running based on the first engine. The first container corresponding to the first engine is in the activated state. The first container contains the elements running by the first engine. The switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
根据第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。According to the first switching instruction, the state of the first container is switched from the active state to the suspended state, and the state of the second container is switched from the suspended state to the active state. The second container corresponds to the second engine running the second scene , The second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
第二方面,本申请实施例提供了一种引擎隔离装置,包括:In the second aspect, an embodiment of the present application provides an engine isolation device, including:
第一获取单元,用于在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景;The first acquiring unit is configured to acquire the first switching instruction in the first scene of the target application. The first scene is running based on the first engine, the first container corresponding to the first engine is in an active state, and the first container contains the first The element of the engine running, the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
第一切换单元,用于根据第一获取单元获取到的第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。The first switching unit is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state according to the first switching instruction acquired by the first acquiring unit , The second container corresponds to the second engine running the second scene, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
在一种可能的实现方式中,结合上述第二方面,在第一种可能的实现方式中,引擎隔离装置还包括:In a possible implementation manner, in combination with the foregoing second aspect, in the first possible implementation manner, the engine isolation device further includes:
第二获取单元,用于在第一切换单元将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态之后,在第二场景下获取第二切换指令,第二切换指令用于指示从第二场景切换到目标应用的第三场景;The second acquiring unit is used to acquire in the second scene after the first switching unit switches the state of the first container from the active state to the suspended state, and switches the state of the second container from the suspended state to the active state A second switching instruction, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application;
第二切换单元,用于根据第二获取单元获取到的第二切换指令,将第二容器的状态由激活态切换到挂起态,并将第一容器的状态由挂起态切换到激活态,其中,第三场景是基于第一引擎运行的。The second switching unit is configured to switch the state of the second container from the active state to the suspended state according to the second switching instruction acquired by the second acquiring unit, and switch the state of the first container from the suspended state to the active state , Among them, the third scene is based on the operation of the first engine.
在一种可能的实现方式中,结合上述第二方面,在第二种可能的实现方式中,引擎隔离装置还包括:In a possible implementation manner, in combination with the foregoing second aspect, in a second possible implementation manner, the engine isolation device further includes:
触发单元,用于在第二切换单元将第二容器的状态由激活态切换到挂起态时,触发保活机制,保活机制用于指示共享模块的状态为激活态,共享模块在第三场景和第二场景下被第一引擎和第二引擎共用,共享模块独立于第一容器和第二容器。The trigger unit is used to trigger the keep-alive mechanism when the second switching unit switches the state of the second container from the active state to the suspended state. The keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the third The scene and the second scene are shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
在一种可能的实现方式中,结合上述第二方面第一种可能的实现方式,在第三种可能的实现方式中,触发单元还用于:In a possible implementation manner, in combination with the first possible implementation manner of the second aspect described above, in a third possible implementation manner, the trigger unit is further used for:
在第一切换单元将第一容器的状态由激活态切换到挂起态时,触发保活机制,保活机制用于指示共享模块的状态为激活态,共享模块在第一场景和第二场景下被第一引擎和第二引擎共用,共享模块独立于第一容器和第二容器。When the first switching unit switches the state of the first container from the active state to the suspended state, the keep-alive mechanism is triggered. The keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the first scene and the second scene The download is shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
在一种可能的实现方式中,结合上述第二方面、第二方面第一种至第三种可能的实现方式,在第四种可能的实现方式中,第一获取单元,包括:In a possible implementation manner, in combination with the foregoing second aspect and the first to third possible implementation manners of the second aspect, in a fourth possible implementation manner, the first obtaining unit includes:
第一响应模块,用于响应第一场景下的用户操作,获取第一切换指令。The first response module is configured to respond to user operations in the first scenario and obtain the first switching instruction.
在一种可能的实现方式中,结合上述第二方面、第二方面第一种至第三种可能的实现方式,在第五种可能的实现方式中,第一获取单元,包括:In a possible implementation manner, in combination with the foregoing second aspect and the first to third possible implementation manners of the second aspect, in a fifth possible implementation manner, the first obtaining unit includes:
第一获取模块,用于在第一引擎运行第一场景的运行时长大于或等于第一预设时长时,获取第一切换指令。The first acquiring module is configured to acquire the first switching instruction when the running time of the first engine running the first scene is greater than or equal to the first preset duration.
在一种可能的实现方式中,结合上述第二方面第一种至第二种可能的实现方式,在第六种可能的实现方式中,第二获取单元,包括:In a possible implementation manner, in combination with the first to second possible implementation manners of the second aspect described above, in a sixth possible implementation manner, the second acquiring unit includes:
第二响应模块,用于响应第二场景下的用户操作,获取第二切换指令。The second response module is configured to respond to user operations in the second scenario and obtain a second switching instruction.
在一种可能的实现方式中,结合上述第二方面第一种至第二种可能的实现方式,在第七种可能的实现方式中,第二获取单元,包括:In a possible implementation manner, in combination with the first to second possible implementation manners of the second aspect described above, in a seventh possible implementation manner, the second acquiring unit includes:
第二获取模块,用于在第二引擎运行第二场景的运行时长大于或等于第二预设时长时,获取第二切换指令。The second acquiring module is configured to acquire the second switching instruction when the running time of the second engine running the second scene is greater than or equal to the second preset duration.
在一种可能的实现方式中,结合上述第二方面、第二方面第一种至第七种可能的实现方式,在第八种可能的实现方式中,目标应用安装于移动终端。In a possible implementation manner, in combination with the foregoing second aspect and the first to seventh possible implementation manners of the second aspect, in the eighth possible implementation manner, the target application is installed on the mobile terminal.
在一种可能的实现方式中,结合上述第二方面、第二方面第一种至第八种可能的实现方式,在第九种可能的实现方式中,目标应用包括游戏应用。In a possible implementation manner, in combination with the foregoing second aspect and the first to eighth possible implementation manners of the second aspect, in a ninth possible implementation manner, the target application includes a game application.
本申请第三方面提供一种移动终端,包括:处理器以及存储器,处理器以及存储器通过通信总线相连;其中,处理器,用于调用并执行存储器中存储的程序;存储器,用于存储程序,程序用于实现如上述第一方面或第一方面任意一种可能实现方式的方法。A third aspect of the present application provides a mobile terminal, including: a processor and a memory, the processor and the memory are connected by a communication bus; wherein the processor is used to call and execute a program stored in the memory; the memory is used to store a program, The program is used to implement the above-mentioned first aspect or any one of the possible implementation methods of the first aspect.
本申请第四方面提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机可执行指令,计算机可执行指令用于执行如第一方面或第一方面任意一种可能实现方式的方法。The fourth aspect of the present application provides a computer-readable storage medium. The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to execute the method of the first aspect or any one of the possible implementation manners of the first aspect .
本申请实施例的第五方面提供了一种包含指令的计算机程序产品,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一方面的方法。The fifth aspect of the embodiments of the present application provides a computer program product containing instructions, which when run on a computer or a processor, causes the computer or the processor to execute the method of any one of the foregoing aspects.
从以上技术方案可以看出,本申请实施例具有以下优点:It can be seen from the above technical solutions that the embodiments of the present application have the following advantages:
本申请实施例中,由于第一容器与运行第一场景的第一引擎对应,并且包含第一引擎运行的元素,第二容器与运行第二场景的第一引擎对应,且包含第二引擎运行的元素,第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器,而第一场景与第二场景都属于同一个目标应用中的场景,所以在目标应用的第一场景下获取第一切换指令,可以根据该第一切换指令将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,这样便可以在同一个目标应用中,通过第一切换指令来切换第一容器和第二容器之间的状态,从而利用挂起态和激活态间的切换来避免第一容器和第二容 器分别所对应的第一引擎、第二引擎之间的运行冲突,为后续多团队之间利用彼此具备优势的引擎合作研发同一个目标应用提供了便捷。In the embodiment of the present application, since the first container corresponds to the first engine running the first scene and contains elements running by the first engine, the second container corresponds to the first engine running the second scene and contains the second engine running The first engine and the second engine are different engines, the first container and the second container are different containers, and the first scene and the second scene belong to the same target application scene, so in the target application In the first scenario, the first switching instruction is acquired, and the state of the first container can be switched from the active state to the suspended state according to the first switching instruction, and the state of the second container can be switched from the suspended state to the active state. In the same target application, the state between the first container and the second container can be switched through the first switching instruction, so that the switch between the suspended state and the active state can be used to prevent the first container and the second container from corresponding to each other The running conflict between the first engine and the second engine provides convenience for the subsequent multi-team cooperation to develop the same target application by using each other's advantageous engines.
附图说明Description of the drawings
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。In order to explain the technical solutions of the embodiments of the present application more clearly, the following will briefly introduce the drawings needed in the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application.
图1是本申请实施例中引擎隔离的***架构示意图;FIG. 1 is a schematic diagram of a system architecture of engine isolation in an embodiment of the present application;
图2是本申请实施例中引擎隔离方法的一个实施例示意图;FIG. 2 is a schematic diagram of an embodiment of an engine isolation method in an embodiment of the present application;
图3是本申请实施例中引擎隔离方法的另一个实施例示意图;FIG. 3 is a schematic diagram of another embodiment of an engine isolation method in an embodiment of the present application;
图4是本申请实施例中容器与共享模块的关系示意图;FIG. 4 is a schematic diagram of the relationship between the container and the sharing module in an embodiment of the present application;
图5是本申请实施例中引擎隔离方法的另一个实施例示意图;FIG. 5 is a schematic diagram of another embodiment of an engine isolation method in an embodiment of the present application;
图6是申请实施例中场景切换的示意图;Fig. 6 is a schematic diagram of scene switching in an application embodiment;
图7是本申请实施例中引擎隔离方法的另一个实施例示意图;FIG. 7 is a schematic diagram of another embodiment of an engine isolation method in an embodiment of the present application;
图8是本申请实施例中提供的引擎隔离装置一个实施例示意图;FIG. 8 is a schematic diagram of an embodiment of an engine isolation device provided in an embodiment of the present application;
图9是本申请实施例中提供的引擎隔离装置另一个实施例示意图;FIG. 9 is a schematic diagram of another embodiment of an engine isolation device provided in an embodiment of the present application;
图10是本申请实施例提供的一种移动终端的结构示意图;FIG. 10 is a schematic structural diagram of a mobile terminal provided by an embodiment of the present application;
图11是本申请实施例提供的另一种移动终端的结构示意图。FIG. 11 is a schematic structural diagram of another mobile terminal provided by an embodiment of the present application.
具体实施方式Detailed ways
本申请实施例提供了一种引擎隔离方法以及相关装置,用于在同一个目标应用中,通过第一切换指令来切换第一容器和第二容器之间的状态,从而利用挂起态和激活态间的切换来避免第一容器和第二容器分别所对应的第一引擎、第二引擎之间的运行冲突,为后续多团队之间利用彼此具备优势的引擎合作研发同一个目标应用提供了便捷。The embodiment of the present application provides an engine isolation method and related devices, which are used to switch the state between the first container and the second container through a first switching instruction in the same target application, thereby using the suspended state and the activated state. Switch between states to avoid running conflicts between the first engine and the second engine corresponding to the first container and the second container, and provide a way for multiple teams to use mutually advantageous engines to cooperate in the development of the same target application. Convenient.
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the protection scope of this application.
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、 ***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。The terms "first", "second", "third", "fourth", etc. (if any) in the description and claims of this application and the above-mentioned drawings are used to distinguish similar objects, without having to use To describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations of them are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to what is clearly listed. Those steps or units may include other steps or units that are not clearly listed or are inherent to these processes, methods, products, or equipment. The naming or numbering of the steps appearing in this application does not mean that the steps in the method flow must be executed in the time/logical order indicated by the naming or numbering. The named or numbered process steps can be implemented according to the The technical purpose changes the execution order, as long as the same or similar technical effects can be achieved.
下面对本申请实施例涉及的一些术语进行介绍:The following introduces some terms involved in the embodiments of this application:
容器:能够将引擎针对目标应用开发出的场景、模块等元素进行存储,从而为引擎提供一个独立的操作环境。Container: It can store the scenes, modules and other elements developed by the engine for the target application, so as to provide an independent operating environment for the engine.
传统的引擎隔离方法是在Windows操作***上,针对同一款应用程序,通过调用不同的进程能够有效地避免引擎间的冲突。但对于移动终端的操作***来说,希望能够在同一个应用程序中能够体验到该应用程序中所包括的全部的功能,而由于应用程序讲究独立性,所以在移动终端上无法像Windows操作***使用多个进程的方式来开发出一个应用程序。例如:在某种游戏应用中,通常是由“登录场景”、“商城场景”、“匹配场景”、“对局场景”、“结算场景”等多个场景构成,而在Windows操作***上,可以使用A进程来运行“登录场景”、B进程运行“商城场景”、C进程来运行“对局场景”、D进程运行“结算场景”等,而A进程又可以通过调用第一个应用程序(Application,APP)来触发,B进程、D进程又可以调用第二个APP来触发,C进程又调用第三个APP来触发等,所以在Windows操作***上会涉及到多个不同的APP之间的互相调用来完成该游戏。但在移动终端上,总是希望能够在下载该游戏应用后,就能够在该游戏应用中直接体验到“登录场景”、“商城场景”、“匹配场景”、“对局场景”、“结算场景”等多个场景,而不是下载多个APP来体验。The traditional engine isolation method is to effectively avoid conflicts between engines by calling different processes for the same application on the Windows operating system. But for the operating system of a mobile terminal, it is hoped that all the functions included in the application can be experienced in the same application, and because the application is independent, it cannot be like the Windows operating system on the mobile terminal. Use multiple processes to develop an application. For example: In a certain game application, it is usually composed of multiple scenes such as "login scene", "mall scene", "matching scene", "match scene", "settlement scene" and so on. On the Windows operating system, Process A can be used to run the "login scenario", process B to run the "mall scenario", process C to run the "match scenario", process D to run the "settlement scenario", etc., and process A can call the first application (Application, APP) to trigger, B process, D process can call the second APP to trigger, C process calls the third APP to trigger, etc., so in the Windows operating system will involve multiple different APP Call each other to complete the game. But on mobile terminals, I always hope that after downloading the game application, I can directly experience the "login scene", "mall scene", "matching scene", "matching scene", and "settlement" in the game application. "Scene" and so on, instead of downloading multiple apps to experience.
所以,随着多公司多团队进行产品“合作研发”的场景日益增加,针对同一个应用程序,每个团队都可以利用自身具备优势的引擎进行共同研发,但是,在利用不同团队的引擎在合研开发同一个应用程序时,往往由于不同的引擎之间在运行过程中都会存在一定的冲突性,导致无法研发出应用程序。Therefore, with the increasing number of scenarios for product "cooperative research and development" by multiple companies and multiple teams, each team can use its own advantageous engine for joint research and development for the same application. However, the use of engines of different teams is in cooperation. When researching and developing the same application, there are often conflicts between different engines in the running process, which makes it impossible to develop the application.
因此,为解决上述问题,本申请实施例提供了一种引擎隔离方法,该方法应用于如图1所示的***架构示意图,请参阅图1,为本申请实施例中引擎隔离的***架构示意图。从图1可以看出,针对同一个目标应用,该***可以包括第一容器、第二容器,而第一容器又可以包含第一引擎运行的元素,第二容器又可以包含第二引擎运行的元素,那么通过将第一容器的状态由激活态切换到挂起态,并且将第二容器的状态由挂起态切换到激活态,这样第二容器中所包含的第二引擎运行的元素都变成了激活态,而第一容器所包含的第一引擎所运行的元素都变成了挂起态,保证了在第二容器处于激活态的时候该第一引擎无法工作,那么,便可以使用处于激活态的第二引擎运行该第二引擎所开发出的元素。同理,通过将第二容器的状态由激活态切换到挂起态,并且将第一容器的状态由挂起态切换到激活态,这样第一容器中所包含的第一引擎运行的元素都变成了激活态,而第二容器所包含 的第二引擎所运行的元素都成了挂起态,保证了在第一容器处于激活态的时候该第二引擎无法工作,那么,便可以使用处于激活态的第一引擎运行该第一引擎所开发出的元素。Therefore, in order to solve the above problem, an embodiment of the present application provides an engine isolation method, which is applied to the system architecture schematic diagram shown in FIG. 1. Please refer to FIG. 1, which is a schematic diagram of the engine isolation system architecture in an embodiment of the application. . As can be seen from Figure 1, for the same target application, the system can include a first container and a second container, and the first container can contain elements run by the first engine, and the second container can contain elements run by the second engine. Element, then by switching the state of the first container from the active state to the suspended state, and the state of the second container from the suspended state to the active state, so that the elements of the second engine running in the second container are all Becomes the active state, and the running elements of the first engine contained in the first container are all in the suspended state, which ensures that the first engine cannot work when the second container is in the active state. Then, you can Use the activated second engine to run the elements developed by the second engine. In the same way, by switching the state of the second container from the active state to the suspended state, and switching the state of the first container from the suspended state to the active state, the elements of the first engine running in the first container are all Becomes the active state, and the elements of the second engine running in the second container are all in the suspended state, which ensures that the second engine cannot work when the first container is in the active state, then you can use The first engine in the activated state runs the elements developed by the first engine.
需要说明的是,上述所描述的目标应用可以安装在移动终端。而涉及到的移动终端可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(user equipment,UE),移动台(mobile station,MS),终端设备(terminal device)等等。为方便描述,上面提到的设备统称为移动终端。It should be noted that the target application described above can be installed on a mobile terminal. The mobile terminals involved can include various handheld devices with wireless communication functions, vehicle-mounted devices, wearable devices, computing devices or other processing devices connected to wireless modems, as well as various forms of user equipment (UE). , Mobile station (mobile station, MS), terminal device (terminal device) and so on. For ease of description, the devices mentioned above are collectively referred to as mobile terminals.
应当理解的是,上述所描述的容器针对不同的移动终端的操作***会有所不同。例如:在IOS操作***中,第一容器和第二容器分别可以是第一视图控制器(UIviewcontroller)容器和第二视图控制器容器。而在安卓操作***中,第一容器和第二容器分别可以是第一控件容器(Activity)和第二控件容器。应当理解的是,在实际应用中,移动终端的操作***除了安卓操作***或IOS操作***以外,还有可能包括其他的操作***,因此在本申请实施例中将不限定第一容器与第二容器。It should be understood that the container described above will have different operating systems for different mobile terminals. For example, in the IOS operating system, the first container and the second container may be a first view controller (UIviewcontroller) container and a second view controller container, respectively. In the Android operating system, the first container and the second container may be a first control container (Activity) and a second control container, respectively. It should be understood that in actual applications, the operating system of the mobile terminal may include other operating systems in addition to the Android operating system or the IOS operating system. Therefore, in the embodiments of the present application, the first container and the second container will not be limited. container.
另外,上述所描述的目标应用包括但不限于游戏应用,在实际应用中,目标应用还可以是其他需要进行渲染的应用,在本申请实施例中将不做具体限定。本申请实施例中仅以游戏应用为例进行说明。In addition, the target applications described above include but are not limited to game applications. In actual applications, the target applications may also be other applications that need to be rendered, which will not be specifically limited in the embodiments of the present application. In the embodiments of this application, only a game application is taken as an example for description.
为便于更好地理解本申请实施例所提出的方案,下面将以移动终端的角度对本实施例中引擎隔离方法的流程进行介绍。其中,该移动终端中可以安装有前述所描述的目标应用,请参阅图2,图2为本申请实施例中引擎隔离方法的一个实施例示意图,应用于移动终端,并可以由移动终端处理器进行执行,该方法可以包括:To facilitate a better understanding of the solutions proposed in the embodiments of this application, the flow of the engine isolation method in this embodiment will be introduced below from the perspective of a mobile terminal. Wherein, the target application described above may be installed in the mobile terminal. Please refer to FIG. 2. FIG. 2 is a schematic diagram of an embodiment of the engine isolation method in the embodiment of this application. It is applied to the mobile terminal and can be executed by the mobile terminal processor. For execution, the method may include:
201、在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景。201. Acquire a first switching instruction in the first scenario of the target application. The first scenario is run based on the first engine, the first container corresponding to the first engine is in an activated state, and the first container contains elements running by the first engine. The first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
本实施例中,第一场景与第二场景均属于同一个目标应用中的场景,而第一引擎可以运行第一场景,第二引擎可以运行第二场景。由于在目标应用的第一场景下,与运行第一场景的第一引擎相对应的第一容器处于激活态,那么就说明此时第一容器中所包含的第一引擎运行的元素都是处于激活态,那么此时可以由处于激活态的第一引擎来运行第一场景。如果想要切换到另外一个场景中,移动终端可以在该第一场景下获取第一切换指令,该第一切换指令就会指示可以从第一场景切换到该第二场景。然而,为了避免不同引擎之间在运行过程中的冲突,移动终端就需要将第一引擎对应的第一容器变成挂起态,使得第一引擎在一定时间内无法工作,从而无法干扰处于状态由挂起态切换到激活态的第二引擎运行第二场景。In this embodiment, the first scene and the second scene both belong to scenes in the same target application, and the first engine can run the first scene, and the second engine can run the second scene. Since in the first scene of the target application, the first container corresponding to the first engine running the first scene is in the active state, it means that the first engine running elements contained in the first container at this time are all in the active state. Active state, then the first engine in the active state can run the first scene at this time. If it is desired to switch to another scene, the mobile terminal may obtain a first switching instruction in the first scene, and the first switching instruction will indicate that it is possible to switch from the first scene to the second scene. However, in order to avoid conflicts between different engines in the running process, the mobile terminal needs to put the first container corresponding to the first engine into a suspended state, so that the first engine cannot work for a certain period of time, and thus cannot interfere with the state. The second engine switched from the suspended state to the active state runs the second scene.
需要说明的是,相较于第二引擎运行上述的第一场景,第一引擎运行上述的第一场景会大大地提升运行速度,并且能够提升该第一场景的渲染质量等。另外,上述所描述的第 一引擎是第一团队在研发上述第一场景时具备优势的引擎。同理,相较于第一引擎运行上述的第二场景,第二引擎运行上述的第二场景会大大地提升运行速度,并且能够提升该第二场景的渲染质量等。另外,上述所描述的第二引擎是第二团队在研发上述第二场景时具备优势的引擎。It should be noted that, compared to the second engine running the above first scene, the first engine running the above first scene will greatly increase the running speed, and can improve the rendering quality of the first scene. In addition, the first engine described above is an engine that the first team has an advantage in developing the first scenario described above. In the same way, compared to the first engine running the above second scene, the second engine running the above second scene will greatly increase the running speed, and can improve the rendering quality of the second scene. In addition, the second engine described above is an engine that the second team has an advantage in developing the second scenario described above.
应当理解的是,上述所描述的第一团队和第二团队是两个隶属于不同公司的团队,在本申请实施例中将不对团队的类型进行限定。It should be understood that the first team and the second team described above are two teams belonging to different companies, and the type of the team will not be limited in the embodiment of the present application.
在一些实施例中,对于在目标应用的第一场景下获取第一切换指令可以采用如下方式:In some embodiments, the following manners may be adopted for acquiring the first switching instruction in the first scenario of the target application:
第一种,响应第一场景下的用户操作,以获取第一切换指令。The first type is to respond to user operations in the first scenario to obtain the first switching instruction.
在该实施例中,可以在第一场景中设置逻辑按钮等,若用户想要从第一场景切换到第二场景中,那么就可以直接在该第一场景中点击该逻辑按钮,这样移动终端便可以获取到该第一切换指令。In this embodiment, logical buttons can be set in the first scene. If the user wants to switch from the first scene to the second scene, he can directly click the logical button in the first scene, so that the mobile terminal Then the first switching instruction can be obtained.
第二种,当第一引擎运行第一场景的运行时长大于或等于第一预设时长时,获取第一切换指令。In the second type, the first switching instruction is acquired when the running time of the first engine running the first scene is greater than or equal to the first preset time.
本实施例中,第一预设时长可以根据不同的需求进行设置,例如,可以设置为20秒,35秒等,在本申请实施例中将不做具体限定。若处于激活态的第一引擎运行第一场景的运行时长达到了第一预设时长,那么移动终端可以自动获取第一切换指令,触发从第一场景切换到第二场景。In this embodiment, the first preset duration can be set according to different requirements, for example, it can be set to 20 seconds, 35 seconds, etc., which will not be specifically limited in the embodiment of this application. If the running time of the first engine in the active state running the first scene reaches the first preset time, the mobile terminal can automatically obtain the first switching instruction to trigger the switching from the first scene to the second scene.
202、根据第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。202. According to the first switching instruction, switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state, and the second container is the same as the second running the second scene. Corresponding to the engine, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
本实施例中,由于第一切换指令用来指示可以从第一场景切换到第二场景,那么在切换结束后,需要运行第二场景的第二引擎是处于激活态,倘若第一引擎仍然处于激活态,就会使得第一引擎与第二引擎共同访问底层图形接口(OpenGL II D3D),而底层图形接口又会访问硬件设备,此时互为黑盒的第一引擎和第二引擎的运行冲突就会造成第二场景的渲染结果出现异常。In this embodiment, since the first switching instruction is used to indicate that it is possible to switch from the first scene to the second scene, after the switching ends, the second engine that needs to run the second scene is in the active state, if the first engine is still in the active state. In the activated state, the first engine and the second engine will access the underlying graphics interface (OpenGL II D3D), and the underlying graphics interface will access the hardware device. At this time, the first engine and the second engine are mutually black boxes. The conflict will cause the rendering result of the second scene to be abnormal.
因此,为了避免不同引擎之间在运行过程中的冲突,所以移动终端可以根据该第一切换指令将第一容器的状态由激活态切换到挂起态,并且移动终端将第二容器的状态由挂起态切换到激活态,从而使得可以使用处于激活态的第二引擎运行该第二场景,而切换成挂起态的第一引擎在第二场景下因无法工作则不会对第二场景的运行造成影响。Therefore, in order to avoid conflicts between different engines in the running process, the mobile terminal can switch the state of the first container from the active state to the suspended state according to the first switching instruction, and the mobile terminal changes the state of the second container from the active state to the suspended state. The suspended state is switched to the active state, so that the second engine in the active state can be used to run the second scene, and the first engine switched to the suspended state will not work in the second scene because it cannot work in the second scene. Affects the operation of the company.
本实施例中,在同一个目标应用中,移动终端通过第一切换指令来切换第一容器和第二容器之间的状态,从而利用挂起态和激活态间的切换来避免第一容器和第二容器分别所 对应的第一引擎、第二引擎之间的运行冲突,为后续多团队之间利用彼此具备优势的引擎合作研发同一个目标应用提供了便捷。In this embodiment, in the same target application, the mobile terminal switches the state between the first container and the second container through the first switching instruction, so as to avoid the first container and the second container by switching between the suspended state and the active state. The running conflicts between the first engine and the second engine corresponding to the second container respectively provide convenience for subsequent multi-team cooperation to develop the same target application by using mutually advantageous engines.
为便于更好地理解本申请实施例所提出的方案,下面对本实施例中引擎隔离方法的流程进行介绍,请参阅图3,图3为本申请实施例中引擎隔离方法的另一个实施例示意图,该方法可以包括:In order to facilitate a better understanding of the solutions proposed in the embodiments of this application, the following describes the flow of the engine isolation method in this embodiment. Please refer to FIG. 3, which is a schematic diagram of another embodiment of the engine isolation method in the embodiment of this application. , The method can include:
301、在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景。301. Acquire a first switching instruction in a first scenario of a target application. The first scenario is run based on a first engine, the first container corresponding to the first engine is in an activated state, and the first container contains elements running by the first engine. The first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
302、根据第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。302. According to the first switching instruction, switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state. Corresponding to the engine, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
本申请实施例中的步骤301至步骤302可以参见图2所示的步骤201至步骤202进行理解,具体此处不再赘述。Step 301 to step 302 in the embodiment of the present application can be understood by referring to step 201 to step 202 shown in FIG. 2, and details are not described herein again.
303、在将第一容器的状态由激活态切换到挂起态时,触发保活机制,保活机制用于指示共享模块的状态为激活态,共享模块在第一场景和第二场景下被第一引擎和第二引擎共用,共享模块独立于第一容器和第二容器。303. When the state of the first container is switched from the active state to the suspended state, the keep-alive mechanism is triggered. The keep-alive mechanism is used to indicate that the state of the sharing module is the active state, and the sharing module is blocked in the first scene and the second scene. The first engine and the second engine are shared, and the shared module is independent of the first container and the second container.
本实施例中,除了有关场景渲染等元素被放置在不同的容器之外,在第一场景与第二场景下都还有一些元素是能够被第一引擎和第二引擎共同使用的。In this embodiment, in addition to elements related to scene rendering, etc. are placed in different containers, there are some elements in both the first scene and the second scene that can be used by the first engine and the second engine.
例如:在网游(即目标应用)中,A玩家与B玩家组局玩游戏,那么就需要通过连接网络实现A玩家所持有的移动终端与B玩家所持有的移动终端进行连接,由于服务器并不感知移动终端的运行状况,使得该服务器并不了解当前是处于第一场景还是第二场景,如果将网络协议收发模块设置在第一容器中,倘若在从第一场景切换到第二场景后,该第一容器的状态处于挂起态时,那么该网络协议收发模块就会处于挂起态,从而无法在第二场景中接收服务器发送的网络协议。同理,如果将网络协议收发模块设置在第二容器中,倘若当前处于第一场景且移动终端并未获取第一切换指令切换到第二场景时,该第二容器的状态处于挂起态时,那么该网络协议收发模块就会处于挂起态,从而无法在第一场景中接收服务器发送的网络协议。当然,如果将网络协议收发模块分别设置在第一容器、第二容器中,倘若当前处于第一场景且移动终端并未获取第一切换指令切换到第二场景时,该第二容器的状态处于挂起态时,那么处于第二容器中的网络协议收发模块就会处于挂起态,若A玩家向B玩家发送某些消息,如:“注意,左前方有危险”,此时B玩家所持有的移动终端则无法接收到该消息。所以,无论将该网络协议收发模块设置在第一容器或第二容器中,都可能因本申请实施例中的第一容器或第二容器处于挂起态而受到影响。For example: in an online game (ie a target application), player A and player B play a game, then it is necessary to connect the mobile terminal held by player A and the mobile terminal held by player B through the network connection, because the server It does not perceive the operating status of the mobile terminal, so that the server does not know whether it is currently in the first scene or the second scene. If the network protocol transceiver module is set in the first container, if it is switched from the first scene to the second scene Later, when the state of the first container is in the suspended state, the network protocol transceiver module will be in the suspended state, so that the network protocol sent by the server cannot be received in the second scenario. Similarly, if the network protocol transceiver module is set in the second container, if it is currently in the first scene and the mobile terminal does not obtain the first switching instruction to switch to the second scene, the state of the second container is in the suspended state. , Then the network protocol transceiver module will be in a suspended state, so that it cannot receive the network protocol sent by the server in the first scenario. Of course, if the network protocol transceiver modules are respectively set in the first container and the second container, if the mobile terminal is currently in the first scene and the mobile terminal does not obtain the first switching instruction to switch to the second scene, the state of the second container is In the suspended state, the network protocol transceiver module in the second container will be in the suspended state. If player A sends certain messages to player B, such as: "Attention, there is danger in the left front", then player B The mobile terminal held cannot receive the message. Therefore, no matter whether the network protocol transceiver module is set in the first container or the second container, it may be affected because the first container or the second container in the embodiment of the present application is in the suspended state.
因此,请参阅图4,图4为本申请实施例中容器与共享模块的关系示意图,从图4中可以看出,可以将共享模块独立于第一容器和第二容器设置,并且设置在保活(native)层,使得无论当前处于第一场景还是第二场景该共享模块一直处于激活态。这样,移动终端便可以在第一容器的状态由激活态切换到挂起态时,触发保活机制,使得第一引擎运行第一场景,第二引擎运行第二场景时都能够调用该共享模块,增强整个引擎隔离方案的灵活性。Therefore, please refer to FIG. 4, which is a schematic diagram of the relationship between the container and the shared module in an embodiment of the application. As can be seen from FIG. 4, the shared module can be set independently of the first container and the second container, and set in the storage device. The native layer makes the sharing module always active regardless of whether it is currently in the first scene or the second scene. In this way, the mobile terminal can trigger the keep-alive mechanism when the state of the first container is switched from the active state to the suspended state, so that the first engine runs the first scene, and the second engine runs the second scene. The shared module can be called , To enhance the flexibility of the entire engine isolation program.
应当理解的是,前述所描述的共享模块除了上述的网络协议收发模块之外,还可以包括音效模块、输入模块、语音模块、消息显示模块等等,在本申请实施例中将不做具体限定。It should be understood that, in addition to the aforementioned network protocol transceiver module, the aforementioned sharing module may also include a sound effect module, an input module, a voice module, a message display module, etc., which will not be specifically limited in the embodiments of this application. .
本实施例中,通过将在第一场景与第二场景能够共同使用的共享模块设置在保活层,使得无论当前用于运行第一场景的第一引擎是挂起态还是处于激活态时,都能够调用该共享模块,为整个隔离方案增强了灵活性。In this embodiment, the sharing module that can be used in the first scene and the second scene is set in the keep-alive layer, so that no matter whether the first engine currently used to run the first scene is in a suspended state or in an active state, Both can call the shared module, which enhances the flexibility of the entire isolation scheme.
为便于更好地理解本申请实施例所提出的方案,下面对本实施例中引擎隔离方法的流程进行介绍,请参阅图5,图5为本申请实施例中引擎隔离方法的另一个实施例示意图,该方法可以包括:In order to facilitate a better understanding of the solution proposed in the embodiment of this application, the flow of the engine isolation method in this embodiment is introduced below, please refer to FIG. 5, which is a schematic diagram of another embodiment of the engine isolation method in the embodiment of this application. , The method can include:
501、在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景。501. Acquire a first switching instruction in the first scenario of the target application. The first scenario is running based on the first engine, the first container corresponding to the first engine is in an activated state, and the first container contains elements running by the first engine. The first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
502、根据第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。502. According to the first switching instruction, switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state. Corresponding to the engine, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
本申请实施例中的步骤501至步骤502可以参见图2所示的步骤201至步骤202进行理解,具体此处不再赘述。Step 501 to step 502 in the embodiment of the present application can be understood with reference to step 201 to step 202 shown in FIG. 2, and details are not described herein again.
503、在第二场景下获取第二切换指令,第二切换指令用于指示从第二场景切换到目标应用的第三场景。503. Acquire a second switching instruction in the second scene, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application.
本实施例中,第一场景、第二场景与第三场景均属于同一个目标应用中的场景,其中,第一场景与第三场景可以由同一个引擎,即第一引擎运行。除了可以从第一场景切换到第二场景之外,也可以在该第二场景下获取第二切换指令,从第二场景切换到第三场景中。In this embodiment, the first scene, the second scene, and the third scene all belong to scenes in the same target application, where the first scene and the third scene may be run by the same engine, that is, the first engine. In addition to switching from the first scene to the second scene, it is also possible to obtain a second switching instruction in the second scene to switch from the second scene to the third scene.
例如:在游戏应用中,上述所描述的第一场景可以是大厅场景,第二场景可以是对局场景,而第三场景可以是结算场景,即在对局场景结束之后、玩家在该局中失败或成功时,都会出现该玩家在对局中的胜率、败率等结算信息,即出现结算场景,那么此时可以通过第一引擎来运行。在实际应用中,第一场景、第二场景以及第三场景还可以除了大厅场景、对局场景以及结算场景以外的其他场景,在本申请实施例中将不做具体限定。请参阅图6,图6为本申请实施例中场景切换的示意图。如图6所示,针对同一个游戏应用,A玩家与 B玩家通过该游戏应用组局玩游戏,大厅场景(如图6所示的第一场景)与结算场景(如图6所示的第三场景)均由第一公司所研发具备优势的第一引擎来运行,而对局场景(如图6所示的第二场景)均由第二公司所研发的在对局中具备优势的第二引擎来运行,由于事先已经将第一引擎运行的元素都设置在第一容器中,将第二引擎运行的元素都设置在第二容器中,因此玩家可以通过在第一场景中点击“方形按钮”(如图6中手指所点击的方形框所示),便可以将第一场景切换至第二场景中,在这切换的过程中,运行第一场景的第一引擎就会变成了挂起态,使得第一引擎在第二引擎运行第二场景时无法继续工作。同理,倘若玩家在该对局中胜利了,那么就会产生有关胜利的结算,那么可以通过第三场景显示出来,例如图6所示第三场景中显示的A玩家胜利,所以也可以在第二场景中点击“方形按钮”将第二场景切换至第三场景。因此,通过在切换过程中,移动终端可以将运行不同场景的不同引擎的状态在激活态与挂起态之间的切换,实现了不同公司研发同一个游戏应用时所使用的引擎之间的运行隔离,避免了引擎运行的冲突。For example: in a game application, the first scene described above can be a lobby scene, the second scene can be a game scene, and the third scene can be a settlement scene, that is, after the game scene ends, the player is in the game In the event of failure or success, settlement information such as the player's win rate and loss rate in the game will appear, that is, the settlement scenario will appear, and then the first engine can be used to run at this time. In actual applications, the first scene, the second scene, and the third scene may also be other scenes besides the lobby scene, the game scene, and the settlement scene, which will not be specifically limited in the embodiment of the present application. Please refer to FIG. 6, which is a schematic diagram of scene switching in an embodiment of this application. As shown in Figure 6, for the same game application, Player A and Player B play the game through the game application group. The lobby scene (the first scene shown in Figure 6) and the settlement scene (the first scene shown in Figure 6) The three scenes) are all run by the first engine with advantages developed by the first company, and the game scenes (the second scene shown in Figure 6) are all developed by the second company with advantages in the game. The second engine runs, because the elements running on the first engine have been set in the first container in advance, and the elements running on the second engine are set in the second container, so the player can click on the "square" in the first scene. Button" (as shown in the square box clicked by the finger in Figure 6), you can switch the first scene to the second scene. During the switching process, the first engine running the first scene will become The suspended state makes the first engine unable to continue working while the second engine is running the second scene. In the same way, if the player wins the game, then the settlement of the victory will be generated, which can be displayed in the third scene. For example, the third scene shown in Figure 6 shows that the player A wins, so it can also be displayed in the third scene. Click the "square button" in the second scene to switch the second scene to the third scene. Therefore, during the switching process, the mobile terminal can switch the states of different engines running in different scenarios between the active state and the suspended state, realizing the operation between the engines used by different companies to develop the same game application Isolation avoids the conflict of engine operation.
需要理解的是,上述所描述的第一场景与第三场景可以相同,也就是说在第二场景下可以通过第二切换指令切换回到第一场景中。例如:可以从对局场景中切换回大厅场景等等。It should be understood that the first scene and the third scene described above may be the same, that is, in the second scene, the second switching instruction can be used to switch back to the first scene. For example: you can switch from the game scene back to the lobby scene and so on.
在一些实施例中,对于在目标应用的第二场景下获取第二切换指令可以采用如下方式:In some embodiments, the following manners may be adopted for acquiring the second switching instruction in the second scenario of the target application:
第一种,响应第二场景下的用户操作,以获取第二切换指令。The first type is to respond to user operations in the second scenario to obtain the second switching instruction.
在该实施例中,可以在第二场景中设置逻辑按钮等,若用户想要从第二场景切换到第三场景中,那么就可以直接在该第二场景中点击该逻辑按钮,这样移动终端便可以获取到该第二切换指令。In this embodiment, logical buttons can be set in the second scene. If the user wants to switch from the second scene to the third scene, he can directly click the logical button in the second scene, so that the mobile terminal Then the second switching instruction can be obtained.
第二种,当第二引擎运行第二场景的运行时长大于或等于第二预设时长时,获取第二切换指令。The second type is to obtain the second switching instruction when the second engine runs the second scene for a running time longer than or equal to the second preset time period.
本实施例中,第二预设时长可以根据不同的需求进行设置,例如,可以设置为30秒,一分钟等,在本申请实施例中将不做具体限定。若处于激活态的第二引擎运行第二场景的运行时长达到了第二预设时长,那么移动终端可以自动获取第二切换指令,触发从第二场景切换到第三场景。In this embodiment, the second preset duration can be set according to different requirements, for example, it can be set to 30 seconds, one minute, etc., which will not be specifically limited in the embodiment of the present application. If the second engine in the active state runs the second scene for a running time that reaches the second preset time length, the mobile terminal can automatically obtain the second switching instruction to trigger the switching from the second scene to the third scene.
504、根据第二切换指令,将第二容器的状态由激活态切换到挂起态,并将第一容器的状态由挂起态切换到激活态,其中,第三场景是基于第一引擎运行的。504. According to the second switching instruction, switch the state of the second container from the active state to the suspended state, and switch the state of the first container from the suspended state to the active state, where the third scenario is based on the running of the first engine of.
本实施例中,由于第二切换指令用来指示可以从第二场景切换到第三场景,那么在切换结束后,需要运行第三场景的第一引擎是处于激活态,倘若第二引擎仍然处于激活态,就会使得第一引擎与第二引擎共同访问底层图形接口(OpenGL II D3D),而底层图形接口又会访问硬件设备,此时互为黑盒的第一引擎和第二引擎的运行冲突就会造成第三场景的渲染结果出现异常。In this embodiment, since the second switching instruction is used to indicate that it is possible to switch from the second scene to the third scene, after the switching is over, the first engine that needs to run the third scene is in the active state, if the second engine is still in the active state. In the activated state, the first engine and the second engine will access the underlying graphics interface (OpenGL II D3D), and the underlying graphics interface will access the hardware device. At this time, the first engine and the second engine are mutually black boxes. The conflict will cause the rendering result of the third scene to appear abnormal.
因此,为了避免引擎之间在运行过程中的冲突,所以移动终端可以根据该第二切换指令将第二容器的状态由激活态切换到挂起态,并且将第一容器的状态由挂起态切换到激活态,从而使得可以使用处于激活态的第一引擎运行该第三场景,而切换成挂起态的第二引擎在第三场景下因无法工作则不会对第三场景的运行造成影响。Therefore, in order to avoid conflicts between the engines during operation, the mobile terminal can switch the state of the second container from the active state to the suspended state according to the second switching instruction, and change the state of the first container from the suspended state to the suspended state. Switch to the active state, so that the first engine in the active state can be used to run the third scene, and the second engine switched to the suspended state will not cause the operation of the third scene because it cannot work in the third scene influences.
为便于更好地理解本申请实施例所提出的方案,下面对本实施例中引擎隔离方法的流程进行介绍,请参阅图7,图7为本申请实施例中引擎隔离方法的另一个实施例示意图,该方法可以包括:To facilitate a better understanding of the solution proposed in the embodiment of the present application, the following describes the flow of the engine isolation method in this embodiment. Please refer to FIG. 7, which is a schematic diagram of another embodiment of the engine isolation method in the embodiment of the present application. , The method can include:
701、在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景。701. Acquire a first switching instruction in the first scenario of the target application, where the first scenario is running based on the first engine, the first container corresponding to the first engine is in an activated state, and the first container contains elements that the first engine runs. The first switching instruction is used to instruct to switch from the first scene to the second scene of the target application.
702、根据第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。702. According to the first switching instruction, switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state, and the second container is the same as the second running the second scene. Corresponding to the engine, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different containers.
703、在第二场景下获取第二切换指令,第二切换指令用于指示从第二场景切换到目标应用的第三场景。703. Acquire a second switching instruction in the second scene, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application.
704、根据第二切换指令,将第二容器的状态由激活态切换到挂起态,并将第一容器的状态由挂起态切换到激活态,其中,第三场景是基于第一引擎运行的。704. According to the second switching instruction, switch the state of the second container from the active state to the suspended state, and switch the state of the first container from the suspended state to the active state, where the third scenario is based on the running of the first engine of.
本申请实施例中的步骤701至步骤704可以参见图5所示的步骤501至步骤504进行理解,具体此处不再赘述。 Steps 701 to 704 in the embodiment of the present application can be understood with reference to steps 501 to 504 shown in FIG. 5, and the details are not repeated here.
705、在将第二容器的状态由激活态切换到挂起态时,触发保活机制,保活机制用于指示共享模块的状态为激活态,共享模块在第三场景和第二场景下被第一引擎和第二引擎共用,共享模块独立于第一容器和第二容器。705. When the state of the second container is switched from the active state to the suspended state, the keep-alive mechanism is triggered. The keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is blocked in the third scene and the second scene. The first engine and the second engine are shared, and the shared module is independent of the first container and the second container.
本实施例中,除了有关场景渲染等元素被放置在不同的容器之外,在第三场景与第二场景下都还有一些元素是能够被第一引擎和第二引擎共同使用的。可以将共享模块独立于第一容器和第二容器设置,并且设置在保活(native)层,使得无论当前处于第三场景还是第二场景该共享模块一直处于激活态。这样,移动终端便可以在第一容器的状态由激活态切换到挂起态时,触发保活机制,使得第一引擎运行第三场景,第二引擎运行第二场景时都能够调用该共享模块,增加整个引擎隔离方案的灵活性。具体可以参照图3中的步骤303进行理解,此处将不做具体赘述。In this embodiment, in addition to elements related to scene rendering, etc. are placed in different containers, there are some elements in both the third scene and the second scene that can be used by the first engine and the second engine. The sharing module can be set independently of the first container and the second container, and set in the keep-alive (native) layer, so that the sharing module is always active regardless of whether it is currently in the third scene or the second scene. In this way, the mobile terminal can trigger the keep-alive mechanism when the state of the first container is switched from the active state to the suspended state, so that the first engine runs the third scene, and the second engine runs the second scene. The shared module can be called , Increase the flexibility of the entire engine isolation scheme. For details, it can be understood with reference to step 303 in FIG. 3, which will not be described in detail here.
本实施例中,通过将在第一场景与第二场景能够共同使用的共享模块设置在保活层,使得无论当前用于运行第三场景的第一引擎是挂起态还是处于激活态时,又或者当前用于运行第二场景的第二引擎是挂起态还是处于激活态时都能够调用该共享模块,为整个隔离方案增强了灵活性。In this embodiment, the sharing module that can be used in the first scene and the second scene is set in the keep-alive layer, so that no matter whether the first engine currently used to run the third scene is in a suspended state or in an active state, Or, the shared module can be called when the second engine currently used to run the second scene is in a suspended state or in an active state, which enhances the flexibility of the entire isolation scheme.
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。可以理解的是为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。The foregoing mainly introduces the solutions provided in the embodiments of the present application from the perspective of methods. It can be understood that in order to realize the above-mentioned functions, corresponding hardware structures and/or software modules for performing each function are included. Those skilled in the art should easily realize that in combination with the modules and algorithm steps of the examples described in the embodiments disclosed in the present application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed by hardware or computer software-driven hardware depends on the specific application and design constraint conditions of the technical solution. Professionals and technicians can use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of this application.
本申请实施例可以根据上述方法示例对装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。The embodiment of the present application may divide the device into functional modules according to the foregoing method examples. For example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The above-mentioned integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
下面对本申请实施例中的引擎隔离装置80进行详细描述,请参阅图8,图8为本申请实施例中提供的引擎隔离装置80一个实施例示意图,该引擎隔离装置80包括:The engine isolation device 80 in the embodiment of the present application will be described in detail below. Please refer to FIG. 8. FIG. 8 is a schematic diagram of an embodiment of the engine isolation device 80 provided in an embodiment of the application. The engine isolation device 80 includes:
第一获取单元801,用于在目标应用的第一场景下获取第一切换指令,第一场景是基于第一引擎运行的,第一引擎对应的第一容器处于激活态,第一容器包含第一引擎运行的元素,第一切换指令用于指示从第一场景切换到目标应用的第二场景;The first acquiring unit 801 is configured to acquire a first switching instruction in a first scene of the target application. The first scene is running based on the first engine, the first container corresponding to the first engine is in an active state, and the first container contains the first An engine running element, the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
第一切换单元802,用于根据第一获取单元801获取到的第一切换指令,将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,第二容器与运行第二场景的第二引擎对应,第二容器包含第二引擎运行的元素;第一引擎与第二引擎是不同的引擎,第一容器与第二容器是不同的容器。The first switching unit 802 is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the suspended state according to the first switching instruction acquired by the first acquiring unit 801 Active state, the second container corresponds to the second engine running the second scene, the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second container are different container.
在一种可能的实现方式中,在上述图8所对应的实施例的基础上,请参阅图9,本申请实施例提供的引擎隔离装置80的另一实施例中,该引擎隔离装置80还包括:In a possible implementation manner, on the basis of the above-mentioned embodiment corresponding to FIG. 8, please refer to FIG. 9. In another embodiment of the engine isolation device 80 provided in the embodiment of the present application, the engine isolation device 80 is also include:
第二获取单元803,用于在第一切换单元802将第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态之后,在第二场景下获取第二切换指令,第二切换指令用于指示从第二场景切换到目标应用的第三场景;The second acquiring unit 803 is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state, in the second scene after the first switching unit 802 switches the state of the first container from the suspended state to the active state Acquire a second switching instruction below, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application;
第二切换单元804,用于根据第二获取单元803获取到的第二切换指令,将第二容器的状态由激活态切换到挂起态,并将第一容器的状态由挂起态切换到激活态,其中,第三场景是基于第一引擎运行的。The second switching unit 804 is configured to switch the state of the second container from the active state to the suspended state, and switch the state of the first container from the suspended state to the suspended state according to the second switching instruction acquired by the second acquiring unit 803 Active state, where the third scene is running based on the first engine.
在一种可能的实现方式中,在上述图8所对应的实施例的基础上,本申请实施例提供的引擎隔离装置80的另一实施例中,该引擎隔离装置80还包括:In a possible implementation manner, on the basis of the above-mentioned embodiment corresponding to FIG. 8, in another embodiment of the engine isolation device 80 provided in the embodiment of the present application, the engine isolation device 80 further includes:
触发单元,用于在第二切换单元804将第二容器的状态由激活态切换到挂起态时,触发保活机制,保活机制用于指示共享模块的状态为激活态,共享模块在第三场景和第二场景下被第一引擎和第二引擎共用,共享模块独立于第一容器和第二容器。The trigger unit is used to trigger the keep-alive mechanism when the second switching unit 804 switches the state of the second container from the active state to the suspended state. The keep-alive mechanism is used to indicate that the state of the shared module is in the active state, and the shared module is in the active state. The third scene and the second scene are shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
在一种可能的实现方式中,在上述图9所对应的实施例的基础上,本申请实施例提供的引擎隔离装置80的另一实施例中,该触发单元,还用于:In a possible implementation manner, on the basis of the above-mentioned embodiment corresponding to FIG. 9, in another embodiment of the engine isolation device 80 provided in the embodiment of the present application, the trigger unit is further used for:
在第一切换单元802将第一容器的状态由激活态切换到挂起态时,触发保活机制,保活机制用于指示共享模块的状态为激活态,共享模块在第一场景和第二场景下被第一引擎和第二引擎共用,共享模块独立于第一容器和第二容器。When the first switching unit 802 switches the state of the first container from the active state to the suspended state, the keep-alive mechanism is triggered. The keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the first scene and the second scene. The scenario is shared by the first engine and the second engine, and the shared module is independent of the first container and the second container.
在一种可能的实现方式中,在上述图8、图9以及图8和图9所对应的可选实施例的基础上,本申请实施例提供的引擎隔离装置80的另一实施例中,第一获取单元801,包括:In a possible implementation manner, on the basis of the above-mentioned optional embodiments corresponding to FIG. 8, FIG. 9, and FIG. 8 and FIG. 9, in another embodiment of the engine isolation device 80 provided in the embodiment of the present application, The first acquiring unit 801 includes:
第一响应模块,用于响应第一场景下的用户操作,获取第一切换指令。The first response module is configured to respond to user operations in the first scenario and obtain the first switching instruction.
在一种可能的实现方式中,在上述图8、图9以及图8和图9所对应的可选实施例的基础上,本申请实施例提供的引擎隔离装置80的另一实施例中,第一获取单元801,包括:In a possible implementation manner, on the basis of the above-mentioned optional embodiments corresponding to FIG. 8, FIG. 9, and FIG. 8 and FIG. 9, in another embodiment of the engine isolation device 80 provided in the embodiment of the present application, The first acquiring unit 801 includes:
第一获取模块,用于在第一引擎运行第一场景的运行时长大于或等于第一预设时长时,获取第一切换指令。The first acquiring module is configured to acquire the first switching instruction when the running time of the first engine running the first scene is greater than or equal to the first preset duration.
在一种可能的实现方式中,在上述图9以及图9所对应的可选实施例的基础上,本申请实施例提供的引擎隔离装置80的另一实施例中,第二获取单元803,包括:In a possible implementation manner, on the basis of the above-mentioned optional embodiment corresponding to FIG. 9 and FIG. 9, in another embodiment of the engine isolation device 80 provided in the embodiment of the present application, the second acquiring unit 803, include:
第二响应模块,用于响应第二场景下的用户操作,获取第二切换指令。The second response module is configured to respond to user operations in the second scenario and obtain a second switching instruction.
在一种可能的实现方式中,在上述图9以及图9所对应的可选实施例的基础上,本申请实施例提供的引擎隔离装置80的另一实施例中,第二获取单元803,包括:In a possible implementation manner, on the basis of the above-mentioned optional embodiment corresponding to FIG. 9 and FIG. 9, in another embodiment of the engine isolation device 80 provided in the embodiment of the present application, the second acquiring unit 803, include:
第二获取模块,用于在第二引擎运行第二场景的运行时长大于或等于第二预设时长时,获取第二切换指令。The second acquiring module is configured to acquire the second switching instruction when the running time of the second engine running the second scene is greater than or equal to the second preset duration.
上面从模块化功能实体的角度对本申请实施例中的引擎隔离装置80进行描述,下面从硬件处理的角度对本申请实施例中的移动终端100进行描述。请参阅图10,图10是本申请实施例公开的一种移动终端的结构示意图。如图10所示,该移动终端100包括处理器1001和存储器1002,其中,移动终端100还可以包括总线1003,处理器1001和存储器1002可以通过总线1003相互连接,总线1003可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。总线1003可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中,移动终端100还可以包括输入输出设备1004,输入输出设备1004可以包括显示屏,例如液晶显示屏。存储器1002用于存储包含指令的一个或多个程序;处理器1001用于调用存储在存储器1002中的指令执行上述图1至图7中的部分或全部方法步骤。The engine isolation device 80 in the embodiment of the present application is described above from the perspective of a modular functional entity, and the mobile terminal 100 in the embodiment of the present application is described below from the perspective of hardware processing. Please refer to FIG. 10, which is a schematic structural diagram of a mobile terminal disclosed in an embodiment of the present application. As shown in FIG. 10, the mobile terminal 100 includes a processor 1001 and a memory 1002. The mobile terminal 100 may also include a bus 1003. The processor 1001 and the memory 1002 may be connected to each other through a bus 1003, and the bus 1003 may be an interconnection of peripheral components. Peripheral Component Interconnect (PCI) bus or Extended Industry Standard Architecture (EISA) bus, etc. The bus 1003 can be divided into an address bus, a data bus, a control bus, and so on. For ease of representation, only one thick line is used to represent in FIG. 10, but it does not mean that there is only one bus or one type of bus. Wherein, the mobile terminal 100 may also include an input/output device 1004, and the input/output device 1004 may include a display screen, such as a liquid crystal display screen. The memory 1002 is used to store one or more programs containing instructions; the processor 1001 is used to call the instructions stored in the memory 1002 to execute some or all of the method steps in FIGS. 1 to 7 described above.
本申请实施例还提供了另一种移动终端,如图11所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该移动 终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以移动终端为手机为例:The embodiment of the present application also provides another mobile terminal, as shown in FIG. 11, for ease of description, only the part related to the embodiment of the present application is shown. For specific technical details that are not disclosed, please refer to the method of the embodiment of the present application. section. The mobile terminal can be any terminal device including a mobile phone, a tablet computer, a PDA (Personal Digital Assistant), a POS (Point of Sales, sales terminal), a vehicle-mounted computer, etc. Take the mobile terminal as a mobile phone as an example:
图11示出的是与本申请实施例提供的移动终端相关的手机的部分结构的框图。参考图11,手机包括:射频(Radio Frequency,RF)电路1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(Wireless Fidelity,WiFi)模块1170、处理器1180、电源1190、以及摄像头11100等部件。输入单元1130可包括指纹识别模组1131以及其他输入设备1132,显示单元1140可包括显示屏1141,音频电路1160包括扬声器1161和传声器1162。本领域技术人员可以理解,图11中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。FIG. 11 shows a block diagram of a part of the structure of a mobile phone related to a mobile terminal provided in an embodiment of the application. 11, the mobile phone includes: a radio frequency (RF) circuit 1110, a memory 1120, an input unit 1130, a display unit 1140, a sensor 1150, an audio circuit 1160, a wireless fidelity (Wireless Fidelity, WiFi) module 1170, and a processor 1180 , Power supply 1190, and camera 11100 and other components. The input unit 1130 may include a fingerprint recognition module 1131 and other input devices 1132, the display unit 1140 may include a display screen 1141, and the audio circuit 1160 includes a speaker 1161 and a microphone 1162. Those skilled in the art can understand that the structure of the mobile phone shown in FIG. 11 does not constitute a limitation on the mobile phone, and may include more or less components than those shown in the figure, or a combination of certain components, or different component arrangements.
存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。The memory 1120 may be used to store software programs and modules. The processor 1180 executes various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 1120. The memory 1120 may mainly include a program storage area and a data storage area. The program storage area may store an operating system, an application program required for at least one function, etc.; the data storage area may store data created according to the use of the mobile phone, etc. In addition, the memory 1120 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other volatile solid-state storage devices.
处理器1180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1180可包括一个或多个处理单元;优选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。The processor 1180 is the control center of the mobile phone. It uses various interfaces and lines to connect various parts of the entire mobile phone. It executes by running or executing software programs and/or modules stored in the memory 1120, and calling data stored in the memory 1120. Various functions and processing data of the mobile phone can be used to monitor the mobile phone as a whole. Optionally, the processor 1180 may include one or more processing units; preferably, the processor 1180 may integrate an application processor and a modem processor, where the application processor mainly processes the operating system, user interface, application programs, etc. , The modem processor mainly deals with wireless communication. It can be understood that the foregoing modem processor may not be integrated into the processor 1180.
前述图1至图7所示的实施例中,各步骤方法流程可以基于该手机的结构实现。In the foregoing embodiments shown in FIGS. 1 to 7, the method flow of each step can be implemented based on the structure of the mobile phone.
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种引擎隔离方法的部分或全部步骤。An embodiment of the present application also provides a computer storage medium, wherein the computer storage medium stores a computer program for electronic data exchange, and the computer program causes a computer to execute any part of the engine isolation method described in the above method embodiment. Or all steps.
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种引擎隔离方法的部分或全部步骤。The embodiments of the present application also provide a computer program product. The computer program product includes a non-transitory computer-readable storage medium storing a computer program. The computer program is operable to cause a computer to execute the method described in the foregoing method embodiment. Part or all of the steps of any engine isolation method.
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。It should be noted that for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations, but those skilled in the art should know that the present invention is not limited by the described sequence of actions. Because according to the present invention, certain steps can be performed in other order or simultaneously.
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。In the above-mentioned embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in an embodiment, reference may be made to related descriptions of other embodiments.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that, for the convenience and conciseness of the description, the specific working process of the above-described system, device, and unit can refer to the corresponding process in the foregoing method embodiment, which will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In the several embodiments provided in this application, it should be understood that the disclosed system, device, and method can be implemented in other ways. In addition, the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solution of this application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium. , Including several instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods in the various embodiments of the present application. The aforementioned storage media include: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disk and other media that can store program code .
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。Above, the above embodiments are only used to illustrate the technical solutions of the present application, not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, a person of ordinary skill in the art should understand that it can still implement the foregoing various implementations. The technical solutions described in the examples are modified, or some of the technical features are equivalently replaced; these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.

Claims (16)

  1. 一种引擎隔离方法,所述引擎隔离方法包括:An engine isolation method, the engine isolation method includes:
    在目标应用的第一场景下获取第一切换指令,所述第一场景是基于第一引擎运行的,所述第一引擎对应的第一容器处于激活态,所述第一容器包含所述第一引擎运行的元素,所述第一切换指令用于指示从所述第一场景切换到所述目标应用的第二场景;Acquire the first switching instruction in the first scenario of the target application, the first scenario is running based on the first engine, the first container corresponding to the first engine is in an activated state, and the first container contains the first An engine running element, where the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
    根据所述第一切换指令,将所述第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,所述第二容器与运行所述第二场景的第二引擎对应,所述第二容器包含所述第二引擎运行的元素;所述第一引擎与所述第二引擎是不同的引擎,所述第一容器与所述第二容器是不同的容器。According to the first switching instruction, the state of the first container is switched from the active state to the suspended state, and the state of the second container is switched from the suspended state to the active state. The second engine of the second scene corresponds to the second engine, and the second container contains elements that the second engine runs; the first engine and the second engine are different engines, and the first container and the second engine are different. Containers are different containers.
  2. 根据权利要求1所述的引擎隔离方法,在将所述第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态之后,所述引擎隔离方法还包括:The engine isolation method according to claim 1, after the state of the first container is switched from the active state to the suspended state, and the state of the second container is switched from the suspended state to the active state, the engine is isolated Methods also include:
    在所述第二场景下获取第二切换指令,所述第二切换指令用于指示从所述第二场景切换到所述目标应用的第三场景;Acquiring a second switching instruction in the second scene, where the second switching instruction is used to instruct to switch from the second scene to the third scene of the target application;
    根据所述第二切换指令,将所述第二容器的状态由激活态切换到挂起态,并将所述第一容器的状态由挂起态切换到激活态,其中,所述第三场景是基于所述第一引擎运行的。According to the second switching instruction, the state of the second container is switched from the active state to the suspended state, and the state of the first container is switched from the suspended state to the active state, wherein the third scene It runs based on the first engine.
  3. 根据权利要求2所述的引擎隔离方法,所述引擎隔离方法还包括:The engine isolation method according to claim 2, the engine isolation method further comprising:
    在将所述第二容器的状态由激活态切换到挂起态时,触发保活机制,所述保活机制用于指示共享模块的状态为激活态,所述共享模块在所述第三场景和所述第二场景下被所述第一引擎和所述第二引擎共用,所述共享模块独立于所述第一容器和所述第二容器。When the state of the second container is switched from the active state to the suspended state, the keep-alive mechanism is triggered, and the keep-alive mechanism is used to indicate that the state of the sharing module is the active state, and the sharing module is in the third scene As in the second scenario, it is shared by the first engine and the second engine, and the sharing module is independent of the first container and the second container.
  4. 根据权利要求1所述的引擎隔离方法,所述引擎隔离方法还包括:The engine isolation method according to claim 1, the engine isolation method further comprising:
    在将所述第一容器的状态由激活态切换到挂起态时,触发保活机制,所述保活机制用于指示共享模块的状态为激活态,所述共享模块在所述第一场景和所述第二场景下被所述第一引擎和所述第二引擎共用,所述共享模块独立于所述第一容器和所述第二容器。When the state of the first container is switched from the active state to the suspended state, the keep-alive mechanism is triggered, and the keep-alive mechanism is used to indicate that the state of the sharing module is the active state, and the sharing module is in the first scene As in the second scenario, it is shared by the first engine and the second engine, and the sharing module is independent of the first container and the second container.
  5. 根据权利要求1-4中任一所述的引擎隔离方法,所述在目标应用的第一场景下获取第一切换指令,包括:According to the engine isolation method according to any one of claims 1-4, said acquiring the first switching instruction in the first scene of the target application comprises:
    响应所述第一场景下的用户操作,获取第一切换指令。In response to the user operation in the first scenario, a first switching instruction is acquired.
  6. 根据权利要求1-4中任一所述的引擎隔离方法,所述在目标应用的第一场景下获取第一切换指令,包括:According to the engine isolation method according to any one of claims 1-4, said acquiring the first switching instruction in the first scene of the target application comprises:
    当所述第一引擎运行所述第一场景的运行时长大于或等于第一预设时长时,获取第一切换指令。When the running time of the first engine running the first scene is greater than or equal to the first preset time, the first switching instruction is acquired.
  7. 根据权利要求2-3中任一所述的引擎隔离方法,所述在所述第二场景下获取第二切换指令,包括:According to the engine isolation method of any one of claims 2-3, said acquiring a second switching instruction in the second scenario includes:
    响应所述第二场景下的用户操作,获取第二切换指令。In response to the user operation in the second scenario, a second switching instruction is acquired.
  8. 根据权利要求2-3中任一所述的引擎隔离方法,所述在所述第二场景下获取第二切换指令,包括:According to the engine isolation method of any one of claims 2-3, said acquiring a second switching instruction in the second scenario includes:
    当所述第二引擎运行所述第二场景的运行时长大于或等于第二预设时长时,获取第二切换指令。When the second engine runs the second scene for a running duration greater than or equal to a second preset duration, a second switching instruction is acquired.
  9. 权利要求1-8中任一所述的引擎隔离方法,所述目标应用安装于移动终端。The engine isolation method according to any one of claims 1-8, wherein the target application is installed in a mobile terminal.
  10. 根据权利要求1-9中任一所述的引擎隔离方法,所述目标应用包括游戏应用。According to the engine isolation method of any one of claims 1-9, the target application includes a game application.
  11. 一种引擎隔离装置,包括:An engine isolation device, including:
    第一获取单元,用于在目标应用的第一场景下获取第一切换指令,所述第一场景是基于第一引擎运行的,所述第一引擎对应的第一容器处于激活态,所述第一容器包含所述第一引擎运行的元素,所述第一切换指令用于指示从所述第一场景切换到所述目标应用的第二场景;The first acquiring unit is configured to acquire a first switching instruction in a first scenario of the target application, the first scenario is running based on a first engine, and the first container corresponding to the first engine is in an activated state, and The first container contains elements run by the first engine, and the first switching instruction is used to instruct to switch from the first scene to the second scene of the target application;
    第一切换单元,用于根据所述第一获取单元获取到的所述第一切换指令,将所述第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态,所述第二容器与运行所述第二场景的第二引擎对应,所述第二容器包含所述第二引擎运行的元素;所述第一引擎与所述第二引擎是不同的引擎,所述第一容器与所述第二容器是不同的容器。The first switching unit is configured to switch the state of the first container from the active state to the suspended state according to the first switching instruction acquired by the first acquiring unit, and to switch the state of the second container from the suspended state. The starting state switches to the active state, the second container corresponds to the second engine running the second scene, and the second container contains elements that the second engine runs; the first engine and the second engine The engines are different engines, and the first container and the second container are different containers.
  12. 根据权利要求11所述的引擎隔离装置,所述引擎隔离装置还包括:The engine isolation device according to claim 11, the engine isolation device further comprising:
    第二获取单元,用于在所述第一切换单元将所述第一容器的状态由激活态切换到挂起态,并将第二容器的状态由挂起态切换到激活态之后,在所述第二场景下获取第二切换指令,所述第二切换指令用于指示从所述第二场景切换到所述目标应用的第三场景;The second acquiring unit is configured to switch the state of the first container from the active state to the suspended state, and switch the state of the second container from the suspended state to the active state, after the first switching unit switches the state of the first container from the suspended state to the active state. Acquiring a second switching instruction in the second scenario, where the second switching instruction is used to instruct to switch from the second scenario to the third scenario of the target application;
    第二切换单元,用于根据所述第二获取单元获取到的所述第二切换指令,将所述第二容器的状态由激活态切换到挂起态,并将所述第一容器的状态由挂起态切换到激活态,其中,所述第三场景是基于所述第一引擎运行的。The second switching unit is configured to switch the state of the second container from the active state to the suspended state according to the second switching instruction acquired by the second acquiring unit, and change the state of the first container Switch from the suspended state to the active state, wherein the third scene is running based on the first engine.
  13. 根据权利要求11所述的引擎隔离装置,所述引擎隔离装置还包括:The engine isolation device according to claim 11, the engine isolation device further comprising:
    触发单元,用于在将所述第二容器的状态由激活态切换到挂起态时,触发保活机制,所述保活机制用于指示共享模块的状态为激活态,所述共享模块在所述第三场景和所述第二场景下被所述第一引擎和所述第二引擎共用,所述共享模块独立于所述第一容器和所述第二容器。The trigger unit is used to trigger the keep-alive mechanism when the state of the second container is switched from the active state to the suspended state, and the keep-alive mechanism is used to indicate that the state of the shared module is the active state, and the shared module is in the active state. The third scene and the second scene are shared by the first engine and the second engine, and the sharing module is independent of the first container and the second container.
  14. 一种移动终端,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1至10任意一项所述的引擎隔离方法。A mobile terminal includes: a processor and a memory, the processor and the memory are connected by a communication bus; wherein, the processor is used to call and execute the program stored in the memory; the memory is used to store A program, which is used to implement the engine isolation method according to any one of claims 1 to 10.
  15. 一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至10任意一项所述的引擎隔离方法。A computer-readable storage medium in which computer-executable instructions are stored, and the computer-executable instructions are used to execute the engine isolation method according to any one of claims 1 to 10.
  16. 一种计算机程序产品,当所述计算机程序产品被执行时,用于执行权利要求1-10任意一项所述的引擎隔离方法。A computer program product, when the computer program product is executed, is used to execute the engine isolation method according to any one of claims 1-10.
PCT/CN2020/120768 2019-12-11 2020-10-14 Engine isolation method and related apparatus WO2021114854A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911268031.4A CN110955510B (en) 2019-12-11 2019-12-11 Isolation processing method and related device
CN201911268031.4 2019-12-11

Publications (1)

Publication Number Publication Date
WO2021114854A1 true WO2021114854A1 (en) 2021-06-17

Family

ID=69980928

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/120768 WO2021114854A1 (en) 2019-12-11 2020-10-14 Engine isolation method and related apparatus

Country Status (2)

Country Link
CN (1) CN110955510B (en)
WO (1) WO2021114854A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110955510B (en) * 2019-12-11 2021-03-02 腾讯科技(上海)有限公司 Isolation processing method and related device
CN112546633B (en) * 2020-12-10 2024-06-21 网易(杭州)网络有限公司 Virtual scene processing method, device, equipment and storage medium
CN117369950B (en) * 2023-12-04 2024-02-20 上海凯翔信息科技有限公司 Configuration system of docker container

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130072260A1 (en) * 2011-09-15 2013-03-21 Nokia Corporation Methods and apparatuses for facilitating sharing device connections
CN107608757A (en) * 2017-08-29 2018-01-19 华为技术有限公司 A kind of isolation processing method and relevant device based on container
CN109933435A (en) * 2019-03-25 2019-06-25 联想(北京)有限公司 Control method, device and computer equipment
CN110069322A (en) * 2019-03-21 2019-07-30 努比亚技术有限公司 Processing method, terminal device and the storage medium of background application
CN110955510A (en) * 2019-12-11 2020-04-03 腾讯科技(深圳)有限公司 Isolation processing method and related device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089269B2 (en) * 2003-09-11 2006-08-08 International Business Machines Corporation Switching between containers
US8171483B2 (en) * 2007-10-20 2012-05-01 Citrix Systems, Inc. Method and system for communicating between isolation environments
CN102467565B (en) * 2010-11-19 2016-05-11 北京奇虎科技有限公司 A kind of method that browser kernel switches
CN104468834B (en) * 2014-12-26 2017-12-26 北京奇虎科技有限公司 Carry out the method, apparatus and browser client of Cookie data processing
CN105183558B (en) * 2015-08-26 2018-11-16 北京元心科技有限公司 The management method of intelligent terminal and its containment system
CN106528193B (en) * 2015-09-15 2019-11-12 腾讯科技(深圳)有限公司 A kind of application update method and terminal
EP3264711B1 (en) * 2016-06-28 2018-09-19 Virtual Open Systems Virtual switch for multi-compartment mixed critical network communications
CN106484394B (en) * 2016-09-13 2019-07-12 厦门兆慧网络科技有限公司 A kind of fast software development system with double engines
CN106681792A (en) * 2016-11-14 2017-05-17 乐视控股(北京)有限公司 Switching method and switching device of rendering engine and electronic device
US10693913B2 (en) * 2017-04-28 2020-06-23 Cisco Technology, Inc. Secure and policy-driven computing for fog node applications
CN107679061B (en) * 2017-07-26 2019-12-24 深圳壹账通智能科技有限公司 Page navigation method, device, terminal and storage medium of hybrid APP
CN109902255B (en) * 2019-02-27 2021-04-27 百度在线网络技术(北京)有限公司 Page mixed browsing record generation method, device, equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130072260A1 (en) * 2011-09-15 2013-03-21 Nokia Corporation Methods and apparatuses for facilitating sharing device connections
CN107608757A (en) * 2017-08-29 2018-01-19 华为技术有限公司 A kind of isolation processing method and relevant device based on container
CN110069322A (en) * 2019-03-21 2019-07-30 努比亚技术有限公司 Processing method, terminal device and the storage medium of background application
CN109933435A (en) * 2019-03-25 2019-06-25 联想(北京)有限公司 Control method, device and computer equipment
CN110955510A (en) * 2019-12-11 2020-04-03 腾讯科技(深圳)有限公司 Isolation processing method and related device

Also Published As

Publication number Publication date
CN110955510A (en) 2020-04-03
CN110955510B (en) 2021-03-02

Similar Documents

Publication Publication Date Title
WO2021114854A1 (en) Engine isolation method and related apparatus
US9973506B2 (en) Method and apparatus for clearing notification icon, and storage medium
CN109617932A (en) Method and apparatus for handling data
EP3547715A1 (en) Method and apparatus for reducing continuous-wakeup delay of bluetooth loudspeaker, and bluetooth loudspeaker
JP6376638B2 (en) Server computer and game program related to game
US20220392130A1 (en) Image special effect processing method and apparatus
JP7311707B2 (en) Human-machine interaction processing method
WO2017050150A1 (en) Secure voice communication method and device based on instant communication
CN113867876B (en) Expression display method, device, equipment and storage medium
CN110070592B (en) Generation method and device of special effect package and hardware device
CN109005107B (en) Communication method, intelligent terminal and device with storage function
CN113691602B (en) Service processing method, system, device, equipment and medium based on cloud mobile phone
US20170171508A1 (en) Method and Device for Inputting Audio and Video Information
CN111790148A (en) Information interaction method and device in game scene and computer readable medium
US10659539B2 (en) Independent internet connection generation
CN105376761B (en) Establish the method, apparatus and phone system of call connection
CN112994981B (en) Method and device for adjusting time delay data, electronic equipment and storage medium
WO2014160621A1 (en) Receiving a communication event
CN108293052A (en) Communication system
CN107395493B (en) Method and device for sharing message based on intention
WO2020073324A1 (en) Game user matching method, related device, and computer readable storage medium
CN115865852A (en) Instant messaging session information processing method and device and electronic equipment
CN115421841A (en) Notification processing method, terminal device, server and computer storage medium
CN108289056A (en) Share the method, apparatus and computing device of dynamic chart
CN107819947B (en) Picture display method and device

Legal Events

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

Ref document number: 20898620

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20898620

Country of ref document: EP

Kind code of ref document: A1