CN111722885B - Program running method and device and electronic equipment - Google Patents

Program running method and device and electronic equipment Download PDF

Info

Publication number
CN111722885B
CN111722885B CN202010567954.6A CN202010567954A CN111722885B CN 111722885 B CN111722885 B CN 111722885B CN 202010567954 A CN202010567954 A CN 202010567954A CN 111722885 B CN111722885 B CN 111722885B
Authority
CN
China
Prior art keywords
application program
file
path
target
engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010567954.6A
Other languages
Chinese (zh)
Other versions
CN111722885A (en
Inventor
余强
黄造军
金士杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Douyin Vision Co Ltd
Original Assignee
Douyin Vision Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Douyin Vision Co Ltd filed Critical Douyin Vision Co Ltd
Priority to CN202010567954.6A priority Critical patent/CN111722885B/en
Publication of CN111722885A publication Critical patent/CN111722885A/en
Application granted granted Critical
Publication of CN111722885B publication Critical patent/CN111722885B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The disclosure provides a program running method, a program running device and electronic equipment, and relates to the technical field of computers. The method comprises the following steps: responding to a second application program running instruction sent by the first application program, and acquiring an application program installation package of the second application program; the application program installation package is built based on a target engine; acquiring a target engine and a target file based on an application program installation package; the target file is a file required by the second application program to run; acquiring a target file path, wherein the target file path is a storage path of a target file; and sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file. The present disclosure may load an engine plug-in through a first application to run a second application based on a target engine and a target file in an application installation package of the second application.

Description

Program running method and device and electronic equipment
Technical Field
The disclosure relates to the technical field of computers, and in particular relates to a program running method, a program running device and electronic equipment.
Background
With the development of internet technology, intelligent terminals are used more and more frequently, wherein the intelligent terminals applying the android system occupy important market positions, and application programs can be run on the intelligent terminals so that users can experience various application program functions. When an application program, such as a game application program, is run on the intelligent terminal, a Unity engine is often required to be used as a game development tool, so that loading, rendering, visualization and the like of a game can be realized.
Currently, a third-party browser is generally used to run an application program, so that application program functions are shown on the browser, for example, webGL (web graphics library ) is a 3D (threed imensional, three-dimensional) drawing technology standard, and using WebGL technology, system graphics cards can be used to show application program functions on the browser, but in this way, the application program is run by the third-party browser, so that the performance of the application program is poor.
Disclosure of Invention
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
A first aspect of the present disclosure provides a program running method, the method including:
responding to a second application program running instruction sent by the first application program, and acquiring an application program installation package of the second application program; the application program installation package is built based on a target engine;
acquiring a target engine and a target file based on an application program installation package; the target file is a file required by the second application program to run;
acquiring a target file path, wherein the target file path is a storage path of a target file;
and sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file.
A second aspect of the present disclosure provides a program running method, the method comprising:
receiving a target file path sent by an engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
Acquiring a target file from a target file path;
and running a second application program based on the acquired target file.
A third aspect of the present disclosure provides a program running method, the method comprising:
responding to a second application program running instruction sent by the first application program, and calling an engine plug-in to display a download page of an application program installation package of the second application program;
when a downloading instruction sent through a downloading page is detected, the calling engine plug-in obtains an application program installation package of the second application program, and the method of the first aspect is executed to operate the second application program by taking the first application program as a host application program.
A fourth aspect of the present disclosure provides a program running method, the method including:
responding to an application program operation instruction of a user, acquiring an engine plug-in, wherein the engine plug-in is used for loading a target engine required by operating the application program;
and downloading a program installation package of the application program based on the engine plug-in and running the application program.
A fifth aspect of the present disclosure provides a program running apparatus, comprising:
the first acquisition module is used for responding to a second application program running instruction sent by the first application program and acquiring an application program installation package of the second application program; the application program installation package is built based on a target engine;
The second acquisition module is used for acquiring the target engine and the target file based on the application program installation package; the target file is a file required by the second application program to run;
the third acquisition module is used for acquiring a target file path, wherein the target file path is a storage path of the target file;
and the sending module is used for sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file.
A sixth aspect of the present disclosure provides a program running apparatus, comprising:
the receiving module is used for receiving the target file path sent by the engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
the fourth acquisition module is used for acquiring the target file from the target file path;
And the operation module is used for operating the second application program based on the acquired target file.
A seventh aspect of the present disclosure provides a program running apparatus, comprising:
the first mobilizing module is used for responding to a second application program running instruction sent by the first application program and calling the engine plug-in to display a download page of an application program installation package of the second application program;
and the second calling module is used for calling the engine plug-in to acquire an application program installation package of the second application program when detecting a downloading instruction sent through the downloading page, and executing the steps of the device in the fifth aspect to run the second application program by taking the first application program as a host application program.
An eighth aspect of the present disclosure provides a program running apparatus, comprising:
the fifth acquisition module is used for responding to an application program operation instruction of a user and acquiring an engine plug-in, wherein the engine plug-in is used for loading a target engine required by operating the application program;
and the downloading module is used for downloading a program installation package of the application program based on the engine plug-in and running the application program.
In a ninth aspect of the present disclosure, there is provided an electronic apparatus including:
the electronic device includes a memory and a processor;
A memory having a computer program stored therein;
a processor for performing the method of any one of the first to fourth aspects when the computer program is run.
In a tenth aspect of the present disclosure, there is provided a computer readable medium having stored thereon a computer program which, when executed by a processor, performs the method of any one of the first to fourth aspects.
The beneficial effects that this disclosure provided technical scheme brought are:
when an operation instruction of a second application program sent by a first application program is responded, an application program installation package of the second application program can be obtained, a target engine and a target file are obtained based on the APK, a target file path is obtained, and after the target file path is sent to the target engine, the target file path is a storage path of the target file, so that the target engine can inquire and obtain the target file based on the target file path, the target file is a file required by the second application program operation, the target engine can operate the second application program based on the target file, and compared with the existing scheme, the method and the device can use the first application program as a host APP, operate the second application program through the target engine and the target file of the original second application program, improve the performance of the second application program during operation, and enrich user experience.
Meanwhile, the method and the device can realize that the second application program is not installed, the second application program can be operated, the quick release of the second application program is realized, and different application programs can be experienced in the host APP.
Drawings
The above and other features, advantages, and aspects of embodiments of the present disclosure will become more apparent by reference to the following detailed description when taken in conjunction with the accompanying drawings. The same or similar reference numbers will be used throughout the drawings to refer to the same or like elements. It should be understood that the figures are schematic and that elements and components are not necessarily drawn to scale.
FIG. 1 is a general schematic diagram of the present disclosure;
FIG. 2 is a schematic diagram of one embodiment of a method of program operation of the present disclosure;
FIG. 3 is a schematic diagram of another embodiment of the method of program operation of the present disclosure;
FIG. 4 is a schematic diagram of another embodiment of the method of program operation of the present disclosure;
FIG. 5 is a schematic diagram of another embodiment of the method of program operation of the present disclosure;
FIG. 6 is a schematic diagram of another embodiment of the method of program operation of the present disclosure;
FIG. 7 is a schematic diagram of a scenario of the disclosed program running method;
FIG. 8 is a schematic diagram of a configuration of the program execution device of the present disclosure;
FIG. 9 is another schematic diagram of a program running apparatus of the present disclosure;
Fig. 10 is a schematic structural view of an electronic device of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure have been shown in the accompanying drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustration purposes only and are not intended to limit the scope of the present disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order and/or performed in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "including" and variations thereof as used herein are intended to be open-ended, i.e., including, but not limited to. The term "based on" is based at least in part on. The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments. Related definitions of other terms will be given in the description below.
It should be noted that the terms "first," "second," and the like in this disclosure are used merely to distinguish one from another device, module, or unit, and are not intended to limit the device, module, or unit to the particular device, module, or unit or to limit the order or interdependence of functions performed by the devices, modules, or units.
It should be noted that references to "one", "a plurality" and "a plurality" in this disclosure are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be understood as "one or more" unless the context clearly indicates otherwise.
The names of messages or information interacted between the various devices in the embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
In the following, several technical terms related to the present disclosure will be explained first.
The APK (Android application package, android application installation package) is an application package file format used by an Android (Android) operating system, and after compiling codes and compressing resources, the APK can be constructed by using a project automation construction tool, and the APK contains all contents of an Android application program and specifically includes: dynamic library files, resource files, etc.
Dynamic library files are typically stored in the lib directory: depending on the type of CPU (central processing unit ), the lib directory may contain a variety of different types, where the CPU type may include: at least one of armeabi-v7a, arm64-v8a, and x 86.
The resource file is typically stored in the res directory: res is an abbreviation of resource, and a resource file stored in the res directory has a corresponding path identifier, and the resource file can be accessed based on the path identifier, where the resource file specifically includes: at least one of an animation file, an image resource, a video resource, a layout file, a feature value, a color value, a size value, a value of a character string, a style object, and an xml format file.
The engine plug-in: the system is a program written by an application program interface conforming to a certain specification, can only run under a system platform specified by the application program, can simultaneously support a plurality of system platforms, and cannot independently run from a specified system platform.
Target engine: is a command line tool that can create items, run items, and release items using a target engine for the field of games, i.e., a game engine, which is the core component of a programmed editable computer game system or some interactive real-time image application.
The existing manner of running an application on a browser has the following drawbacks:
1. the application program is run through the third-party browser, so that the performance of the program is poor in running, and the method is specifically characterized in that: the method cannot show rich image details and slightly complex physical characteristic simulation, and has low resolution, unclear image quality, high CPU overhead and no realization of direct GPU (graphics processing unit, graphics processor) control.
2. WebGL depends on browser use, and WebGL has evolved from other versions, resulting in browser compatibility becoming a significant problem due to the inconsistent versions supported by each browser.
3. The application range is limited, webGL can only be developed as a simple small game, compared with the development of a Unity native game, the related technical stack is different, tool construction is not comprehensive enough, meanwhile, a developer wants to release the game in the form, and the player needs to learn and understand again, so that the labor cost is high.
In order to solve the above technical problems, the present disclosure provides a program running method, which is specifically executed by an engine plug-in of a first APP (application program), where the engine plug-in of the first application program refers to an engine plug-in taking the first application program as a host application program, and the first application program may call the engine plug-in to load a component to implement a component function, as shown in fig. 1, which is a general schematic diagram of the present disclosure, the host APP may obtain the engine plug-in from a plug-in server and install the engine plug-in, and the host APP may call the engine plug-in to download a host (host refers to a desktop Launcher in an android system) to start an android desktop, and at the same time, the engine plug-in may also download, decompress and manage Game projects (Game projects, that is APKs of Game applications) of any Game, such as Game (Game) a and GameB in fig. 1.
The present disclosure provides a program running method, which may be applied to the field of games, specifically, referring to fig. 2, the method may include:
step S201, responding to a second application program running instruction sent by the first application program, and acquiring an application program installation package of the second application program; the second application installation package is built based on the target engine;
the first application program can download and install the engine plug-in from the plug-in server, the storage path of the engine plug-in is a storage path accessible to the first application program, the first application program is a currently running application program, when the engine plug-in detects a running instruction for the second application program sent by the first application program, an acquisition instruction of an APK (APKs in subsequent implementations refer to APKs of the second application program) of the second application program can be sent to the data server in response to the running instruction, so that the APK of the second application program sent by the data server based on the acquisition instruction can be received.
It should be noted that the plug-in server and the data server may be the same server or different servers.
In this embodiment, the second application program is a different application program from the first application program, where the second application program is an application program that is not downloaded or installed by the system to which the first application program belongs, and after the engine plug-in obtains the APK of the second application program, the second application program corresponding to the APK may not be installed, but the second application program may be run by using the first application program as the host APP based on the APK.
In this embodiment, the engine plug-in detecting the running instruction for the second application program sent by the first application program includes: selection instructions for control identification of the second application program and download instructions for the second application program, specifically:
the display page of the first application program comprises a control identifier (such as a program icon and the like) corresponding to the second application program, when the first application program detects a selection instruction of a user for the control identifier, the engine plug-in can be called to display a download inlet of the second application program, and when the engine plug-in detects a selection operation of the user for the download inlet, the engine plug-in detects a download instruction for the second application program.
In this embodiment, the application installation package is built based on the target engine, i.e., the target engine is included in the application installation package.
Step S202, acquiring a target engine and a target file based on an application program installation package; the target file is a file required by the second application program to run;
the engine plug-in can acquire a target engine and a target file based on the APK, wherein the target file refers to a file required by running the second application program or a file required by the second application program in normal running.
After the target engine is acquired, the target engine can be operated in the first application program, and the game page generated by the target engine can be displayed on the display page of the first application program.
Step S203, obtaining a target file path, wherein the target file path is a storage path of a target file;
the engine plug-in may store the target file in the target file path, specifically: the engine plug-in can store the target file in a target file path accessible to the first application program by setting a storage path, and more specifically: the engine plug-in may modify the storage path of the APK from an initial default storage path (the initial default storage path is generally a storage path accessible to the second application program but not accessible to the first application program) to a storage path under the first application program, that is, the storage path is a storage path accessible to the first application program, and then determine a target file path for storing the target file based on the storage path.
After the engine plug-in stores the target file in the target file path, the engine plug-in can acquire the target file path, the first application program can access the target file path, and the target engine operates in the first application program, so that the target engine operating in the first application program can also access the target file path to acquire the target file.
Step S204, a target file path is sent to the target engine, so that the target engine can acquire the target file, and a second application program is operated based on the acquired target file.
The engine plug-in may initialize the target engine, which refers to: the engine plug-in sends a target file path to the target engine, so that the target engine can acquire a target file stored in the target file path based on the target file path, and then the target engine can run a second application program based on the target file to generate a corresponding game page, and the game page is displayed on a display page of the first application program.
In this embodiment, when an operation instruction of a second application program sent by a first application program is responded, an application program installation package of the second application program can be obtained, a target engine and a target file are obtained based on the APK, a target file path is obtained, and after the target file path is sent to the target engine, the target file path is a storage path of the target file, so that the target engine can obtain the target file based on the target file path query, and the target file is a file required by the second application program operation, the target engine can operate the second application program based on the target file, and compared with the existing scheme, the method and the device can use the first application program as a host APP, operate the second application program through the target engine and the target file of the original second application program, so that the performance of the second application program during operation is improved, and user experience is enriched.
Meanwhile, the method and the device can realize that the second application program is not installed, the second application program can be operated, the quick release of the second application program is realized, and different application programs can be experienced in the host APP.
Optionally, the target file includes a dynamic library file and a resource file; the target file path comprises a dynamic library file storage path and a resource file loading path;
acquiring a target file path, comprising:
acquiring a dynamic library file path and a resource file loading path; the dynamic library file path is a preset path accessible to the first application program;
before sending the target file path to the target engine, the method further comprises:
based on the application program installation package, extracting a dynamic library file, and storing the dynamic library file in a dynamic library file storage path;
sending the target file path to the target engine includes:
and sending the dynamic library file storage path and the resource file loading path to the target engine.
In the above step S102, the engine plug-in may acquire the target engine and the target file based on the application installation package, which may be: the engine plug-in queries the target engine and target file in the application installation package, but does not extract the target engine and target file.
The target file includes a dynamic library file and a resource file, and after the engine plug-in obtains the target engine and the target file, the engine plug-in may further extract the target engine and the dynamic library file from the application installation package, and for the resource file in the target file, the engine plug-in may extract the resource file from the APK and may also retain the resource file in the APK, where the specific case will be discussed in the following embodiments.
In this embodiment, the logic of code execution is defined in the dynamic library file, and the manner of extracting the dynamic library file from the APK may be: after decompressing the APK, obtaining a so file, which is a dynamic library file, and extracting the target engine from the APK may be: and after the APK is decompressed, acquiring a target engine.
The target file path comprises a dynamic library file storage path and a resource file loading path, wherein the dynamic library file path is a dynamic library file storage path, the resource file loading path is a resource file storage path, the dynamic library file path and the resource file loading path are preset paths which can be accessed by a first application program, and the engine plug-in can store the dynamic library file in the dynamic library file storage path after extracting the dynamic library file.
In this embodiment, the engine plug-in obtaining the target file path includes: the engine plug-in acquires a dynamic library file path and a resource file loading path, and the engine plug-in sends a target file path to a target engine, wherein the method comprises the following steps of: the engine plug-in sends a dynamic library file storage path and a resource file loading path to the target engine.
For the engine plug-in can extract the resource file from the APK and can also keep the resource file in the APK, the following three possible processing cases exist for the resource file in the target file:
case one, the engine plug-in may be from keeping the resource file in APK, specifically:
optionally, acquiring the resource file loading path includes:
analyzing the application program installation package, acquiring a storage path of the application program installation package, and taking the storage path of the application program installation package as a resource file loading path.
As described above, only the dynamic library file and the target engine are extracted from the APK, and the resource file is not extracted, and the resource file is still included in the APK, and then the resource file loading path is consistent with the storage path of the APK, and then the obtaining the resource file loading path may be:
the engine plug-in can analyze the application program installation package to determine the storage path of the application program installation package, so that the target engine takes the storage path of the application program installation package as a resource file loading path.
The engine plug-in may send the resource file loading path and the dynamic library file storing path to the target engine, so that the target engine may query the resource file based on the resource file loading path, query the dynamic library file based on the dynamic library file storing path, and the target engine may run the second application program based on the resource file and the dynamic library file.
It should be noted that, in practice, the engine plug-in extracts the dynamic library file and the APK after the target engine, and the APK further includes a basic installation package (the basic installation package may be understood as a portion of the APK excluding the target engine, the dynamic library file and the resource file), and the target engine may also extract the basic installation package from the storage path of the APK, so that the second application program is operated together based on the basic installation package, the resource file and the dynamic library file.
In the second case, the engine plug-in may extract a resource file from the APK, divide the resource file into a plurality of game data files, and store the plurality of game data files in the game data file storage path, specifically:
optionally, the second application is a gaming application; the resource file also comprises a plurality of game data files;
The obtaining of the resource file loading path comprises the following steps:
analyzing the game data file to obtain a game data file storage path, and taking the storage path of the application program installation package and the game data file storage path as a resource file loading path.
In this embodiment, for a part of application shops, the installation package that is not allowed to upload is too large, for example, some platforms cannot upload data packages larger than 100M, and then after the engine plug-in extracts the target engine and the dynamic library file from the application installation package, the engine plug-in may further extract the resource files from the application installation package (the resource files in the case one and the case three generally refer to all the resource files, in this embodiment, all the resource files may be extracted, and part of the resource files may be extracted), and the resource files are subjected to sub-packaging processing, and divided into at least one game data file, where the game data file is an extension file and can be divided into two types: main files and patch files. The engine plug-in will extract the target engine, dynamic library files and the remainder of the resource files from the application installation package as the base installation package.
The engine plug-in can store the game data file obtained by dividing the resource file in a game data file storage path, and if the basic installation package is still reserved in the APK of the second application program, the storage path of the basic installation package is consistent with the storage path of the APK, and the specific steps are that:
The engine plug-in can analyze the application program installation package to determine a storage path of the application program installation package, and in this embodiment, the storage path of the application program installation package can be used as a storage path of a basic installation package;
the target engine can also analyze the game data file to obtain a game data file storage path, the game data file storage path is used as a game data file storage path, and the game data file storage path can be different from the basic installation package storage path, so that the engine plug-in unit takes the storage path of the application program installation package and the game data file storage path together as a resource file loading path.
The engine plug-in may send a resource file loading path and a dynamic library file storage path to the target engine, so that the target engine obtains a basic installation package based on a basic installation package storage path query in the resource file loading path, obtains a plurality of game data files based on a game data file storage path query in the resource file loading path, and obtains a dynamic library file based on the dynamic library file storage path query, thereby the target engine runs the second application program based on the basic installation package, the plurality of game data files and the dynamic library file.
In the third case, the engine plug-in may extract a subroutine installation package containing the resource file from the APK, and store the subroutine installation package in the resource file storage path, specifically:
optionally, after extracting the dynamic library file based on the application installation package, the method further includes:
taking the application program installation package after extracting the target engine and the dynamic library file as a subprogram installation package;
acquiring a resource file loading path, including:
acquiring a preset resource file storage path; the resource file storage path is a preset path accessible to the first application program;
storing the subroutine installation package in a resource file storage path;
transmitting the dynamic library file storage path and the resource file loading path to the target engine, comprising:
the dynamic library file storage path and the resource file storage path are sent to the target engine.
The engine plug-in can take the application program installation package after extracting the target engine and the dynamic library file as a sub program installation package, and the sub program installation package comprises a resource file, and the engine plug-in can reset a storage path for the sub program installation package, specifically:
the engine plug-in may acquire a preset resource file storage path, where the resource file storage path is a preset path accessible to the first application program, so that the engine plug-in may store the sub-program installation package in the resource file storage path, and then the engine plug-in may send the dynamic library file storage path and the resource file storage path to the target engine, so that the target engine may acquire the dynamic library file from the dynamic library file storage path, and acquire the sub-program installation package from the resource file storage path, and the target engine may run the second application program based on the dynamic library file and the resource file in the sub-program installation package.
It should be noted that, in practice, the sub-program installation package further includes a basic installation package (the basic installation package may be understood as a portion of APK that is remained after the target engine, the dynamic library file, and the resource file are removed), and the target engine may also obtain the basic installation package from the sub-program installation package, so that the second application program is run together based on the basic installation package, the resource file, and the dynamic library file.
Fig. 2 illustrates a program running method of the present disclosure from the perspective of an engine plug-in, and with reference to fig. 3, the program running method of the present disclosure is discussed from the perspective of a target engine, the method being performed by the target engine running on a first application, the method may include:
step S301, receiving a target file path sent by an engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
Step S302, obtaining a target file from a target file path;
step S303, running a second application program based on the acquired target file.
The embodiment of the present invention is substantially the same as the embodiment of fig. 2, and the specific implementation of the embodiment of the present invention may refer to the related discussion of the embodiment of fig. 2, which is not repeated here.
In this embodiment, after receiving the target file path sent by the engine plug-in, because the target file path is a storage path of the target file, the target engine may acquire the target file from the target file path and run the second application program based on the acquired target file, and because the target file and the target engine are acquired by the engine plug-in based on the APK of the second application program, the target engine runs the second application program based on the acquired target file, which is equivalent to running the second application program through the target engine and the target file of the native second application program, compared with the existing scheme, the second application program can be experienced by taking the first application program as the host APP, thereby improving the performance of the program during running and enriching the user experience.
In this embodiment, the target engine may implement redirection of the target file based on the target file path to obtain the target file, where the target file includes a resource file and a dynamic library file, and the target engine first redirects the resource file and then redirects the dynamic library file, specifically:
1. The redirection process of the resource file comprises the following steps:
as in the above three possible cases, one possible case is that the resource file is still stored in the storage path of the application installation package, and then the target engine may acquire the resource file from the storage path of the application installation package after initialization.
In another possible scenario, if a portion of the resource file is divided into a plurality of game data files, the plurality of game data files are stored in the game data file storage path, the base installation package is still stored in the application installation package storage path, and the target engine may obtain the plurality of game data files and the base installation package based on the game data file storage path and the application installation package storage path, respectively.
In another possible case, the resource file is included in a sub-program installation package, the sub-program installation package is stored in a resource file storage path, and the resource file storage path is different from the storage path of the program installation package, so that the sub-program installation package including the resource file can be obtained from the resource file storage path after the target engine is initialized.
2. The redirection process of the dynamic library file is as follows:
optionally, if the target file includes a dynamic library file, the step of obtaining the target file from the target file path in step S303 may include:
Acquiring a dynamic library file from a target file path;
and if the dynamic library file is not acquired, acquiring the dynamic library file from a system directory of a system where the first application program is located.
In this embodiment, the target engine may obtain a dynamic library file from the target file path, where the dynamic library file is a dynamic library file of the second application program, if the dynamic library file is not obtained, the target engine may use the dynamic library file in the system directory to perform the spam, where the system where the first application program is located may store a plurality of dynamic library files, where the plurality of dynamic library files may be dynamic library files corresponding to the plurality of application programs respectively, and the target engine may obtain any dynamic library file from the system directory where the first application program is located, where one possible case is that if the any dynamic library file is a dynamic library file corresponding to the second application program, the target engine may operate the second application program based on using the dynamic library file as the target file; another possibility is that if any of the dynamic library files is not a dynamic library file of the second application, the target engine cannot run the second application based on the dynamic library file, i.e. the second application fails to run.
The target file path accessible to the first application and the system directory may be the lib directory, which is determined by the CPU model, and when the target engine looks up the dynamic library file,
preferentially find the lib directory of the first application, e.g.,/data/app/$ { package-name }/lib/arm/, then find the lib directory of the system, which may be: manufacturer directory and system custom directory.
Furthermore, the APK (or the basic installation package) further includes a dex (Dalvik VM executes, virtual machine execution program) file and an Android management. Xml (Android application manifest file);
the system where the first application program is located analyzes the Android management xml file in the APK, extracts component information and authority information, and stores the component information and the authority information in a storage path accessible by the first application program; and meanwhile, the system can extract the dex file from the APK and store the dex file to a storage path accessible to the first application program.
In summary, the program running method of the present disclosure is performed by the engine plug-in and the target engine, and the scheme of the present disclosure will be described below from the perspective of interaction between two ends with reference to fig. 4.
Step S1: the engine plug-in downloads the project APK from the data server.
The project APK is the APK of the second application program, and the APK is stored in a storage path accessible by the first application program at the moment;
step S2: the engine plug-in extracts a dynamic library file and a target engine from the project APK, and reserves a resource file in the project APK;
project APK reorganization:
step S3: the engine plug-in stores the extracted dynamic library file to a dynamic library file storage path accessible to the first application program;
step S4: the engine plug-in takes a storage path corresponding to the APK in the step S1 as a resource file loading path;
the target engine is initialized:
step S5: the engine plug-in sends the dynamic library file storage path and the resource file loading path to the target engine.
Loading resources and loading dynamic library files:
s6: the target engine obtains the dynamic library file and the resource file from the corresponding storage path.
The solution of this embodiment is substantially the same as that of the embodiments shown in fig. 2 and 3, and the specific implementation thereof may refer to the relevant discussion of the embodiments shown in fig. 2 and 3, which is not repeated here.
Referring to fig. 5, the disclosure further provides a program running method, where the method is executed by an electronic device, and the electronic device may specifically be a client, and the method includes:
Step S501, responding to a second application program running instruction sent by a first application program, and calling an engine plug-in to display a download page of an application program installation package of the second application program;
in this embodiment, the second application running instruction sent by the first application may be: and through the selection operation of the second application icon sent by the first application, the client calls the downloading page of the engine plug-in display application program installation package.
Step S502, when a download instruction sent through the download page is detected, the calling engine plug-in obtains an application program installation package of the second application program, and executes the method of the embodiment shown in fig. 2, so as to use the first application program as a host application program to run the second application program.
The client detects that the download instruction sent through the download page may be: the client side can call the engine plug-in to acquire the application program installation package of the second application program through the instruction of downloading the second application program installation package sent by the downloading page.
Referring to fig. 6, the disclosure further provides a program running method, where the method is executed by an electronic device, and the electronic device may specifically be a client, and the method includes:
Step S601, responding to an application program operation instruction of a user, and acquiring an engine plug-in, wherein the engine plug-in is used for loading a target engine required by operating an application program;
step S602, downloading a program installation package of the application program based on the engine plug-in and running the application program.
The embodiment shown in fig. 5 and fig. 6 is substantially the same as the embodiment shown in fig. 2 or fig. 3, and the specific implementation thereof may refer to the relevant discussion of the embodiment shown in fig. 2 and fig. 3, and will not be repeated here.
The program running method of the present disclosure as described above may be applied to the field of games, and an application scenario of the present disclosure will be described below with reference to fig. 7.
The method comprises the steps that icons from a game A to a game F are displayed on a display page of a host APP, when an engine plug-in detects clicking operation of a user on the icon of the game B, the engine plug-in starts to operate, and displays an operation page of the engine plug-in on the display page of the host APP, wherein the operation page comprises a downloading inlet of the game B, when the engine plug-in detects clicking operation of the downloading inlet of the game B by the user, the APK of the game B is started to download, a game engine (namely a target engine) and a dynamic library file in the APK are extracted, the resource file is reserved in the APK, the storage path of the resource file is the storage path of the APK, the storage path of the dynamic library file and the storage path of the APK are all accessible to the host APP, the game engine starts to initialize, and the game engine receives the storage path of the dynamic library file and the storage path of the APK sent by the engine plug-in the storage path of the engine, so that the game engine can operate the game B based on the dynamic library file and the resource file after the dynamic library file and the storage path of the APK are acquired, and the game B can be operated on the basis of the dynamic library file and the resource file, and the game engine can be displayed on the page of the game APP on the display page of the game APP.
In summary, the scheme of the present disclosure has the following beneficial effects:
1. the second application program can be operated through the target engine and the target file of the first application program, compared with the prior scheme of operating the application program through a browser, the performance of the application program in operation is improved, and the performance of the application program in operation is consistent with that of the first application program in operation.
2. The APK based on the native application program runs the native application program without depending on the browser, and the problem of browser compatibility is not required to be considered;
3. the application range is wide, the method can be applied to development of various games, and the host APP is used for experiencing various games, so that quick release of game products is realized.
Referring to fig. 8, the present disclosure also provides a program running apparatus, which may include:
a first obtaining module 801, configured to obtain an application installation package of a second application in response to a second application running instruction sent by the first application; the application program installation package is built based on a target engine;
a first obtaining module 802, configured to obtain a target engine and a target file based on an application installation package; the target file is a file required by the second application program to run;
A third obtaining module 803, configured to obtain a target file path, where the target file path is a storage path of the target file;
the sending module 804 is configured to send the target file path to the target engine, so that the target engine can acquire the target file, and run the second application program based on the acquired target file.
Optionally, the target file includes a dynamic library file and a resource file; the target file path comprises a dynamic library file storage path and a resource file loading path;
the third obtaining module 803 is specifically configured to:
acquiring a dynamic library file path and a resource file loading path; the dynamic library file path is a preset path accessible to the first application program;
the device also comprises an extraction module; the sending module 804 sends the target file path to the target engine;
the extraction module is used for extracting dynamic library files based on the application program installation package and storing the dynamic library files in a dynamic library file storage path;
the sending module 804 is specifically configured to:
and sending the dynamic library file storage path and the resource file loading path to the target engine.
Optionally, the third obtaining module 803 is specifically configured to, when obtaining the resource file loading path:
analyzing the application program installation package, acquiring a storage path of the application program installation package, and taking the storage path of the application program installation package as a resource file loading path.
Optionally, the second application is a gaming application; the resource file also comprises a plurality of game data files;
the third obtaining module 803 is specifically configured to, when obtaining the resource file loading path:
analyzing the game data file to obtain a game data file storage path, and taking the storage path of the application program installation package and the game data file storage path as a resource file loading path.
Optionally, the device further comprises a determining module, after the extracting module extracts the dynamic library file based on the application program installation package;
the determining module is used for taking the application program installation package after the target engine and the dynamic library file are extracted as a subprogram installation package;
the third obtaining module 803 is specifically configured to:
acquiring a preset resource file storage path; the resource file storage path is a preset path accessible to the first application program;
storing the subroutine installation package in a resource file storage path;
the sending module 804 is specifically configured to, when sending the dynamic library file storage path and the resource file loading path to the target engine:
the dynamic library file storage path and the resource file storage path are sent to the target engine.
Referring to fig. 9, the present disclosure also provides a program running apparatus, which may include:
A receiving module 901, configured to receive a target file path sent by an engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
a fourth obtaining module 902, configured to obtain a target file from the target file path;
the operation module 903 is configured to operate the second application based on the obtained object file.
Optionally, if the target file includes a dynamic library file, the fourth obtaining module 902 is specifically configured to:
acquiring a dynamic library file from a target file path;
and if the dynamic library file is not acquired, acquiring the dynamic library file from a system directory of a system where the first application program is located.
Referring now to FIG. 10, a schematic diagram of an architecture of an electronic device (e.g., the engine plug-in of FIG. 2 or the target engine of FIG. 3) 600 suitable for use in implementing embodiments of the present disclosure is shown. The terminal devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and the like, and stationary terminals such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 10 is merely an example and should not be construed to limit the functionality and scope of use of the disclosed embodiments.
An electronic device includes: a memory and a processor, where the processor may be referred to as a processing device 601 hereinafter, the memory may include at least one of a Read Only Memory (ROM) 602, a Random Access Memory (RAM) 603, and a storage device 608 hereinafter, as shown in detail below:
as shown in fig. 10, the electronic device 600 may include a processing means (e.g., a central processing unit, a graphic processor, etc.) 601, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 602 or a program loaded from a storage means 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic apparatus 600 are also stored. The processing device 601, the ROM 602, and the RAM 603 are connected to each other through a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
In general, the following devices may be connected to the I/O interface 605: input devices 606 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, and the like; an output device 607 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 608 including, for example, magnetic tape, hard disk, etc.; and a communication device 609. The communication means 609 may allow the electronic device 600 to communicate with other devices wirelessly or by wire to exchange data. While fig. 8 shows an electronic device 600 having various means, it is to be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may be implemented or provided instead.
In particular, according to embodiments of the present disclosure, the processes described above with reference to flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a non-transitory computer readable medium, the computer program comprising program code for performing the method shown in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via communication means 609, or from storage means 608, or from ROM 602. The above-described functions defined in the methods of the embodiments of the present disclosure are performed when the computer program is executed by the processing device 601.
It should be noted that the computer readable medium described in the present disclosure may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this disclosure, a computer-readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present disclosure, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, fiber optic cables, RF (radio frequency), and the like, or any suitable combination of the foregoing.
In some implementations, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (HyperTextTransfer Protocol ), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the internet (e.g., the internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
The computer readable medium may be contained in the electronic device; or may exist alone without being incorporated into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: responding to a second application program running instruction sent by the first application program, and acquiring an application program installation package of the second application program; the application program installation package is built based on a target engine; acquiring a target engine and a target file based on an application program installation package; the target file is a file required by the second application program to run; acquiring a target file path, wherein the target file path is a storage path of a target file; and sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file.
Or the computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving a target file path sent by an engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program; the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run; acquiring a target file from a target file path; and running a second application program based on the acquired target file.
Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, including, but not limited to, an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules or units involved in the embodiments of the present disclosure may be implemented by means of software, or may be implemented by means of hardware. The name of the module or the unit is not limited to the unit itself in some cases, for example, the first obtaining module may also be described as "a module for obtaining an application installation package of the second application in response to the second application running instruction sent by the first application".
The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), an Application Specific Standard Product (ASSP), a system on a chip (SOC), a Complex Programmable Logic Device (CPLD), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, there is provided a program running method, which may include:
responding to a second application program running instruction sent by the first application program, and acquiring an application program installation package of the second application program; the application program installation package is built based on a target engine;
acquiring a target engine and a target file based on an application program installation package; the target file is a file required by the second application program to run;
acquiring a target file path, wherein the target file path is a storage path of a target file;
and sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file.
Optionally, the target file includes a dynamic library file and a resource file; the target file path comprises a dynamic library file storage path and a resource file loading path;
acquiring a target file path, comprising:
acquiring a dynamic library file path and a resource file loading path; the dynamic library file path is a preset path accessible to the first application program;
before sending the target file path to the target engine, the method further comprises:
based on the application program installation package, extracting a dynamic library file, and storing the dynamic library file in a dynamic library file storage path;
Sending the target file path to the target engine includes:
and sending the dynamic library file storage path and the resource file loading path to the target engine.
Optionally, acquiring the resource file loading path includes:
analyzing the application program installation package, acquiring a storage path of the application program installation package, and taking the storage path of the application program installation package as a resource file loading path.
Optionally, the second application is a gaming application; the resource file also comprises a plurality of game data files;
the obtaining of the resource file loading path comprises the following steps:
analyzing the game data file to obtain a game data file storage path, and taking the storage path of the application program installation package and the game data file storage path as a resource file loading path.
Optionally, after extracting the dynamic library file based on the application installation package, the method further includes:
taking the application program installation package after extracting the target engine and the dynamic library file as a subprogram installation package;
acquiring a resource file loading path, including:
acquiring a preset resource file storage path; the resource file storage path is a preset path accessible to the first application program;
storing the subroutine installation package in a resource file storage path;
Transmitting the dynamic library file storage path and the resource file loading path to the target engine, comprising:
the dynamic library file storage path and the resource file storage path are sent to the target engine.
According to one or more embodiments of the present disclosure, there is provided a program running method, which may include:
receiving a target file path sent by an engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
acquiring a target file from a target file path;
and running a second application program based on the acquired target file.
Optionally, if the target file includes a dynamic library file, acquiring the target file from the target file path includes:
acquiring a dynamic library file from a target file path;
and if the dynamic library file is not acquired, acquiring the dynamic library file from a system directory of a system where the first application program is located.
According to one or more embodiments of the present disclosure, there is provided a program running method, which may include:
responding to a second application program running instruction sent by the first application program, and calling an engine plug-in to display a download page of an application program installation package of the second application program;
when a download instruction sent through a download page is detected, the calling engine plug-in obtains an application program installation package of the second application program, and the method is executed to operate the second application program by taking the first application program as a host application program.
According to one or more embodiments of the present disclosure, there is provided a program running method, which may include:
responding to an application program operation instruction of a user, acquiring an engine plug-in, wherein the engine plug-in is used for loading a target engine required by operating the application program;
and downloading a program installation package of the application program based on the engine plug-in and running the application program.
One or more embodiments of the present disclosure provide a program running apparatus, which may include:
the first acquisition module is used for responding to a second application program running instruction sent by the first application program and acquiring an application program installation package of the second application program; the application program installation package is built based on a target engine;
The second acquisition module is used for acquiring the target engine and the target file based on the application program installation package; the target file is a file required by the second application program to run;
the third acquisition module is used for acquiring a target file path, wherein the target file path is a storage path of the target file;
and the sending module is used for sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file.
Optionally, the target file includes a dynamic library file and a resource file; the target file path comprises a dynamic library file storage path and a resource file loading path;
the third obtaining module is specifically configured to:
acquiring a dynamic library file path and a resource file loading path; the dynamic library file path is a preset path accessible to the first application program;
the device also comprises an extraction module; the sending module sends the target file path to the target engine;
the extraction module is used for extracting dynamic library files based on the application program installation package and storing the dynamic library files in a dynamic library file storage path;
the sending module is specifically configured to:
and sending the dynamic library file storage path and the resource file loading path to the target engine.
Optionally, when the third obtaining module obtains the resource file loading path, the third obtaining module is specifically configured to:
analyzing the application program installation package, acquiring a storage path of the application program installation package, and taking the storage path of the application program installation package as a resource file loading path.
Optionally, the second application is a gaming application; the resource file also comprises a plurality of game data files;
the third obtaining module is specifically configured to, when obtaining the resource file loading path:
analyzing the game data file to obtain a game data file storage path, and taking the storage path of the application program installation package and the game data file storage path as a resource file loading path.
Optionally, the device further comprises a determining module, after the extracting module extracts the dynamic library file based on the application program installation package;
the determining module is used for taking the application program installation package after the target engine and the dynamic library file are extracted as a subprogram installation package;
the third obtaining module is specifically configured to:
acquiring a preset resource file storage path; the resource file storage path is a preset path accessible to the first application program;
storing the subroutine installation package in a resource file storage path;
The sending module is specifically configured to, when sending the dynamic library file storage path and the resource file loading path to the target engine:
the dynamic library file storage path and the resource file storage path are sent to the target engine.
One or more embodiments of the present disclosure provide a program running apparatus, which may include:
the receiving module is used for receiving the target file path sent by the engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of the second application program; the application program installation package is obtained by the engine plug-in response to a second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
the fourth acquisition module is used for acquiring the target file from the target file path;
and the operation module is used for operating the second application program based on the acquired target file.
Optionally, if the target file includes a dynamic library file, the fourth obtaining module is specifically configured to:
acquiring a dynamic library file from a target file path;
And if the dynamic library file is not acquired, acquiring the dynamic library file from a system directory of a system where the first application program is located.
One or more embodiments of the present disclosure provide a program running apparatus, which may include:
the first mobilizing module is used for responding to a second application program running instruction sent by the first application program and calling the engine plug-in to display a download page of an application program installation package of the second application program;
and the second calling module is used for calling the engine plug-in to acquire an application program installation package of the second application program when detecting a downloading instruction sent through the downloading page, and executing the steps of the device to run the second application program by taking the first application program as a host application program.
One or more embodiments of the present disclosure provide a program running apparatus, which may include:
the fifth acquisition module is used for responding to an application program operation instruction of a user and acquiring an engine plug-in, wherein the engine plug-in is used for loading a target engine required by operating the application program;
and the downloading module is used for downloading a program installation package of the application program based on the engine plug-in and running the application program.
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being employed. It will be appreciated by persons skilled in the art that the scope of the disclosure referred to in this disclosure is not limited to the specific combinations of features described above, but also covers other embodiments which may be formed by any combination of features described above or equivalents thereof without departing from the spirit of the disclosure. Such as those described above, are mutually substituted with the technical features having similar functions disclosed in the present disclosure (but not limited thereto).
Moreover, although operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the present disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are example forms of implementing the claims.

Claims (13)

1. A program running method, characterized by comprising:
responding to a second application program running instruction sent by a first application program, and acquiring an application program installation package of the second application program; the application program installation package is constructed based on a target engine;
Acquiring the target engine and the target file based on the application program installation package; the target file is a file required by the second application program to run;
acquiring a target file path, wherein the target file path is a storage path of the target file;
sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file; wherein the first application operates the second application as a host application.
2. The method of claim 1, wherein the target files comprise dynamic library files and resource files; the target file path comprises a dynamic library file storage path and a resource file loading path;
the obtaining the target file path includes:
acquiring the dynamic library file path and the resource file loading path; the dynamic library file path is a preset path accessible to the first application program;
before the sending the target file path to the target engine, the method further comprises:
extracting the dynamic library file based on the application program installation package, and storing the dynamic library file in the dynamic library file storage path;
The sending the target file path to the target engine includes:
and sending the dynamic library file storage path and the resource file loading path to the target engine.
3. The method of claim 2, wherein the obtaining the resource file load path comprises:
analyzing the application program installation package, acquiring a storage path of the application program installation package, and taking the storage path of the application program installation package as the resource file loading path.
4. A method according to claim 3, wherein the second application program is a gaming application; the resource file also comprises a plurality of game data files;
the obtaining the resource file loading path comprises the following steps:
analyzing the game data file, obtaining the game data file storage path, and taking the storage path of the application program installation package and the game data file storage path as the resource file loading path.
5. The method of claim 2, wherein after extracting the dynamic library file based on the application installation package, the method further comprises:
taking the application program installation package after extracting the target engine and the dynamic library file as a subprogram installation package;
The obtaining the resource file loading path includes:
acquiring a preset resource file storage path; the resource file storage path is a preset path accessible to the first application program;
storing the subroutine installation package in the resource file storage path;
the sending the dynamic library file storage path and the resource file loading path to the target engine includes:
and sending the dynamic library file storage path and the resource file storage path to the target engine.
6. A program running method, characterized by comprising:
receiving a target file path sent by an engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
wherein the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of a second application program; the application program installation package is obtained by the engine plug-in response to the second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
Acquiring the target file from the target file path;
operating the second application program based on the acquired target file; wherein the first application operates the second application as a host application.
7. The method of claim 6, wherein if the target file comprises a dynamic library file, the obtaining the target file from the target file path comprises:
acquiring the dynamic library file from a target file path;
and if the dynamic library file is not acquired, acquiring the dynamic library file from a system directory of a system where the first application program is located.
8. The method of claim 6, wherein the method further comprises:
responding to an application program running instruction of a user, and acquiring an engine plug-in, wherein the engine plug-in is used for loading a target engine required by running the application program;
and downloading a program installation package of the application program based on the engine plug-in and running the application program.
9. A program running method, characterized by comprising:
responding to a second application program running instruction sent by a first application program, and calling an engine plug-in to display a download page of an application program installation package of the second application program;
When detecting a download instruction sent through the download page, invoking the engine plug-in to acquire an application program installation package of the second application program, and executing the method according to any one of claims 1 to 5 to run the second application program by taking the first application program as a host application program.
10. A program running apparatus, comprising:
the first acquisition module is used for responding to a second application program running instruction sent by the first application program and acquiring an application program installation package of the second application program; the application program installation package is constructed based on a target engine;
the second acquisition module is used for acquiring the target engine and the target file based on the application program installation package; the target file is a file required by the second application program to run;
the third acquisition module is used for acquiring a target file path, wherein the target file path is a storage path of the target file;
the sending module is used for sending the target file path to the target engine so that the target engine can acquire the target file and running the second application program based on the acquired target file; wherein the first application operates the second application as a host application.
11. A program running apparatus, comprising:
the receiving module is used for receiving the target file path sent by the engine plug-in; the engine plug-in is a plug-in loaded by the first application program and used for running the second application program;
wherein the target file path is a storage path of the target file; the target file is obtained by the engine plug-in based on an application program installation package of a second application program; the application program installation package is obtained by the engine plug-in response to the second application program running instruction sent by the first application program; the target file is a file required by the second application program to run;
a fourth obtaining module, configured to obtain the target file from the target file path;
the operation module is used for operating the second application program based on the acquired target file; wherein the first application operates the second application as a host application.
12. An electronic device, comprising:
the electronic device includes a memory and a processor;
the memory stores a computer program;
the processor for performing the method of any of claims 1-9 when the computer program is run.
13. A computer readable medium, on which a computer program is stored, characterized in that the program, when being executed by a processor, implements the method of any of claims 1-9.
CN202010567954.6A 2020-06-19 2020-06-19 Program running method and device and electronic equipment Active CN111722885B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010567954.6A CN111722885B (en) 2020-06-19 2020-06-19 Program running method and device and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010567954.6A CN111722885B (en) 2020-06-19 2020-06-19 Program running method and device and electronic equipment

Publications (2)

Publication Number Publication Date
CN111722885A CN111722885A (en) 2020-09-29
CN111722885B true CN111722885B (en) 2023-08-08

Family

ID=72568183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010567954.6A Active CN111722885B (en) 2020-06-19 2020-06-19 Program running method and device and electronic equipment

Country Status (1)

Country Link
CN (1) CN111722885B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256286B (en) * 2020-10-21 2023-05-05 抖音视界有限公司 Application running method and device and computer storage medium
CN112689199B (en) * 2020-12-23 2023-08-29 深圳市酷开网络科技股份有限公司 Plug-in loading method and device for television homepage, television and storage medium
CN112988686A (en) * 2021-04-07 2021-06-18 北京字节跳动网络技术有限公司 Plug-in processing method, device, equipment and storage medium
CN113722019B (en) * 2021-11-04 2022-02-08 海尔数字科技(青岛)有限公司 Display method, device and equipment of platform program
CN114489850B (en) * 2022-01-20 2023-08-22 中广核工程有限公司 Calling method and device of design software, computer equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042656A (en) * 2007-02-12 2007-09-26 无敌科技(西安)有限公司 Application program engines startup method and system for hand held equipment
CN105224363A (en) * 2015-09-23 2016-01-06 北京金山安全软件有限公司 Method and device for loading application program
CN106406920A (en) * 2015-07-29 2017-02-15 宋青见 Terminal equipment and execution method of application program of terminal equipment
CN106528193A (en) * 2015-09-15 2017-03-22 腾讯科技(深圳)有限公司 Application update method and terminal
CN108958074A (en) * 2018-06-20 2018-12-07 维沃移动通信有限公司 A kind of smart machine control method and mobile terminal
CN110869907A (en) * 2018-03-28 2020-03-06 华为技术有限公司 Method and terminal for browsing application page

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042656A (en) * 2007-02-12 2007-09-26 无敌科技(西安)有限公司 Application program engines startup method and system for hand held equipment
CN106406920A (en) * 2015-07-29 2017-02-15 宋青见 Terminal equipment and execution method of application program of terminal equipment
CN106528193A (en) * 2015-09-15 2017-03-22 腾讯科技(深圳)有限公司 Application update method and terminal
CN105224363A (en) * 2015-09-23 2016-01-06 北京金山安全软件有限公司 Method and device for loading application program
CN110869907A (en) * 2018-03-28 2020-03-06 华为技术有限公司 Method and terminal for browsing application page
CN108958074A (en) * 2018-06-20 2018-12-07 维沃移动通信有限公司 A kind of smart machine control method and mobile terminal

Also Published As

Publication number Publication date
CN111722885A (en) 2020-09-29

Similar Documents

Publication Publication Date Title
CN111722885B (en) Program running method and device and electronic equipment
CN111433743B (en) APP remote control method and related equipment
CN111580879A (en) Applet running method and device, electronic equipment and computer storage medium
CN110968395B (en) Method for processing rendering instruction in simulator and mobile terminal
CN110764805B (en) Client non-inductive upgrading method, device, terminal and storage medium
JP7553582B2 (en) Method and apparatus for processing special image effects
CN110968331A (en) Method and device for running application program
CN108052377B (en) Cloud-based input processing method and device, server and storage medium
CN112799801A (en) Method, device, equipment and medium for drawing simulation mouse pointer
CN113302585A (en) Accelerating applications and sub-packet installation
CN114035879A (en) Page theme color changing method and device, electronic equipment and computer readable medium
CN109814915B (en) Parameter configuration method, device, medium and electronic equipment based on lua
CN109302523B (en) Mobile phone performance evaluation method for mobile phone side and server side
CN110851211A (en) Method, apparatus, electronic device, and medium for displaying application information
CN112416303B (en) Software development kit hot repair method and device and electronic equipment
CN114610384A (en) Application migration method, device, equipment and storage medium
CN111506393A (en) ARM-based virtualization device and use method thereof
CN115878115A (en) Page rendering method, device, medium and electronic equipment
CN114092590B (en) Electronic device and evaluation method and medium for image rendering performance of electronic device
US20140304690A1 (en) Systems and Methods for Outputting an Application to Another Environment
US20180088930A1 (en) Updating code within an application
CN111290812B (en) Display method, device, terminal and storage medium of application control
CN116775174A (en) Processing method, device, equipment and medium based on user interface frame
CN112084003B (en) Method, device, medium and electronic equipment for isolating data
CN113157365B (en) Program running method, program running device, electronic equipment and computer readable medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: Tiktok vision (Beijing) Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant