Customized application starting method and device, equipment and storage medium

By obtaining user's function customization requests and loading customized plug-ins, the problem of low efficiency in customized application development in the existing technology is solved, and faster development and better user experience is achieved.

CN119668704APending Publication Date: 2025-03-21CHINA UNITED NETWORK COMM GRP CO LTD +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311220571.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-20
Publication Date
2025-03-21

AI Technical Summary

Technical Problem

In the prior art, the development efficiency of customized application software is low, and the cycle of waiting for customized application software is long, and the user experience is not high.

Method used

By obtaining the user-triggered function customization request of the target application software, the plug-in customization list is determined based on the mapping relationship between multiple preset function identifiers and preset plug-in identifications, and the customized plug-in is loaded into the container where the target application is located.

Benefits of technology

It improves the development efficiency of customized applications, shortens the time for users to wait for customized applications, and improves the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119668704A_ABST
    Figure CN119668704A_ABST
Patent Text Reader

Abstract

The invention provides a customized application starting method and device, equipment and a storage medium. The method comprises the steps that a function customization request, triggered by a user, of target application software is acquired; the function customization request comprises a target application identifier and at least one customization function identifier; determining a plug-in customization list corresponding to the function customization request according to a first mapping relationship between a plurality of preset function identifiers and preset plug-in identifiers; the preset plug-in is a pre-developed plug-in capable of realizing a corresponding preset function, and the plug-in customization list comprises each customized plug-in identifier having a first mapping relationship with each customized function identifier; and loading each customized plug-in into a first container where the target application is located according to the target application identifier and each customized plug-in identifier. According to the method, the development efficiency of the customized application can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a customized application startup method, device, equipment and storage medium. Background Art

[0002] With the development of computer technology, users' demands for application software have gradually become more diverse. Among them, enterprises or group users often need customized application software. The same application software may have different customized versions for different users.

[0003] At present, when different users need different customized application software, developers mainly modify the application software code according to the needs of different users to form customized code branches of the application software, and then form customized application software required by users according to the customized code branches. This makes the development efficiency of customized application software low, the waiting period for customized application software is long, and the user experience is not high. Summary of the invention

[0004] The present application provides a customized application startup method, device, equipment and storage medium to solve the technical problem of low development efficiency of customized application software in the prior art.

[0005] In a first aspect, the present application provides a customized application startup method, comprising:

[0006] Acquire a function customization request of a target application triggered by a user; the function customization request includes a target application identifier and at least one customized function identifier;

[0007] Determine a plug-in customization list corresponding to the function customization request according to a first mapping relationship between a plurality of preset function identifiers and preset plug-in identifiers; a preset plug-in is a pre-developed plug-in capable of realizing a corresponding preset function, and the plug-in customization list includes each customized plug-in identifier having a first mapping relationship with each of the customized function identifiers;

[0008] According to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located.

[0009] In a second aspect, the present application provides a customized application launching device, comprising:

[0010] An acquisition module, configured to acquire a function customization request of a target application triggered by a user; the function customization request includes a target application identifier and at least one customized function identifier;

[0011] A first determination module is used to determine a plug-in customization list corresponding to the function customization request according to a first mapping relationship between a plurality of preset function identifiers and preset plug-in identifiers; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each of the customized function identifiers;

[0012] The loading module is used to load each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier.

[0013] In a third aspect, the present application provides an electronic device, comprising: a processor, and a memory communicatively connected to the processor;

[0014] The memory stores computer-executable instructions;

[0015] The processor executes the computer-executable instructions stored in the memory to implement the method as described in the first aspect of the present application.

[0016] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are executed by a processor, they are used to implement the method described in the first aspect of the present application.

[0017] In a fifth aspect, the present application provides a computer program product, including a computer program, which, when executed by a processor, is used to implement the method described in the first aspect of the present application.

[0018] The customized application startup method, device, equipment and storage medium provided in the present application obtain a function customization request of the target application software triggered by the user; the function customization request includes a target application identifier and at least one customized function identifier; according to a first mapping relationship between multiple preset function identifiers and preset plug-in identifiers, a plug-in customization list corresponding to the function customization request is determined; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each of the customized function identifiers; according to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located. Since the function customization request includes the target application identifier and the customized function identifier, the user's customized demand is to realize the customized function in the target application, and the customized plug-in identifier has a first mapping relationship with the customized function identifier, and each customized plug-in can realize each customized function. Therefore, according to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located, and the target application can realize each customized function through each customized plug-in, thereby meeting the user's customized demand for the target application. After the target application loads each customized plug-in, the user can obtain the customized target application. The development of application plug-ins that implement customized functions does not require consideration of the program code of the application software, and is more efficient than modifying the code of the application program. Therefore, the present application can improve the development efficiency of customized applications. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0020] Figure 1 It is a network architecture diagram corresponding to the application scenario of the customized application startup method provided in the embodiment of the present application;

[0021] Figure 2 It is a flowchart of a customized application startup method provided in Example 1 of the present application;

[0022] Figure 3 It is a flowchart of a customized application startup method provided in Embodiment 2 of the present application;

[0023] Figure 4 It is a structural diagram of a customized application startup device provided according to Embodiment 3 of the present application;

[0024] Figure 5 It is a schematic diagram of the structure of an electronic device provided according to Embodiment 4 of the present application.

[0025] The above drawings have shown clear embodiments of the present application, which will be described in more detail later. These drawings and text descriptions are not intended to limit the scope of the present application in any way, but to illustrate the concept of the present application to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION

[0026] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.

[0027] First, the prior art involved in this application is introduced.

[0028] In the prior art, if a user has a customized requirement for an application software, the developer needs to modify the code of the application software according to the user's requirement to form a customized code branch of the application software, and then compile and link the customized code branch to obtain the customized application software. It takes a lot of time for the developer to modify the application software code according to the user's requirement, and the efficiency of forming the customized application software is low. The user needs to wait for a long period to obtain the customized application software, and the user experience is not high.

[0029] In summary, the prior art has the problem that users have to wait a long time for customized applications.

[0030] When faced with the problems in the prior art, the inventor discovered through creative research that in order to reduce the time users wait for customized applications, compared with adding user requirements in the code of the application software, developing customized plug-ins based on user needs can be more efficient, and customized plug-ins can be loaded into the application software to form customized applications. Therefore, developing customized plug-ins that can meet user needs, and then loading customized plug-ins into application software according to user needs to realize customized application software can reduce the development time of customized applications, improve development efficiency, reduce the time users wait for customized applications, and improve user experience.

[0031] Therefore, the inventor proposes the technical solution of the present application, which obtains the function customization request of the target application software triggered by the user; the function customization request includes the target application identifier and at least one customized function identifier; according to the first mapping relationship between multiple preset function identifiers and preset plug-in identifiers, the plug-in customization list corresponding to the function customization request is determined; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each customized function identifier; according to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located. Since the function customization request includes the target application identifier and the customized function identifier, the user's customization requirement is to realize the customized function in the target application, and the customized plug-in identifier has a first mapping relationship with the customized function identifier, and each customized plug-in can realize each customized function. Therefore, according to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located, and the target application can realize each customized function through each customized plug-in, thereby meeting the user's customization requirements for the target application. After loading each customized plug-in in the target application, the user can obtain the customized target application. The development of application plug-ins that implement customized functions does not require consideration of the program code of the application software, and is more efficient than modifying the code of the application program. Therefore, the present application can improve the development efficiency of customized applications.

[0032] The method for customized application startup provided in this application is intended to solve the above technical problems in the prior art.

[0033] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0034] Figure 1 : is a network architecture diagram corresponding to the application scenario of the customized application startup method provided in the embodiment of the present application. Figure 1 As shown, a network architecture corresponding to an application scenario provided in an embodiment of the present application includes: an electronic device 10 and a client device 11.

[0035] The user can trigger a function customization request for the target application on the client device 11, and the client device 11 sends the function customization request for the target application triggered by the user to the electronic device 10, and the electronic device 10 obtains the function customization request for the target application triggered by the user; the function customization request includes a target application identifier and at least one customized function identifier.

[0036] The electronic device 10 may pre-store a plurality of first mapping relationships between preset function identifiers and preset plug-in identifiers. The electronic device 10 determines a plug-in customization list corresponding to the function customization request according to the first mapping relationships between the plurality of preset function identifiers and the preset plug-in identifiers; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each customized function identifier.

[0037] The electronic device 10 loads each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier.

[0038] Embodiment 1

[0039] Figure 2 is a flow chart of a customized application startup method provided in Example 1 of the present application. Figure 2 As shown, the execution subject of the present application is a customized application startup device, and the customized application startup device is located in an electronic device. The customized application startup method provided in this embodiment includes steps 201 to 203.

[0040] Step 201 : obtaining a function customization request of a target application software triggered by a user; the function customization request includes a target application identifier and at least one customized function identifier.

[0041] In this embodiment, the user is a user who needs a customized application, and the user can trigger a function customization request for the target application software on the client device. The client device is connected to the electronic device for communication, and the client device sends the function customization request for the target application software to the electronic device, and the electronic device obtains the function customization request for the target application software triggered by the user. The function customization request includes a target application identifier and at least one customized function identifier, the target application identifier is the application identifier that the user needs to customize, and the customized function identifier is the function identifier that the user needs to customize on the target application.

[0042] Step 202, based on a first mapping relationship between multiple preset function identifiers and preset plug-in identifiers, determine a plug-in customization list corresponding to the function customization request; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each customized function identifier.

[0043] In this embodiment, the first mapping relationship between multiple preset function identifiers and preset plug-in identifiers can be pre-stored in the electronic device, or pre-stored in a preset database. The electronic device can obtain the multiple first mapping relationships from its memory, or communicate with the preset database to obtain the multiple first mapping relationships from the preset database. The preset plug-in identifier is used to identify the preset plug-in, and the preset function identifier is used to identify the preset function. The preset plug-in identified by the preset plug-in identifier that has a first mapping relationship with the preset function identifier can implement the preset function identified by the preset function identifier, that is, the preset plug-in is a pre-developed plug-in that can implement the corresponding preset function.

[0044] In this embodiment, each customized function identifier can be used as a keyword, and customized plug-in identifiers having a first mapping relationship with each customized function identifier can be sequentially searched in multiple first mapping relationships, and each customized plug-in identifier can be determined as a plug-in customization list.

[0045] In this embodiment, two different preset function identifiers can be mapped to one preset plug-in identifier, that is, one preset plug-in can implement two different customized functions. Therefore, the number of customized plug-in identifiers included in the plug-in customization list is less than or equal to the number of customized function identifiers included in the function customization request.

[0046] Step 203: Load each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier.

[0047] In this embodiment, the electronic device can determine the target application and the first container where the target application is located according to the target application identifier. The target application can be a spring application, and the first container can be a spring container.

[0048] The electronic device can determine the customized plug-in according to the customized plug-in identifier and obtain the loading path of the customized plug-in. The customized plug-in package is pre-stored in the storage space corresponding to the loading path of the customized plug-in. The loading path of the customized plug-in can be a disk path or a file server address. The electronic device can obtain the customized plug-in package from the storage space corresponding to the loading path of the customized plug-in, and load the customized plug-in package into the first container. After the customized plug-in is loaded in the first container, the target application can implement the corresponding customized function through the customized plug-in.

[0049] The customized application startup method, device, equipment and storage medium provided in this embodiment obtain a function customization request of the target application software triggered by the user; the function customization request includes a target application identifier and at least one customized function identifier; according to the first mapping relationship between multiple preset function identifiers and preset plug-in identifiers, determine the plug-in customization list corresponding to the function customization request; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each customized function identifier; according to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located. Since the function customization request includes the target application identifier and the customized function identifier, the user's customized demand is to realize the customized function in the target application, and the customized plug-in identifier has a first mapping relationship with the customized function identifier, and each customized plug-in can realize each customized function. Therefore, according to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located, and the target application can realize each customized function through each customized plug-in, thereby meeting the user's customized demand for the target application. After the target application loads each customized plug-in, the user can obtain the customized target application. The development of application plug-ins that implement customized functions does not require consideration of the program code of the application software, and is more efficient than modifying the code of the application program. Therefore, the present application can improve the development efficiency of customized applications.

[0050] Embodiment 2

[0051] Figure 3 Schematic diagram of the process of starting a customized application according to the second embodiment of the present application. Figure 3 As shown, the customized application startup method provided by this embodiment is based on the first embodiment, and step 203 "loading each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier" is refined to include steps 301 to 303.

[0052] Step 301 : determining target application configuration information according to the target application identifier, and determining each customized plug-in configuration information according to each customized plug-in identifier.

[0053] In this embodiment, the electronic device can determine the target application and the first container where the target application is located according to the target application identifier, and then read the target application configuration information from the first container.

[0054] In this embodiment, the electronic device may also pre-store multiple second mapping relationships between preset plug-in identifiers and preset plug-in configuration information, and each customized plug-in identifier may be used as a keyword to query in multiple second mapping relationships to obtain customized plug-in configuration information having a second mapping relationship with each customized plug-in identifier.

[0055] Step 302: Perform a first check on the operating environment of each customized plug-in according to the plug-in customization list, the target application configuration information and each customized plug-in configuration information.

[0056] Optionally, the target application configuration information includes at least one preset plug-in package format and a list of loaded plug-ins of the target application; the customized plug-in configuration information includes the loading path of the customized plug-in, and the storage space corresponding to the loading path stores the customized plug-in package and the dependent plug-in list of the customized plug-in; step 302 "performs a first check on the operating environment of each customized plug-in according to the plug-in customization list, the target application configuration information and each customized plug-in configuration information" is further refined to include steps 401 to 405.

[0057] In this embodiment, the preset plug-in package format is a format of a plug-in package that can be loaded by the target application. The loaded plug-in list includes at least one loaded plug-in identifier, which is an identifier of a plug-in that has been loaded in the first container where the target application is located. The at least one preset plug-in package format may include, for example, a jar format or a zip format.

[0058] Step 401: For any customized plug-in, perform the following operations:

[0059] Step 402, obtaining a customized plug-in package and a list of dependent plug-ins from a storage space corresponding to the loading path;

[0060] Step 403, in response to failing to obtain the customized plug-in package or the dependent plug-in list, determining that the operating environment of the customized plug-in fails to pass the first verification;

[0061] Step 404, in response to obtaining the customized plug-in package and the list of dependent plug-ins, and the file format of the customized plug-in package is not any of the preset plug-in package formats, determining that the operating environment of the customized plug-in fails the first verification;

[0062] Step 405, in response to obtaining the customized plug-in package and the dependent plug-in list, and the file format of the customized plug-in package is any preset plug-in package format, a first check is performed on the operating environment of the customized plug-in according to the plug-in customization list, the loaded plug-in list and the dependent plug-in list.

[0063] In this embodiment, the electronic device can access the storage space corresponding to the loading path, and obtain the customized plug-in package and the dependent plug-in list from the storage space corresponding to the loading path.

[0064] If the loading path does not exist, the electronic device cannot access the storage space corresponding to the loading path, and cannot obtain the customized plug-in package and the dependent plug-in list of the customized plug-in.

[0065] If the loading path exists, but the customized plug-in package or dependent plug-in list of the customized plug-in does not exist in the storage space corresponding to the loading path, the electronic device cannot obtain the customized plug-in package and dependent plug-in list of the customized plug-in.

[0066] The electronic device can obtain the customized plug-in package and the dependent plug-in list only when the loading path exists and the customized plug-in package and the dependent plug-in list of the customized plug-in exist in the storage space corresponding to the loading path.

[0067] The customized plug-in package is a file required to load the customized plug-in. The dependent plug-in list includes at least one dependent plug-in identifier, which is used to identify the dependent plug-in. The dependent plug-in is the plug-in that the customized plug-in depends on to run successfully or the plug-in that provides a running environment for the customized plug-in.

[0068] Therefore, if the electronic device cannot obtain the customized plug-in package or the dependent plug-in list, it can be determined that the operating environment of the customized plug-in has not passed the first verification.

[0069] If the electronic device obtains the customized plug-in package and the list of dependent plug-ins, the file format of the customized plug-in package can be obtained, and it can be determined whether the file format of the customized plug-in package is any one of the preset plug-in package formats. If the file format of the customized plug-in package is not any one of the preset plug-in package formats, the customized plug-in cannot be loaded into the first container, or the user cannot use the customized plug-in to implement the customized function through the target application. Therefore, if the electronic device obtains the customized plug-in package and the list of dependent plug-ins, and the file format of the customized plug-in package is not any one of the preset plug-in package formats, it can be determined that the operating environment of the customized plug-in has not passed the first verification.

[0070] If the electronic device obtains a customized plug-in package and a list of dependent plug-ins, and the file format of the customized plug-in package is any preset plug-in package format, it is necessary to perform a first check on the operating environment of the customized plug-in according to the plug-in customization list, the loaded plug-in list and the dependent plug-in list.

[0071] The customized application startup method provided in this embodiment can quickly check whether the loading path is correct and whether the file format of the customized plug-in package is correct by obtaining the customized plug-in package and the dependent plug-in list from the loading path, and quickly perform a first check on the operating environment of the customized plug-in.

[0072] Optionally, the dependent plug-in list includes no dependent plug-in identifier or at least one dependent plug-in identifier; in step 405, "perform a first check on the operating environment of the customized plug-in according to the plug-in customization list, the loaded plug-in list and the dependent plug-in list" is further refined to include steps 501 to 503.

[0073] Step 501: In response to the dependent plug-in list including a non-dependent plug-in identifier, it is determined that the operating environment of the customized plug-in passes a first verification.

[0074] In this embodiment, the non-dependent plug-in identifier indicates that the customized plug-in does not need to rely on other plug-ins, or the operating environment provided by the plug-in to run, so it can be determined that the operating environment of the customized plug-in passes the first verification.

[0075] Step 502: In response to the fact that each dependent plug-in identifier included in the dependent plug-in list exists in the plug-in customization list or the loaded plug-in list, it is determined that the operating environment of the customized plug-in passes the first verification.

[0076] In this embodiment, if all the dependent plug-in identifiers included in the dependent plug-in list exist in the loaded plug-in list, it means that the operating environment of the customized plug-in already exists in the first container. If all the dependent plug-in identifiers included in the dependent plug-in list exist in the plug-in customization list, or, all the dependent plug-in identifiers included in the dependent plug-in list exist in the plug-in customization list or in the loaded plug-in list, it means that after all the customized plug-ins included in the plug-in customization list are loaded into the first container, the operating environment of the customized plug-in exists in the first container. Therefore, it can be determined that the operating environment of the customized plug-in passes the first verification.

[0077] Step 503: In response to any dependent plug-in identifier included in the dependent plug-in list not existing in the plug-in customization list or the loaded plug-in list, it is determined that the operating environment of the customized plug-in fails the first verification.

[0078] In this embodiment, if any dependent plug-in identifier included in the dependent plug-in list does not exist in the plug-in customization list or the loaded plug-in list, it means that whether before or after each customized plug-in is loaded into the first container, the operating environment of the customized plug-in does not exist in the first container, and the customized plug-in cannot run in the first container. Therefore, it is determined that the operating environment of the customized plug-in has not passed the first verification.

[0079] The customized application startup method provided in this embodiment can quickly check whether the customized plug-in has a running environment in the first container by determining whether each dependent plug-in identifier included in the dependent plug-in list exists in the customized plug-in list or the loaded plug-in list, and then quickly and accurately perform a first check on the running environment of the customized plug-in to avoid the situation where the customized plug-in cannot run successfully after being loaded into the first container.

[0080] Step 303 , in response to the running environment of each customized plug-in passing the first verification, each customized plug-in is loaded into the first container where the target application is located.

[0081] In this embodiment, if the operating environment of each customized plug-in passes the first verification, it indicates that each customized plug-in can run successfully in the first container, and the user can call each customized plug-in through each target application to implement customized functions. Therefore, the electronic device can load each customized plug-in into the first container where the target application is located to customize the target application to meet the user's customization requirements for the target application.

[0082] In this embodiment, the customization requirements of the user's target application are met by means of a customized plug-in. Compared with the prior art of realizing customized applications through different code branches, when the target application version is updated, only the target application needs to be updated, and there is no need to update multiple versions of customized applications. When the user's customization requirements change, only the customized plug-in needs to be updated, which can reduce the workload of developers and maintenance personnel.

[0083] The customized application startup method provided in this embodiment performs a first check on the operating environment of each customized plug-in according to the plug-in customization list, the target application configuration information and each customized plug-in configuration information, and loads each customized plug-in into the first container where the target application is located after the operating environment of each customized plug-in passes the first check. This ensures that the customized plug-in can run successfully in the first container, thereby realizing the user's customized needs for the target application.

[0084] Optionally, before step 303 “in response to the running environment of each customized plug-in passing the first verification, loading each customized plug-in into the first container where the target application is located”, step 601 is also included.

[0085] Step 601, determine the loading order of each customized plug-in according to the plug-in customization list and the configuration information of each customized plug-in; the loading order of the dependent customized plug-in is before the main dependent customized plug-in, and the dependent plug-in list of the main dependent customized plug-in includes the identifier of the dependent customized plug-in.

[0086] In this embodiment, the loading order of each customized plug-in can be the order in which each customized plug-in is loaded into the first container. In order to ensure that the customized plug-in can run successfully after being loaded into the first container, the loading order of the dependent customized plug-in can be determined to be before the main dependent customized plug-in. Among them, the dependent customized plug-in refers to the customized plug-in that is dependent on other plug-ins, the main dependent customized plug-in refers to the customized plug-in that depends on other plug-ins, and the dependent plug-in list of the main dependent customized plug-in includes the identifier of the dependent customized plug-in.

[0087] Exemplarily, the dependency plug-in list of plug-in A includes plug-in B, the dependency plug-in list of plug-in B includes plug-in C, and the dependency list of plug-in C includes a non-dependency plug-in identifier. Then plug-in B is the dependent plug-in of plug-in A, plug-in A is the main dependent plug-in of plug-in B, plug-in C is the dependent plug-in of plug-in B, and plug-in B is the main dependent plug-in of plug-in C. Therefore, in the loading order, the loading order of plug-in C is before plug-in B, and the loading order of plug-in B is before plug-in A.

[0088] In this embodiment, if the list of dependent plug-ins of the customized plug-in includes no dependent plug-in identifiers, the order of loading the customized plug-in can be any order. If the list of dependent plug-ins of the customized plug-in includes dependent plug-in identifiers that are all in the list of loaded plug-ins, the order of loading the customized plug-in can be any order.

[0089] Step 303 “in response to the running environment of each customized plug-in passing the first verification, loading each customized plug-in into the first container where the target application is located” is refined to include step 701 .

[0090] Step 701: load each customized plug-in into the first container where the target application is located according to the loading order.

[0091] In this embodiment, for customized plug-ins with a loading order, the electronic device can load each customized plug-in in a single thread in order or in a multi-threaded order according to the loading order. For customized plug-ins without an existing order, single-thread out-of-order loading or multi-thread out-of-order loading can be performed.

[0092] The customized application startup method provided in this embodiment can ensure that the customized plug-in can run successfully after being loaded into the first container, by loading the dependent customized plug-in before the main dependent customized plug-in.

[0093] Optionally, in step 203 , “loading each customized plug-in into the first container where the target application is located” is further refined to include steps 801 to 804 .

[0094] Step 801, determining the running state of the target application according to the target application identifier; the running state is running or not running.

[0095] In this embodiment, the running status of the target application refers to whether the target application is started in the first container. If the target application is started in the first container, the running status is running; if the target application is not started in the first container, the running status is not running.

[0096] Step 802: In response to the running status being running, obtaining the parsed files of each customized plug-in from each loading path.

[0097] In this embodiment, if the running state of the target application is already running, each customized plug-in can be loaded into the first container. The parsed file of the customized plug-in is pre-stored in the storage space corresponding to the loading path of the customized plug-in. Specifically, the electronic device can obtain the parsed file of each customized plug-in from each loading path.

[0098] Step 803: parse the parsed file, determine the target entity class of each customized plug-in, and register the target entity class of each customized plug-in in each second container isolated from each other.

[0099] In this embodiment, the parsed file refers to the class file of the customized plug-in, and the parsed file includes the class name, package name, parent class, implemented interface, all methods, fields, etc. of the customized plug-in class. The electronic device parses the parsed file to determine the target entity type of the customized plug-in, and then registers the target entity class of the customized plug-in in the first container. Specifically, the electronic device can register the java bean object of the customized plug-in in the isolated springioc container, and register the plug-in registry at the same time. Each bean has an exclusive ioc container to avoid conflicts between customized plug-ins.

[0100] Step 804, obtaining the customized plug-in package of each customized plug-in from each loading path, and loading the customized plug-in package of each customized plug-in into the corresponding second container, so as to load each customized plug-in into the first container where the target application is located; each second container belongs to the first container.

[0101] In this embodiment, the electronic device can load the customized plug-in package into the second container to complete the loading of the customized plug-in. The electronic device can load each customized plug-in in a single-threaded or multi-threaded manner, which is not limited in this embodiment.

[0102] Optionally, the second container may be a Map structure, the second container identifier may be the same as the identifier of the customized plug-in loaded in the second container, and illustratively, the name of the second container may be the name of the customized plug-in loaded in the second container.

[0103] The customized application startup method provided in this embodiment can avoid plug-in conflicts caused by inconsistent versions of dependent components of customized plug-ins by loading each customized plug-in into a second container that is isolated from each other.

[0104] In this embodiment, after each customized plug-in is loaded into each isolated second container, the electronic device can also generate a proxy object for the bean object of each customized plug-in. Specifically, the electronic device loads the proxy object with the Autowired annotation in the customized plug-in. When the bean object of the customized plug-in initiates a call to other plug-ins, the proxy object forwards the call to the method of the bean object of other plug-in containers.

[0105] Optionally, the function customization request also includes a loading mode corresponding to each customized function identifier; after step 801 "determining the running state of the target application according to the target application identifier", steps 901 to 904 are also included.

[0106] Step 901, in response to the running state being not running, obtaining a loading mode corresponding to each customized function identifier included in the function customization request; the loading mode is triggered when the application is started or when the application is running.

[0107] In this embodiment, when a user triggers a function customization request, the user can select a loading mode for each customized function. The loading mode corresponding to the customized function identifier is the loading mode of the customized function selected when the user triggers the function customization request.

[0108] If the running state of the target application is not running, the electronic device may set the loading mode of the customized plug-in corresponding to each customized function identifier according to the loading mode corresponding to each customized function identifier.

[0109] Step 902: Perform the following operations for each customized plug-in:

[0110] Step 903, in response to the loading mode of the corresponding customized function identifier being triggered at startup, setting the loading condition of the customized plug-in to the startup event of the target application, so that when the target application is started, the customized plug-in is loaded into the first container where the target application is located;

[0111] Step 904, in response to the loading mode of the corresponding customized function identifier being triggered during operation, the loading condition of the customized plug-in is set to be triggered by the hypertext protocol interface, so as to load the customized plug-in into the first container where the target application is located while the target application is running.

[0112] In this embodiment, the startup trigger means that the customized plug-in will be loaded when the target application is started, and the running trigger means that the customized plug-in is loaded according to the user's instructions or preset conditions when the target application is running. Therefore, the electronic device can set the loading method of the customized plug-in by setting the loading conditions.

[0113] If the loading mode of the corresponding customized function identifier is triggered at startup, the electronic device can set the loading condition of the customized plug-in to the startup event of the target application. When the target application is started, a startup event will be generated. When the electronic device detects the startup event of the target application, it will load the customized plug-in whose loading condition is set to the startup event of the target application.

[0114] If the loading mode of the corresponding customized function identifier is triggered during operation, the electronic device can set the loading condition of the customized plug-in to be triggered by a hypertext protocol interface. During the operation of the target application, the user can trigger a customized plug-in loading indication in the client device. The customized plug-in loading indication includes a customized plug-in identifier. The customized plug-in loading triggered by the user can be sent to the electronic device via the hypertext protocol interface. When the electronic device receives the customized plug-in loading indication, it can load the customized plug-in whose loading condition is set to be triggered by a hypertext protocol interface according to the customized plug-in identifier.

[0115] Optionally, during the loading process of the customized plug-in, it is necessary to check whether all dependent plug-ins of the customized plug-in have been loaded. If the dependent plug-in has not been loaded, it is necessary to load the dependent plug-in of the customized plug-in first.

[0116] The customized plug-in loading method provided in this embodiment can load the customized plug-in according to user needs by setting the loading conditions of the customized plug-in, thereby avoiding wasting performance due to loading too many plug-ins in the first container.

[0117] Optionally, the user can also trigger a plug-in uninstall request in the client device, and the plug-in uninstall request includes the identifier of the plug-in to be uninstalled. The client device sends the plug-in uninstall request to the electronic device. After the electronic device receives the plug-in uninstall request, it can trigger the garbage collection plug-in to uninstall the bean object of the plug-in to be uninstalled in the first container and recycle the second container in the first container.

[0118] Embodiment 3

[0119] Figure 4 Schematic diagram of the structure of a customized application startup device provided according to the third embodiment of the present application. Figure 4 As shown, the customized application starting device 40 provided in this embodiment includes: an acquisition module 41 , a first determination module 42 and a loading module 43 .

[0120] The acquisition module 41 is used to acquire a function customization request of a target application triggered by a user; the function customization request includes a target application identifier and at least one customized function identifier.

[0121] The first determination module 42 is used to determine the plug-in customization list corresponding to the function customization request according to a first mapping relationship between multiple preset function identifiers and preset plug-in identifiers; the preset plug-in is a pre-developed plug-in that can realize the corresponding preset function, and the plug-in customization list includes each customized plug-in identifier that has a first mapping relationship with each customized function identifier.

[0122] The loading module 43 is used to load each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier.

[0123] Optionally, the loading module is specifically used to:

[0124] Determine the target application configuration information according to the target application identifier, and determine each customized plug-in configuration information according to each customized plug-in identifier;

[0125] Performing a first check on the operating environment of each customized plug-in according to the plug-in customization list, the target application configuration information and each customized plug-in configuration information;

[0126] In response to the running environment of each customized plug-in passing the first verification, each customized plug-in is loaded into the first container where the target application is located.

[0127] Optionally, the target application configuration information includes at least one preset plug-in package format and a list of loaded plug-ins of the target application; the customized plug-in configuration information includes a loading path of the customized plug-in, and a storage space corresponding to the loading path stores a customized plug-in package and a list of dependent plug-ins of the customized plug-in; the loading module 43 is further specifically used for:

[0128] For any custom plugin, do the following:

[0129] Get the customized plug-in package and dependent plug-in list from the storage space corresponding to the loading path;

[0130] In response to failing to obtain the customized plug-in package or the dependent plug-in list, determining that the operating environment of the customized plug-in fails the first verification;

[0131] In response to obtaining the customized plug-in package and the list of dependent plug-ins, and the file format of the customized plug-in package is not any of the preset plug-in package formats, determining that the operating environment of the customized plug-in fails the first verification;

[0132] In response to obtaining a customized plug-in package and a dependent plug-in list, and the file format of the customized plug-in package is any preset plug-in package format, a first check is performed on the operating environment of the customized plug-in according to the plug-in customization list, the loaded plug-in list and the dependent plug-in list.

[0133] Optionally, the dependent plug-in list includes no dependent plug-in identifier or at least one dependent plug-in identifier; the loading module is specifically used for:

[0134] In response to the dependent plug-in list including a non-dependent plug-in identifier, determining that the operating environment of the customized plug-in passes a first check;

[0135] In response to each dependent plug-in identifier included in the dependent plug-in list being present in the plug-in customization list or the loaded plug-in list, determining that the operating environment of the customized plug-in passes the first verification;

[0136] In response to any dependent plug-in identifier included in the dependent plug-in list not existing in the plug-in customization list or the loaded plug-in list, it is determined that the operating environment of the customized plug-in fails the first verification.

[0137] Optionally, the customized application startup module further includes a second determination module, and the second determination module is used to:

[0138] Determine the loading order of each customized plug-in according to the plug-in customization list and the configuration information of each customized plug-in; the loading order of the dependent customized plug-in is before the main dependent customized plug-in, and the dependent plug-in list of the main dependent customized plug-in includes the identifier of the dependent customized plug-in;

[0139] Loading modules are also used specifically for:

[0140] Each customized plug-in is loaded into the first container where the target application is located according to the loading order.

[0141] Optionally, the loading module is specifically used to:

[0142] According to the target application identifier, determine the running state of the target application; the running state is running or not running;

[0143] In response to the running status being running, obtaining the parsed files of each customized plug-in from each loading path;

[0144] Parse the parsed file to determine the target entity class of each customized plug-in, and register the target entity class of each customized plug-in in each second container isolated from each other;

[0145] A customized plug-in package of each customized plug-in is obtained from each loading path, and the customized plug-in package of each customized plug-in is loaded into a corresponding second container, so as to load each customized plug-in into a first container where the target application is located; each second container belongs to the first container.

[0146] Optionally, the function customization request further includes a loading mode corresponding to each customized function identifier; the loading module is further specifically used for:

[0147] In response to the running state being not running, obtaining a loading mode corresponding to each customized function identifier included in the function customization request; the loading mode is triggered when the application is started or when the application is running;

[0148] For each custom plugin, do the following:

[0149] In response to the loading mode of the corresponding customized function identifier being triggered at startup, setting the loading condition of the customized plug-in to the startup event of the target application, so that when the target application is started, the customized plug-in is loaded into the first container where the target application is located;

[0150] In response to the loading mode of the corresponding customized function identifier being triggered during operation, the loading condition of the customized plug-in is set to be triggered by a hypertext protocol interface, so that the customized plug-in is loaded into the first container where the target application is located while the target application is running.

[0151] The customized application startup device provided in this embodiment can execute the customized application startup method provided in any of the above embodiments. The specific implementation method and principle are similar and will not be repeated here.

[0152] Embodiment 4

[0153] Figure 5 Schematic diagram of the structure of an electronic device provided according to Embodiment 4 of the present application. Figure 5 As shown, the electronic device 50 provided in this embodiment includes: a processor 52 and a memory 51 communicatively connected to the processor 52 .

[0154] The memory 51 stores computer-executable instructions.

[0155] The processor 52 executes the computer execution instructions stored in the memory 51 to implement the customized application startup method provided by any of the above embodiments. The specific implementation method and principle are similar and will not be repeated here.

[0156] Optionally, the electronic device further includes a transceiver, which is communicatively connected to the memory and the processor, and is used for transmitting and receiving data.

[0157] The memory, processor and transceiver can communicate with each other through the bus. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0158] The memory can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk, etc.

[0159] In an exemplary embodiment, the electronic device may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to execute the above-mentioned customized application launch method.

[0160] An embodiment of the present application also provides a computer-readable storage medium, which stores computer execution instructions. When the computer execution instructions are executed by a processor, they are used to implement a customized application startup method provided in any of the above embodiments. The specific implementation method and principle are similar and will not be repeated here.

[0161] By way of example, the computer-readable storage medium may be a read-only memory, a random access memory, a magnetic tape, a floppy disk, an optical data storage device, and the like.

[0162] An embodiment of the present application also provides a computer program product, including a computer program, which, when executed by a processor, implements the customized application startup method provided by any of the above embodiments. The specific implementation method and principle are similar and will not be repeated here.

[0163] It should be understood that the above device embodiments are only illustrative, and the device of the present application can also be implemented in other ways. For example, the division of modules in the above embodiments is only a logical function division, and there may be other division methods in actual implementation. For example, multiple modules can be combined, or can be integrated into another system, or some features can be ignored or not executed.

[0164] In addition, unless otherwise specified, the functional modules in the various embodiments of the present application may be integrated into one module, or each module may exist physically separately, or two or more modules may be integrated together. The above-mentioned integrated modules may be implemented in the form of hardware or in the form of software program modules.

[0165] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the present application.

[0166] It should be further noted that, although the various steps in the flowchart are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowchart may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these sub-steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.

[0167] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. The present application is intended to cover any modification, use or adaptation of the present application, which follows the general principles of the present application and includes common knowledge or customary techniques in the art that are not disclosed in the present application. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present application are indicated by the following claims.

[0168] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.

Claims

1. A customized application startup method, characterized in that: include: Obtain a function customization request for a target application triggered by a user; The function customization request includes a target application identifier and at least one customized function identifier; Determining a plug-in customization list corresponding to the function customization request according to a first mapping relationship between a plurality of preset function identifiers and preset plug-in identifiers; The preset plug-in is a pre-developed plug-in capable of realizing a corresponding preset function, and the plug-in customization list includes each customized plug-in identifier having a first mapping relationship with each customized function identifier; According to the target application identifier and each customized plug-in identifier, each customized plug-in is loaded into the first container where the target application is located.

2. The method according to claim 1, characterized in that The step of loading each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier includes: Determine the target application configuration information according to the target application identifier, and determine each customized plug-in configuration information according to each customized plug-in identifier; Performing a first check on the operating environment of each customized plug-in according to the plug-in customization list, the target application configuration information and each customized plug-in configuration information; In response to the running environment of each customized plug-in passing the first verification, each customized plug-in is loaded into the first container where the target application is located.

3. The method according to claim 2, characterized in that The target application configuration information includes at least one preset plug-in package format and a list of loaded plug-ins of the target application; the customized plug-in configuration information includes a loading path of the customized plug-in, and the storage space corresponding to the loading path stores the customized plug-in package and the list of dependent plug-ins of the customized plug-in; The first checking of the operating environment of each customized plug-in according to the plug-in customization list, the target application configuration information and each customized plug-in configuration information includes: For any of the customized plug-ins, perform the following operations: Obtaining the customized plug-in package and the dependent plug-in list from the storage space corresponding to the loading path; In response to failing to obtain the customized plug-in package or the dependent plug-in list, determining that the operating environment of the customized plug-in fails to pass the first verification; In response to obtaining the customized plug-in package and the dependent plug-in list, and the file format of the customized plug-in package is not any of the preset plug-in package formats, determining that the operating environment of the customized plug-in fails the first verification; In response to obtaining the customized plug-in package and the dependent plug-in list, and the file format of the customized plug-in package is any preset plug-in package format, a first check is performed on the operating environment of the customized plug-in according to the plug-in customization list, the loaded plug-in list and the dependent plug-in list.

4. The method according to claim 3, characterized in that The dependent plug-in list includes no dependent plug-in identification or at least one dependent plug-in identification; The first checking of the operating environment of the customized plug-in according to the plug-in customization list, the loaded plug-in list and the dependent plug-in list includes: In response to the dependent plug-in list including a non-dependent plug-in identifier, determining that the operating environment of the customized plug-in passes a first check; In response to each dependent plug-in identifier included in the dependent plug-in list being present in the plug-in customization list or the loaded plug-in list, determining that the operating environment of the customized plug-in passes a first verification; In response to any dependent plug-in identifier included in the dependent plug-in list not being present in the plug-in customization list or the loaded plug-in list, it is determined that the operating environment of the customized plug-in fails the first verification.

5. The method according to claim 4, characterized in that In response to the running environment of each customized plug-in passing the first verification, before loading each customized plug-in into the first container where the target application is located, the method further includes: Determine the loading order of each customized plug-in according to the plug-in customization list and the configuration information of each customized plug-in; the loading order of the dependent customized plug-in is before the main dependent customized plug-in, and the dependent plug-in list of the main dependent customized plug-in includes the identifier of the dependent customized plug-in; In response to the operating environment of each customized plug-in passing the first verification, each customized plug-in is loaded into the first container where the target application is located, and further includes: According to the loading order, each customized plug-in is loaded into the first container where the target application is located.

6. The method according to claim 3, characterized in that The step of loading each customized plug-in into the first container where the target application is located includes: Determine the running state of the target application according to the target application identifier; the running state is running or not running; In response to the running status being running, obtaining a parsed file of each customized plug-in from each loading path; Parsing the parsed file, determining the target entity class of each customized plug-in, and registering the target entity class of each customized plug-in in each second container isolated from each other; The customized plug-in package of each customized plug-in is obtained from each of the loading paths, and the customized plug-in package of each customized plug-in is loaded into the corresponding second container, so as to load each customized plug-in into the first container where the target application is located; each of the second containers belongs to the first container.

7. The method according to claim 6, characterized in that The function customization request also includes a loading mode corresponding to each customized function identifier; After determining the running state of the target application according to the target application identifier, the method further includes: In response to the running state being not running, obtaining a loading mode corresponding to each customized function identifier included in the function customization request; the loading mode is triggered when the application is started or when the application is running; For each custom plugin, do the following: In response to the loading mode of the corresponding customized function identifier being triggered at startup, setting the loading condition of the customized plug-in to the startup event of the target application, so that when the target application is started, the customized plug-in is loaded into the first container where the target application is located; In response to the loading mode of the corresponding customized function identifier being triggered during operation, the loading condition of the customized plug-in is set to be triggered by a hypertext protocol interface, so that the customized plug-in is loaded into the first container where the target application is located while the target application is running.

8. A customized application startup device, characterized in that: include: An acquisition module, used to acquire a function customization request of a target application triggered by a user; The function customization request includes a target application identifier and at least one customized function identifier; A first determining module, configured to determine a plug-in customization list corresponding to the function customization request according to a first mapping relationship between a plurality of preset function identifiers and preset plug-in identifiers; The preset plug-in is a pre-developed plug-in capable of realizing a corresponding preset function, and the plug-in customization list includes each customized plug-in identifier having a first mapping relationship with each customized function identifier; The loading module is used to load each customized plug-in into the first container where the target application is located according to the target application identifier and each customized plug-in identifier.

9. An electronic device, characterized in that: include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 7 when executed by a processor.