CN112486547B - Application program updating method and device under multi-tenant scene and electronic equipment - Google Patents

Application program updating method and device under multi-tenant scene and electronic equipment Download PDF

Info

Publication number
CN112486547B
CN112486547B CN202110149182.9A CN202110149182A CN112486547B CN 112486547 B CN112486547 B CN 112486547B CN 202110149182 A CN202110149182 A CN 202110149182A CN 112486547 B CN112486547 B CN 112486547B
Authority
CN
China
Prior art keywords
application
application program
target
identifier
update
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
CN202110149182.9A
Other languages
Chinese (zh)
Other versions
CN112486547A (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.)
Suzhou Dajiaying Information Technology Co Ltd
Original Assignee
Suzhou Dajiaying Information Technology 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 Suzhou Dajiaying Information Technology Co Ltd filed Critical Suzhou Dajiaying Information Technology Co Ltd
Priority to CN202110149182.9A priority Critical patent/CN112486547B/en
Publication of CN112486547A publication Critical patent/CN112486547A/en
Application granted granted Critical
Publication of CN112486547B publication Critical patent/CN112486547B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses an application program updating method and device under a multi-tenant scene and electronic equipment, wherein the method comprises the following steps: receiving an update request of a target application program sent by a client; acquiring a target download path of the target application program from an application program database according to the current tenant identification in the target application identification; the application program database stores application update installation packages of a plurality of sub application programs corresponding to basic application programs, and each application update installation package in the application program database corresponds to a download path; comparing the target application level identification with the application level identification corresponding to the target download path; and if the target application level identification is different from the application level identification corresponding to the target download path, returning the target download path to the client. The problem of limitation of a third-party server on current limiting is solved, and user friendliness is improved.

Description

Application program updating method and device under multi-tenant scene and electronic equipment
Technical Field
The invention relates to the technical field of application operation and maintenance management, in particular to an application updating method and device in a multi-tenant scene and electronic equipment.
Background
With the rapid development of information technology and the rise of the internet, internet applications are permeated into various industries, and the trend of expansion of the number of network applications is inevitable. The perfect application development cannot be realized by any application developer, the application is always in a problem after being used for a period of time due to various aspects, and the upgrading of the application becomes more and more important with the appearance of new technologies and the increasing requirements of users. The upgrade work is more important throughout the life cycle of the application.
At present, the updating of the application program is usually performed in a manner of a third-party server, the application programs stored by the third-party server are all updated in a manner of a single application program, and if the application programs of the same or similar development sources are in a form of independently establishing the application programs, huge network resources are occupied when the application programs are downloaded or updated. The third-party server often limits the download permission of different applications for using the third-party service in a throttling limitation manner, and limits the download flow, for example, the number of users or the number of times of calling the interfaces of the third-party server within a period of time is limited.
In addition, as more and more applications are accessed by the third-party server, generally, the application updating work is mainly focused on developers, and different users may have different requirements for the same application, so as to increase the number of users, the requirements in the application development are more and more, and the requirements are more and more changed. When a developer develops an application according to a large number of different requirements, the developer generates a plurality of customized and developed applications of the same type, the development code amount is greatly increased and complicated in the development process, and a large number of redundant codes are included, so that the code maintenance and the application updating are not facilitated, and the development cost of the application is high.
Therefore, it is urgently needed to provide a technical solution capable of adapting to multi-tenant scenario application update, a plurality of sub-applications with different application function parameters under the same application are stored in a server in a multi-tenant technology manner, and when the application is upgraded, the corresponding downloading or upgrading of a plurality of differentiated sub-applications can be realized only by providing one application update connection interface, so that network traffic is greatly reduced, network resources are saved, code redundancy can be reduced, code maintenance and application update are facilitated, and application development and operation and maintenance costs are reduced.
Disclosure of Invention
In order to solve the above technical problem, in one aspect, the present invention provides an application program updating method in a multi-tenant scenario, including:
the method comprises the steps that a client sends an update request of a target application program to a server, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program; the server stores an application program database, and the application program database stores application update installation packages of a plurality of sub application programs corresponding to basic application programs;
after receiving an update request sent by the client, the server acquires a target download path of the target application program from the application program database according to a current tenant identification in the target application identification; each application updating installation package in the application program database corresponds to a downloading path, the address identifiers corresponding to the designated sub application programs are the same and the tenant identifiers are different, the address identifiers are determined according to the common configuration file corresponding to the basic application program, and the application program function parameters of the designated application updating installation package are configured based on the tenant use requirements of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application updating installation package is an application updating installation package of different sub application programs corresponding to the same basic application program;
after the server acquires the target download path, comparing a target application level identifier in the update request with an application level identifier corresponding to the target download path, and if the target application level identifier is different from the application level identifier corresponding to the target download path, returning the target download path to the client;
and the client downloads the application updating installation package corresponding to the target application program from the server according to the received target downloading path, and executes the downloaded application updating installation package to update the target application program.
In another aspect, the present invention provides an application program updating method in a multi-tenant scenario, including:
receiving an update request of a target application program sent by a client, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
acquiring a target download path of the target application program from an application program database according to the current tenant identification in the target application identification; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are determined according to a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program;
comparing the target application level identification with the application level identification corresponding to the target download path;
and if the target application level identification is different from the application level identification corresponding to the target download path, returning the target download path to the client.
Further, the update request further includes: an authorization identifier; the acquiring a target download path of the target application program from an application program database according to the current tenant identification in the target application identification comprises:
calling an application program connection interface according to the current address identifier in the target application identifier;
inquiring whether an authorization identifier to be verified which is the same as the authorization identifier is stored in the application program database or not through the application program connection interface, wherein each application updating installation package in the application program database also corresponds to the authorization identifier to be verified;
and when the authorization identifier to be verified which is the same as the authorization identifier is stored in the application program database, acquiring a target download path of the target application program from the application program database according to the current tenant identifier in the target application identifier.
Further, still include:
receiving an installation request sent by the client based on the target download path;
and returning the corresponding application update installation package to the client based on the installation request, so that the client executes the update of the target application program corresponding to the update request.
Further, before receiving an update request of a target application program sent by a client, the method for constructing the application update installation package in the application program database comprises the following steps:
receiving an installation package generation instruction corresponding to a sub application program corresponding to a basic application program;
inquiring a common configuration file of an application development project of a basic application program corresponding to each sub-application program; at least two differentiated application program functional parameters of a basic application program are configured in a common configuration file;
loading the common configuration file according to the installation package generation instruction so as to assemble resource information matched with the functional parameters of each application program, and generating application update installation packages corresponding to at least two different application program functional parameters, wherein the different application update installation packages can be simultaneously installed on the same client;
and configuring a corresponding downloading path for each application updating installation package.
Further, the loading the common configuration file according to the installation package generation instruction to assemble resource information matched with the functional parameters of each application program, and generating application update installation packages corresponding to at least two differentiated functional parameters of the application program respectively includes:
loading a common configuration file according to the installation package generation instruction so as to load each application program function parameter in the common configuration file; the application program functional parameters comprise interface layout paths;
in the process of loading the application program functional parameters, loading a layout file corresponding to an interface layout path of the application program functional parameters, and assembling interface resources configured by the application program functional parameters according to the layout file to generate an application update installation package corresponding to the application program functional parameters; when at least one of the layout files and the interface resources of any two application program functional parameters is different, the correspondingly generated application update installation package is used for installing the target application program with the differentiated interface.
Further, the receiving an installation package generation instruction corresponding to a sub application corresponding to a base application includes:
acquiring differentiated use requirements corresponding to at least two tenants of a basic application program;
creating a common configuration file corresponding to an application development project of a basic application program;
and in the common configuration file, according to the use requirements corresponding to each tenant, the differentiated application program function parameters corresponding to each tenant are partitioned and expanded.
Further, the receiving an installation package generation instruction corresponding to a sub application corresponding to a base application includes:
according to the use requirement of a new tenant on a basic application program, adding partition configuration and filling corresponding differentiated application program function parameters in a common configuration file corresponding to the basic application program.
Further, the receiving an installation package generation instruction corresponding to a sub application corresponding to a base application includes:
and if the current tenant changes the use requirement of the basic application program, modifying the application program function parameters corresponding to the current tenant in the public configuration file corresponding to the basic application program.
In another aspect, the present invention provides an application program updating method in a multi-tenant scenario, including:
sending an update request of a target application program to a server, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
receiving a target downloading path which is returned by the server when the target application level identification is different from the application level identification corresponding to the target downloading path after the server acquires the target downloading path of the target application program from an application program database according to the current tenant identification in the target application identification; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are determined according to a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program;
sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request;
and executing the update of the target application program according to the received application update installation package returned by the server.
Further, the sending the update request of the target application program to the server includes:
sending an update request of a target application program to the server at every interval of preset time;
or sending an update request of the target application program to the server based on an update instruction input by a user;
or sending an update request of the target application program to the server when the target application program is unavailable;
or when receiving a version update prompt sent by the server, sending an update request of a target application program to the server;
or when the target application program runs to a preset running node, sending an update request of the target application program to the server.
Further, the executing the update of the target application program according to the received application update installation package returned by the server includes:
acquiring a system identifier of a current operating system;
judging whether the numerical value corresponding to the system identifier is larger than a preset system installation identifier value or not;
when the value corresponding to the system identifier is larger than a preset system installation identifier value, calling a first application program installation interface to analyze an application update installation package returned by the server to execute the update of the target application program;
and when the numerical value corresponding to the system identifier is not greater than the preset system installation identifier value, calling a second application program installation interface to analyze the application update installation package returned by the server to execute the update of the target application program.
Further, the executing the update of the target application program according to the received application update installation package returned by the server includes:
acquiring a system identifier of a current operating system;
judging whether the value corresponding to the system identifier is larger than a preset system authorization identifier value or not;
and when the numerical value corresponding to the system identifier is larger than the preset system authorization identifier value, executing the installation of the target application program according to the received allowable installation permission granted to the target application program by the current operating system.
Further, the application update installation package corresponds to an application identifier, where the application identifier includes: a tenant identification;
the executing the update of the target application program according to the received application update installation package returned by the server further comprises:
acquiring an application identifier in the application update installation package;
verifying whether the tenant identification of the application identification in the application update installation package is matched with the current tenant identification;
when the tenant identification of the application identification in the application updating installation package is matched with the current tenant identification, executing the updating of the target application program according to the application updating installation package;
or the like, or, alternatively,
verifying whether the application identifier in the application update installation package is matched with a target application identifier;
and when the application identifier in the application updating installation package is matched with the target application identifier, executing the updating of the target application program according to the application updating installation package.
In another aspect, the present invention provides an apparatus for updating an application program in a multi-tenant scenario, including:
an update request receiving module configured to execute an update request of a target application sent by a receiving client, where the update request includes: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
the target download path acquisition module is configured to acquire a target download path of the target application program from an application program database according to the current tenant identification in the target application identification; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are obtained from a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program;
a comparison module configured to perform a comparison of the target application level identifier with the application level identifier corresponding to the target download path;
and the return module is configured to execute returning the target download path to the client if the target application level identifier is different from the application level identifier corresponding to the target download path.
In another aspect, the present invention provides an apparatus for updating an application program in a multi-tenant scenario, including:
an update request sending module configured to perform sending an update request of a target application to a server, the update request including: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program; enabling the server to obtain a target downloading path of the target application program from an application program database according to a current tenant identification in the target application identification, and returning the target downloading path when the target application level identification is different from the application level identification corresponding to the target downloading path; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are obtained from a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program;
a target download path receiving module configured to execute receiving the target download path returned by the server;
an installation request sending module configured to execute sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request;
and the installation module is configured to execute the update of the target application program according to the received application update installation package returned by the server.
In another aspect, the present invention provides an electronic device for updating an application program in a multi-tenant scenario, including:
a memory for storing a computer program;
and the processor is used for realizing the application program updating method in the multi-tenant scene when executing the computer program.
Because the embodiment of the specification adopts a reliable multicast mode to update the application program, a plurality of sub-application programs with different application program functional parameters under the same basic application program are stored in the server in a multi-tenant technology mode, different tenants under the basic application program correspond to different downloading paths, when the application program is updated, the downloading or updating of a plurality of corresponding differentiated sub-application programs can be realized only by providing an application updating connection interface, the network flow is greatly reduced, the network resources are saved, the redundancy of codes can be reduced, the code maintenance and the updating of the sub-application programs are more facilitated, the application development and operation and maintenance cost is reduced, when a large number of the tenants sharing each downloading path are upgraded, the number of all the tenants in one downloading path is small, and the access amount of a single downloading path can be reduced, the network flow of a single download path can be reduced, and the limitation of a third-party server on the current limit is solved. In addition, the content of the application update by the tenant is not clear enough, or the dependency is generated when the target application program corresponding to the target application level identification is used for a long time, in order to better serve the tenant, the corresponding download address is returned to the client corresponding to the tenant when the target application program is updated, the update of the application program is completed based on the update instruction of the tenant or the target application program, the permission of the application program update is placed on the tenant side, and the user experience and the user sensitivity are improved.
Drawings
In order to more clearly illustrate the technical solution of the present invention, the drawings used in the description of the embodiment or the prior art will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the invention, and that for a person skilled in the art, other drawings can be derived from them without inventive effort.
Fig. 1 is an application schematic diagram of an application update system in a multi-tenant scenario provided in an embodiment of the present specification;
fig. 2 is a timing diagram of an application update method in a multi-tenant scenario according to an embodiment of the present specification;
fig. 3 is a schematic flowchart of an application updating method in a multi-tenant scenario according to an embodiment of the present invention;
fig. 4 is a flowchart illustrating an application updating method in a multi-tenant scenario according to an embodiment of the present invention;
fig. 5 is a flowchart illustrating an application updating method in another multi-tenant scenario according to an embodiment of the present invention;
fig. 6 is a schematic flowchart of an application updating method in a multi-tenant scenario according to another embodiment of the present invention;
fig. 7 is a schematic structural diagram of an application updating apparatus in a multi-tenant scenario according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an application update apparatus in another multi-tenant scenario according to an embodiment of the present invention;
fig. 9 is a schematic structural diagram of an electronic device for updating an application program in a multi-tenant scenario according to an embodiment of the present invention.
The system comprises a client, a server, an update request receiving module, a target download path acquiring module, a comparison module, a returning module, a 21 update request sending module, a 22 target download path receiving module, a 23 installation request sending module and a 24 installation module, wherein the client is connected with the server through the server, the update request receiving module is connected with the target download path acquiring module through the target download path acquiring module, and the comparison module is connected with the target download path acquiring module through the.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be obtained by a person skilled in the art without any inventive step based on the embodiments of the present invention, are within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in sequences other than those illustrated or described herein. Further, "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, apparatus, article, or device that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or device.
With the development of the software (application) industry, the trend of reasonable resource configuration and specialized division of labor is more and more obvious, and the concept of cloud computing and software as a service (SaaS) is gradually fallen to the ground. Software-as-a-service is an innovative software application model, which frees software users from the purchase, deployment and maintenance of application software, system software, hardware and network facilities, and lets software users pay more attention to their own business, and the installation, deployment, maintenance, update and other tasks of infrastructure and software are handed to more professional SaaS service providers to be responsible for enterprise purchase. Meanwhile, for reasonably configuring resources and improving resource utilization efficiency, SaaS service providers often adopt virtualization technology to form a uniform large-scale resource pool to use a main service for a plurality of software, namely a Multi-Tenant mode (Multi-Tenant) which we often say.
In particular, a multi-tenant schema may refer to a server running a single application, but serving multiple enterprises at the same time, with each enterprise's users using the application in a self-tailored version. This is the sharing of the application itself as a resource, rather than an enterprise using only a single server or a single application operating on a set of servers.
Referring to fig. 1, fig. 1 is a schematic application diagram of an application update system in a multi-tenant scenario according to an embodiment of the present disclosure. The application program updating system under the multi-tenant scenario can comprise a client 10 and a server 20, wherein an application program is installed in the client, and the application program can perform data interaction with the server so as to implement the application program updating method under the multi-tenant scenario. As shown in fig. 1, the client may be used to provide an application user-oriented download or update process. The manner in which the client provides the application user-oriented download or update may include, but is not limited to, an application manner or a web page manner, etc.
In this embodiment of the application program updating system in the multi-tenant scenario, the server in the application program updating system may include an independent physical server, may also be a server cluster or a distributed system formed by a plurality of physical servers, and may also be a cloud server that provides basic cloud computing services such as a cloud service, a cloud database, cloud computing, a cloud function, cloud storage, a network service, cloud communication, a middleware service, a domain name service, a security service, a CDN (Content delivery network), and a big data and artificial intelligence platform. In one example, where the server is a distributed system, the distributed system may be a blockchain system.
In this embodiment, the client may include a smart phone, a desktop computer, a tablet computer, a notebook computer, a smart speaker, a digital assistant, an Augmented Reality (AR)/Virtual Reality (VR) device, a smart wearable device, and other types of entity devices. The operating system running on the client in the embodiment of the present application may include, but is not limited to, an android system, an IOS system, linux, windows, and the like.
It should be noted that the following figures show a possible sequence of steps, and in fact do not limit the order that must be followed. Some steps may be performed in parallel without being dependent on each other.
As shown in fig. 2, fig. 2 is a timing diagram of an application updating method in a multi-tenant scenario provided by an embodiment of the present specification, where the embodiment of the present specification provides an application updating method in a multi-tenant scenario, the method may be executed in an application updating system in a multi-tenant scenario, 10 in fig. 2 may represent a client in the foregoing embodiment, and 20 may represent a server in the foregoing embodiment, and the method may include:
s102, the client sends an update request of a target application program to the server, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program; the server stores an application program database, and the application program database stores application update installation packages of a plurality of sub application programs corresponding to basic application programs;
s104, after receiving an updating request sent by the client, the server acquires a target downloading path of the target application program from the application program database according to the current tenant identification in the target application identification; each application updating installation package in the application program database corresponds to a downloading path, the address identifiers corresponding to the designated sub application programs are the same and the tenant identifiers are different, the address identifiers are determined according to the common configuration file corresponding to the basic application program, and the application program function parameters of the designated application updating installation package are configured based on the tenant use requirements of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application updating installation package is an application updating installation package of different sub application programs corresponding to the same basic application program;
s106, after the server acquires the target download path, comparing a target application level identifier in the update request with an application level identifier corresponding to the target download path, and if the target application level identifier is different from the application level identifier corresponding to the target download path, returning the target download path to the client;
and S108, the client downloads the application updating installation package corresponding to the target application program from the server according to the received target downloading path, and executes the downloaded application updating installation package to update the target application program.
It should be noted that the application updating method in the multi-tenant scenario provided in the embodiments of the present disclosure can be executed in an application updating system in the multi-tenant scenario, and since the application updating system in the multi-tenant scenario includes the client 10 and the server 20, the server 20 and the client 10 are respectively used as execution subjects of the application updating method in the multi-tenant scenario in the following embodiments. The details are as follows:
an embodiment of the present specification provides an application program updating method in a multi-tenant scenario, as shown in fig. 3, fig. 3 is a flowchart illustrating the application updating method in the multi-tenant scenario provided in the embodiment of the present invention, where the method is applied to a server for example, and the method may include:
s202, receiving an update request of a target application program sent by a client, wherein the update request comprises: and the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program.
In a specific implementation process, a target application program corresponding to a current tenant is installed in a client, and the target application program realizes data interaction with a server by taking the client as a carrier. The update request sent by the client to the server may include a target application identifier and a target application level identifier of a target application program, where the target application identifier is a unique identifier that the client allows the application program to be installed, and when an application program corresponding to the target application identifier is already installed in the client, the client will not allow the same application program to be installed again when the application program with the same target application identifier is installed. As provided in this specification, the target application identifier may include a current address identifier and a current tenant identifier corresponding to the target application program, and the target application level identifier may be a version number of the application program of the client corresponding to the current tenant, such as V1.0.1, which is used to indicate a version identifier of the target application program being used by the current tenant.
Specifically, the application identification (applicationId) is used to uniquely identify one application. It can be understood that, when the installation package of the application program is installed on the client, the operating system of the client makes a judgment according to the address identifier and the application identifier of the installation package, and if the application identifiers are the same, the same application program is judged, and only one application program can exist under the same client. In this application, the same application may correspond to multiple sub-applications, where different sub-applications may correspond to different application identifiers, such as: the address identifiers in the application identifiers of the sub-applications of the same application can be the same, but the tenant identifiers are different, and different sub-applications correspond to different application function parameters, so that when the target application installation packages generated based on different application function parameters are installed in the same computing device at the same time, the target application installation packages cannot be recognized as the same application by the operating system. For example: the application program M has 2 sub-application programs M1 and M2, the sub-application program M1 is customized for tenant a, the sub-application program M2 is customized for tenant b, the overall functions of the sub-application programs M1 and M2 are similar, and part of the functions are different based on the use requirements of different users. Wherein, the application identifier of the sub-application M1 is 1234578-a, and the application identifier of the sub-application M2 is 1234578-b, it can be seen that the "1234578" part in the application identifiers of the sub-applications M1 and M2 is the same, this part may be an address identifier, and the following "a" and "b" parts are different, this part may be a tenant identifier. Since the application identities of the applications M1, M2 are not identical, the applications M1, M2 may be installed in the same client at the same time.
It should be noted that, a tenant identifier in the application identifier may correspond to one tenant identifier, and also may correspond to a plurality of tenants, such as: for tenants with the same use requirement, the same tenant identification can be configured.
In a specific implementation process, the address identifier may be a flag that characterizes the uniqueness of the application, such as a digital signature provided by an application developer, distributed by a server platform, or generated by an application development platform. In the embodiment of the present specification, in order to mark the same application program, the same application program is marked in a manner of address identification, which is convenient for query, that is, when searching for the corresponding application program, it is only necessary to match the address identification to determine whether multiple applications are the same application program. In addition, in the embodiment of the present specification, an application program connection interface is adopted for multiple different sub application programs of the same basic application program, so that interaction between a client side and server data is realized, and network resources are saved.
The application program is a coded instruction sequence that can be executed by a client having an information processing capability, such as a computer, to obtain a certain result, or a symbolic instruction sequence or symbolic statement sequence that can be automatically converted into a coded instruction sequence. Currently, a user may install various applications on a client, such as a photographing application, a social application, or a mail application, so that various functions, such as a photographing function, a social function, or an email management function, may be implemented through the applications installed on the client.
In one embodiment, the target application may be an organization-based application, such as an enterprise instant messaging application. An organization is a group or group of multiple objects that are combined with each other in some way, such as a school, a class, an enterprise, a department, or a group. The target application may also be a personal-based application, such as a personal instant messaging application. Then, based on this, the application user of the target application is an organization user, such as a business or school, when the target application is an organization-based application. Where the target application is a person-based application, the application user of the target application is a personal user, such as a natural person, a manicure or a etiquette. It is to be appreciated that the application user can include at least two different application tenants, which can include multiple identical tenants.
It should be noted that the present application does not limit the operating system of the client on which the target application runs. The operating system of the client running the target application may be a desktop operating system such as a window (Windows) operating system, a Linux operating system, or a Mac OS (apple desktop operating system), or may also be a mobile operating system such as an iOS (apple mobile client operating system) or an Android operating system.
S204, acquiring a target download path of the target application program from an application program database according to the current tenant identification in the target application identification; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are determined according to a common configuration file corresponding to the basic application program, application program function parameters of the designated application update installation packages are configured based on tenant use requirements of the corresponding tenant identifiers, the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program.
In a specific implementation process, the application database may be set in the server and is used to store application installation packages of different applications (the application installation packages include an application update installation package and an application installation package established for the first time) and databases of relevant parameters of different application installation packages. Since the present application is based on a single application updating method, in the embodiment of the present specification, a single application in an application database is taken as an example for description, and it can be understood that an application update installation package of multiple sub-applications corresponding to multiple identical applications (basic applications) and related parameters of each sub-application update installation package are stored in the application database. The relevant parameters may be an address identifier, a tenant identifier, an authorization identifier, a download path, an application level identifier, and the like corresponding to the application update installation package.
Referring to the description of the above embodiment, the same application program may correspond to multiple differentiated, i.e., different, application identifiers, and the sub-application programs corresponding to the different application identifiers have different application function parameters, and the application programs corresponding to the differentiated application identifiers can be installed on the same client at the same time. The application program function parameters of different application update installation packages of the basic application program are different, and the application program function parameters are set based on the use requirements of different tenants, and it can be understood that the function parameters of the sub-application programs of the same application program can be partially the same, partially different, or completely different, and are specifically determined according to the use requirements of the tenants customizing the sub-application programs. Such as: the login mode of the sub-application M1 corresponding to tenant a is telephone number login, the login mode of the sub-application M2 corresponding to tenant b is account login, the function parameters of the sub-application M1 corresponding to tenant a and the function parameters of the other applications of the sub-application M2 corresponding to tenant b are the same, but the function parameters of the sub-application M1 corresponding to tenant a and the function parameters of the sub-application M2 corresponding to tenant b are different as a whole.
In a specific implementation process, the target application identifier may include a current tenant identifier and a current address identifier, and is distinguished by using a differentiated application identifier when distinguishing sub-applications corresponding to different tenants, the differentiated application identifier may have the same address identifier and a differentiated tenant identifier, the address identifier may represent whether the corresponding application programs are the same application program (basic application layer program), the tenant identifier may be used to distinguish different tenants, the differentiated application identifier corresponds to the same application program (basic application program) with different application program functional parameters, and the sub-applications corresponding to the differentiated application identifier may be installed on the same client at the same time. It can be understood that the application database of the server stores the corresponding relationship between the download path and the current tenant identity.
It can be understood that different application update installation packages of the basic application program are stored in the application program database of the server, and when an application update installation package is generated, corresponding application identifiers, application level identifiers and download paths may be associated with one another and recorded outside the application update installation package, that is, the server may obtain the application update installation package through the application identifiers, the application level identifiers or the download paths, or may obtain the corresponding application identifiers, the application level identifiers or the download paths through the application update installation package. Wherein the application function parameters are configured in a partitioning mode when the application is written.
Or, the name of the application update installation package may be named in a combination manner of the application identifier and the application level identifier, and the name of the application update installation package is generated according to the application identifier and the application level identifier when the application update installation package is generated. When the server matches the target application identifier and the target application level identifier, the corresponding identifier can be directly extracted from the name of the application update installation package and matched, the application update installation package does not need to be analyzed, specific data can be directly used for matching, the calculation speed of the server is improved, and the analysis time of the application update installation package by the server and the operation memory of the server are reduced.
In a specific implementation process, the server may compare the received target application identifier with application identifiers corresponding to a plurality of application update installation packages stored in the application program database, and after the comparison is successful, may obtain a target download path of the application update installation package that is successfully compared, it may be understood that the target download path may be a network file address based on an HTTP protocol in a network; but also a target download path in the form of a P2P download link address, and a bt (bittorrent) link seed file (e.g., a file with a torent suffix), etc.
Illustratively, application update installation packages a1, B1 and C1 corresponding to tenant identities a, B and C, respectively, are stored in an application database in the server, and corresponding application identity a1, application level identity Va and download path Xa are stored in an application update installation package a 1. The server can respectively match the received target application identifier M with tenant identifiers a, b and c stored in an application program database, and after matching, can determine an application update installation package a1 corresponding to the current tenant identifier a, and then obtain a target download path Xa through the application update installation package a 1. It is understood that, when the current tenant identity a is not stored in the application database, an instruction of verification failure may be returned to the corresponding client.
S206, comparing the target application level identification with the application level identification corresponding to the target download path.
In a specific implementation process, the comparison manner between the target application level identifier and the target application level identifier corresponding to the application update installation package stored in the server may be as follows:
before updating
#3.3.1. tenant a's target application level identification
versionName: 1.0.0
#3.3.2. version number of tenant a
versionCode: 1
After update
#3.3.1. tenant a application level identifier (application level identifier corresponding to application update installation package stored by server)
versionName: 1.0.1
#3.3.2. version number of tenant a
versionCode: 2
The server may compare the versioname 1.0.0 with the versioname 1.0.1, or may determine whether the current application needs to be updated in a form of comparing the versionade 1 with the versionade 2.
And S208, if the target application level identification is different from the application level identification corresponding to the target download path, returning the target download path to the client.
And S210, if the target application level identification is the same as the application level identification corresponding to the target download path, returning the generated return value representing that the updating is not needed to the client.
In a specific implementation process, application update installation packages corresponding to different application level identifiers of the same tenant are different, when an application program is updated, a server regenerates a corresponding download path on the basis of a newly issued application update installation package, the download path is linked with the application update installation package, and a client can finish downloading the application update installation package in a mode of accessing the download path.
Because the embodiment of the present specification stores a plurality of sub-applications with different application function parameters under the same basic application in the server in the form of multi-tenant technology, different tenants correspond to different download paths, when the software application is upgraded, only one application updating connection interface is needed to be provided to realize the corresponding downloading or upgrading of a plurality of differentiated applications, thereby greatly reducing the network flow, saving the network resources, and can reduce the redundancy of the code, is more beneficial to the maintenance of the code and the update of the application program, thereby reducing the cost of the application development and the operation and maintenance, when a large number of tenants are upgraded, the number of tenants sharing each download path is less than the number of tenants sharing in one download path, the access amount of a single download path can be reduced, the network flow of the single download path can be reduced, and the limitation of a third-party server on the current limit is solved.
On the basis of the foregoing embodiment, in an embodiment of this specification, the update request further includes: an authorization identifier;
fig. 4 is a flowchart illustrating an application updating method in a multi-tenant scenario according to an embodiment of the present invention, where as shown in fig. 4, the obtaining a target download path of a target application from an application database according to a current tenant identifier in the target application identifier includes:
s302, calling an application program connection interface according to the current address identifier in the target application identifier.
In a specific implementation process, an Application Programming Interface (API) is set on the server side for making an agreement to connect an Application database with a target Application in a client.
S304, inquiring whether the application program database stores the authorization identifier to be verified which is the same as the authorization identifier through the application program connection interface, wherein each application updating installation package in the application program database also corresponds to the authorization identifier to be verified.
S306, when the authorization identifier to be verified which is the same as the authorization identifier is stored in the application program database, acquiring a target download path of the target application program from the application program database according to the current tenant identifier in the target application identifier.
In a specific implementation process, the authorization identifier is used to verify whether the authorization identifier (which may be an identity identifier) in the update request of the target application sent by the client matches with the related identity information stored by the server.
The specific verification process can be as follows:
the client sends an update request (at this time, the update request carries an authorization identifier);
the server side generates a 401 page representing the filling authorization identifier and returns the page to the client side;
the client pops up an authentication dialog box (401 page);
the user inputs the account password and confirms the account password;
the client sends out the updating request again (at this time, the updating request carries the authorization identifier);
the server side passes the authentication and returns a page containing the download path;
the browser displays a page containing the download path.
In the embodiment of the description, the identity of the tenant is verified in the form of the authorization identifier, and only when the sent update request carries the authorization identifier which can be verified to pass, the corresponding target download path is returned to the client, so that the safety of tenant information is ensured, the stay time of a user in application is increased, and the number of access download paths at the same time can be reduced in application upgrading.
On the basis of the above embodiments, in an embodiment of the present specification, the method further includes:
receiving an installation request sent by the client based on the target download path;
and returning the corresponding application update installation package to the client based on the installation request, so that the client executes the update of the target application program corresponding to the update request.
In a specific implementation process, when the application in the client determines to update, an installation request carrying a download path may be sent to the server, and after the installation request is received by the server, the corresponding application update installation package may be returned to the client according to the download path.
The tenant is not clear enough to the content of application updating, or the dependency is generated when the current application corresponding to the target application level identification is used for a long time, in order to better serve the tenant, the corresponding download address is returned to the client corresponding to the tenant when the application is updated, the application updating is completed based on the tenant or the updating instruction of the current application, the permission of application updating is placed on the tenant side, and the user experience and the user perception are improved.
On the basis of the foregoing embodiment, in an embodiment of this specification, the update request sent by the client corresponding to the current tenant is received, fig. 5 is a flowchart illustrating an application update method in another multi-tenant scenario provided in the embodiment of the present invention, and as shown in fig. 5, the update request sent by the client corresponding to the current tenant is received, where the update request includes: the target application identification and the target application level identification, which previously further include:
and S502, receiving an installation package generation instruction corresponding to the sub application program corresponding to the basic application program.
In a specific implementation process, the installation package generation instruction may be triggered by an application developer after compiling a configuration file of a corresponding application.
S504, inquiring a common configuration file of an application development project of a basic application program corresponding to each sub-application program; at least two differentiated application program functional parameters of the basic application program are configured in the common configuration file.
The application development project is a program project for developing a target application, and the common configuration file is a configuration file common to the application development project. The common configuration file comprises application program function parameters of the target application. The application function parameters configure the path of the resources required by the application when running. The differentiated application program functional parameters can be used for indicating to generate a differentiated application installation package, and then installing to obtain differentiated target applications.
S506, loading the common configuration file according to the installation package generation instruction to assemble resource information matched with the functional parameters of the application programs, and generating application update installation packages corresponding to at least two different functional parameters of the application programs, wherein the different application update installation packages can be installed on the same client at the same time.
In a specific implementation process, the client can configure the application manifest file according to the operation of the development user, and introduce the common configuration file into the application manifest file. Thus, when the packaging script is executed at the client, the application manifest file can be automatically assembled, and the common configuration file is loaded through the assembly application manifest file. Because the common configuration file is configured with the differentiated application program functional parameters, when the common configuration file is loaded, different resource data can be assembled according to different application program functional parameters respectively, and the target application installation packages corresponding to at least two different application program functional parameters respectively are generated. Because the differentiated application program functional parameters comprise differentiated application identifiers, each target application installation package is used for installing differentiated target applications, and the differentiated target applications are allowed to be installed in the same client at the same time.
The application manifest file is a file that must be included in the root directory of each application. The application manifest file is also a configuration file for global configuration of the application, and the operating system needs to run the code and display interface of the application according to the content in the application manifest file. An application manifest file such as android manifest (xml) file of an application under an android operating system, or a declaration file of an iOS system of an application under an iOS operating system, or the like.
And S508, configuring a corresponding downloading path for each application updating installation package.
In a specific implementation process, after the application update installation package is generated, the server may regenerate a corresponding download path, and the download path is convenient for the client to download or update the application. The generation manner of the download path is not specifically limited in this embodiment of the present specification, and may be generated based on the first application program interface.
It should be noted that there is a unique common configuration file for each application development project. The differentiated application program function parameters are obtained according to differentiated tenant use requirements, one application development item corresponds to one application identifier, and then the application identifier at least comprises an address identifier and a tenant identifier, the tenant identifier corresponds to a tenant in the application tenants, and the tenant identifier of each application identifier is different and is used for distinguishing personalized sub-application programs of different application tenants; the address identification corresponds to the application development project, the address identification of each application identification is the same, and the personalized sub-application program used for representing each application tenant is obtained based on the same application development project. Thus, the installation packages of the personalized sub-applications corresponding to each tenant can be obtained based on different application program function parameters in the same configuration file, the installation packages can also be installed on the same client, and the personalized target applications obtained by installation can also coexist on the client.
According to the application updating method under the multi-tenant scene, at least two different application program function parameters of the target application are configured in one common configuration file, so that when the application program is required to be packaged, the target application installation packages corresponding to the at least two different application program function parameters are generated based on the common configuration file, the target application installation packages are used for installing the different target applications to realize the different customization of the application program, redundant codes can be reduced, the code amount is reduced, the number of developers is reduced, the development cost is further reduced, and the different application program function parameters are configured in a common configuration file in batch, so that the code maintenance is facilitated. In addition, each application program functional parameter comprises a differentiated application identifier, so that the differentiated target applications can be simultaneously installed on the same client, the subsequent functional test of the target applications is facilitated, the cost consumption on test equipment can be reduced, and the development cost of the application program is greatly reduced.
On the basis of the foregoing embodiment, in an embodiment of this specification, the loading the common configuration file according to the installation package generation instruction to assemble resource information matched with the functional parameters of each application program, and generating an application update installation package corresponding to each of at least two differentiated functional parameters of the application program includes:
loading a common configuration file according to the installation package generation instruction so as to load each application program function parameter in the common configuration file; the application program functional parameters comprise interface layout paths;
in the process of loading the application program functional parameters, loading a layout file corresponding to an interface layout path of the application program functional parameters, and assembling interface resources configured by the application program functional parameters according to the layout file to generate an application update installation package corresponding to the application program functional parameters; when at least one of the layout files and the interface resources of any two application program functional parameters is different, the correspondingly generated application update installation package is used for installing the target application program with the differentiated interface.
It will be appreciated that a common configuration file is used to configure the path of the resource. The interface layout path is a path of the interface layout-related resource. Generally, the interface resource path is a path of the layout file. The layout file is used for planning and arranging interface styles and the like, and the application program functional parameters can also configure paths of interface resources required by the interface planned by the layout file. Interface resources such as icons, controls, and the like. Therefore, when at least one of the layout files and the interface resources of any two application program functional parameters is different, the correspondingly generated target application installation package is used for installing the target application with the interface differentiation.
For example, by taking a login interface differentiation example, a layout path (for example, content of a node 3.9.2 in the following schematic code) configured under a layout configuration node is configured in each application program functional parameter, a corresponding layout file is loaded according to the configuration of the layout configuration node when the application program functional parameter is loaded, and if different styles are introduced into the layout file, corresponding interface resources are loaded according to an interface resource path (for example, content of a node 3.5.3/3.5.4 in the following schematic code) configured under the interface resource configuration node. If the configurations in the functional parameters of the application programs are different, different interface resources are called, and then the installation package of the target application with the differentiated interface is obtained.
#3.9 application tenant a's Business and UI configuration
Business:
#3.9.1 takes the Login function as an example
- login:
#3.9.2 landing Page layout Path
- layout:./res/layout/xxxxxxxxxxx.xml
#3.9.3 landing Page logic
- activity: ./main/xxxx/activity/LoginActivity
#3.9.4 Login service logic
- presenter: ./main/xxxx/presenter/LoginPresenter
# there may be multiple configurations
#3.5 resource configuration of application tenant a
resources:
#3.5.1 configuration XXXXXXXXX
XXXX:XXXXX
#3.5.2 configuration XXXXXXXXX
XXXX:XXXXX
#3.5.3 application tenant a icon configuration (for example, with the start graph)
launchIcon: ./res/pipmap/xxxxx.png
#3.5.4 application tenant a's common style configuration
stylePath: ./res/style/xxxx.xml
There may be several configurations (configurable resources: information such as icon, style, audio, video, etc.)
In one embodiment, the application updating method in the multi-tenant scenario further includes: uniformly configuring a public resource library in a first area of a public configuration file; the public resources in the public resource library comprise interface resources; and when the layout file configured for each application program functional parameter needs to call the interface resource in the common resource library, configuring a path for calling the common resource at the configuration node of the interface resource. Interface resources in the public resource library, such as a Dialog popup, an activity page, a top status bar, a title bar, and the like.
In the above embodiment, different layout files are configured through interface layout paths in different application program functional parameters, or different interface resources are used, so that the target application interface UI can be customized differently. And also be convenient for maintain when there is the demand adjustment in the later stage, reduce the later maintenance cost, very big degree the promotion later stage scalability.
Uniformly configuring a public resource library in a first area of a public configuration file; the public resources in the public resource library comprise at least one of network configuration resources and interface resources; in the common configuration file, according to the use requirement corresponding to each application tenant, the differentiated application program function parameters corresponding to each application tenant are partitioned and expanded, and the method comprises the following steps: in a second area of the common configuration file, according to the use requirements corresponding to each application tenant, the differentiated application program function parameters corresponding to each application tenant are partitioned and expanded according to configuration nodes; for each application tenant, when the service logic needs to call the common resource, a path for calling the common resource is configured at a configuration node of the service logic. The common resource in the common resource library is a resource that can be called by each application program function parameter. It can be understood colloquially that a common repository is a set of source code: for the possible requirements of different tenants, such as functional interfaces, functional switches, network configuration and the like, developers can edit and store the requirements in advance; and later, configuring according to the requirements of different users, such as different login modes, and calling functions or interfaces in the source code.
The network configuration resources comprise a unified request header, a cookie, verification encryption processing of a request and a response, request parameters, POJO packaged by response parameters, conversion tools of JSON and POJO, management of weblogs and the like.
The business logic may include response logic and interface call logic. For example, in one scenario, the login function required by the application tenant is login by using a user name and a password, and in another scenario, the login function required by the application tenant is login by using a mobile phone number and an authentication code. At this time, in terms of response logic, the service logic included in the usage requirement of each application tenant configures the landing page logic of each application tenant (as the content of the node 3.9.3 in the schematic code described below) in the configuration node of the landing page logic in the application function parameter, configures the landing service logic of each application tenant (as the content of the node 3.9.4 in the schematic code described below) in the configuration node of the service logic in the application function parameter, and configures a path for calling the common resource when it is necessary to call the common resource. In terms of interface call logic, the login interface address, request and response path configured in the node 3.8.2 of the application program function parameter are called, and when the configuration of each application program function parameter is different, different interfaces (APIs) are called to realize differentiation of network APIs.
#3.9 tenant a's Business and UI configuration
Business:
#3.9.1 takes the Login function as an example
- login:
#3.9.2 landing Page layout Path
- layout:./res/layout/xxxxxxxxxxx.xml
#3.9.3 landing Page logic
- activity: ./main/xxxx/activity/LoginActivity
#3.9.4 Login service logic
- presenter: ./main/xxxx/presenter/LoginPresenter
# there may be multiple configurations
#3.8 network configuration of tenant a
netApis:
Api configuration information list of #3.8.1 tenant a
api: #3.8.2. Login interface Address (for example, Login interface)
login:
# Login interface Address
url:/login
Pojo type path with encapsulated request and response
pojo:./pojo/
# there may be multiple configurations
In the embodiment, the business response configuration information which is different according to the use requirements of the user in different application program functional parameters can realize the differentiated customization of the target application business response. And also be convenient for maintain when there is the demand adjustment in the later stage, reduce the later maintenance cost, very big degree the promotion later stage scalability.
On the basis of the foregoing embodiment, in an embodiment of this specification, the receiving an installation package generation instruction corresponding to a sub application corresponding to a base application includes:
acquiring differentiated use requirements corresponding to at least two tenants of a basic application program;
creating a common configuration file corresponding to an application development project of a basic application program;
and in the common configuration file, according to the use requirements corresponding to each tenant, the differentiated application program function parameters corresponding to each tenant are partitioned and expanded.
In particular, the usage requirements are information reflecting the functional requirements of the application tenant for the target application. It can be understood that there will usually be at least two application tenants for the target user, and the usage requirements of these application tenants may be the same or different, and the client may obtain the respective usage requirements of these application tenants. An application development project is a program project that develops a base application. The common configuration file is a configuration file common to the application development projects. The requirements of the target application for the application development project development can be configured in the common configuration file. In one embodiment, the application development project has a unique corresponding common configuration file. When the use requirements of different application tenants are different, the application program function parameters corresponding to the different application tenants are different.
Further, the client may configure the common resource path in the first area at the front position automatically or when the common configuration file is laid out according to the operation of the developer. The client can continue to extend the application program function parameters corresponding to each application tenant in a second area behind the first area according to the use requirements corresponding to each application tenant in sequence, so as to extend the application program function parameters corresponding to each application tenant in a partitioning manner.
On the basis of the foregoing embodiment, in an embodiment of this specification, the receiving an installation package generation instruction corresponding to a sub application corresponding to a base application includes:
according to the use requirement of a new tenant on a basic application program, adding partition configuration and filling corresponding differentiated application program function parameters in a common configuration file corresponding to the basic application program.
In a specific implementation process, when a new tenant needs to use the basic application program, a developer of the application program may add partition configuration in a common configuration file corresponding to the basic application program, and fill in corresponding differentiated application program functional parameters based on the added partition configuration, where the application program functional parameters are configured according to the use requirement of the basic application program of the new tenant. After the partition configuration is added in the common configuration file and the corresponding differentiated application program function parameters are filled in, the steps can be repeatedly executed, and the generation of the application updating installation package of the sub-application program corresponding to the new tenant is completed. The implementation of the embodiment of the present specification can expand the application range of the basic application program, when a new tenant needs to customize the basic application program, the application update installation package of the new tenant can be generated only by adding corresponding application program function parameters in the original common configuration file, so that redundant codes can be reduced, the code amount can be reduced, the number of developers can be reduced, the development cost can be further reduced, and the code maintenance and the update of the sub application program can be facilitated by configuring differentiated application program function parameters in a common configuration file in batch.
On the basis of the foregoing embodiment, in an embodiment of this specification, the obtaining of the installation package generation instruction corresponding to the target application includes:
and if the current tenant changes the use requirement of the target application, modifying the application program function parameters corresponding to the current tenant in the common configuration file of the target application.
In the embodiment, a way of flexibly changing the attribute of the general function is provided, the general function is allowed or forbidden according to the user requirement, and the differentiation customization of the target application on the general function can be realized. And also be convenient for maintain when there is the demand adjustment in the later stage, reduce the later maintenance cost, very big degree the promotion later stage scalability.
On the other hand, an embodiment of the present disclosure provides an application program updating method in a multi-tenant scenario, where the method may be applied to a client, fig. 6 is a flowchart of an application updating method in another multi-tenant scenario, where as shown in fig. 6, the method includes:
s1002, sending an update request of a target application program to a server, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
s1004, receiving a target download path returned by the server when the target application level identifier is different from the application level identifier corresponding to the target download path after the server acquires the target download path of the target application program from an application program database according to the current tenant identifier in the target application identifier; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are determined according to a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program; and sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request.
S1006, sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request.
S1108, updating the target application program according to the received application updating installation package returned by the server.
On the basis of the foregoing embodiment, in an embodiment of this specification, the sending an update request of a target application to a server includes:
sending an update request of a target application program to the server at every interval of preset time;
or sending an update request of the target application program to the server based on an update instruction input by a user;
or sending an update request of the target application program to the server when the target application program is unavailable;
or when receiving a version update prompt sent by the server, sending an update request of a target application program to the server;
or when the target application program runs to a preset running node, sending an update request of the target application program to the server.
In a particular implementation, a current application in a client may send an installation request to a server in a variety of situations when updating. The update of the current application can be updated in a hot update or a non-hot update mode.
Illustratively, 1, the target application installation package is automatically downloaded in an automatic polling manner, for example, a call for updating the first application program interface is made at preset time intervals (for example, 30 m) on the current application main page.
2. The download instruction input when the user actively updates actively triggers the installation request. The user active update may be a scene in which the current application is not available or the user is prompted through a popup window that the latest version must be updated to continue to be used.
3. And calling an update API when the target application level identifier corresponds to an application running node, where a specific running node is not specifically limited in this embodiment of the specification, and may be a trigger node (i.e., a buried point) preset in an application program by an application developer.
The application updating method under the multi-tenant scene provided by the embodiment of the specification can adopt various updating forms to carry out automatic updating or manual updating, ensures the timeliness of the current application updating, adds the self-checking function of the application program, the updating method provided by the embodiment of the specification can realize the updating of the application by adopting the forced updating mode, avoids the loss caused by the hacking, provides higher security assurance for users, meanwhile, if the version of the application program installed in the client is too low, the workload of the background developer on the daily maintenance of the application with a low application version is also great, and the maintenance cost can be reduced for the current application in time.
On the basis of the foregoing embodiment, in an embodiment of this specification, the executing the update of the target application program according to the received application update installation package returned by the server includes:
acquiring a system identifier of a current operating system;
judging whether the numerical value corresponding to the system identifier is larger than a preset system installation identifier value or not;
when the value corresponding to the system identifier is larger than a preset system installation identifier value, calling a first application program installation interface to analyze an application update installation package returned by the server to execute the update of the target application program;
and when the numerical value corresponding to the system identifier is not greater than the preset system installation identifier value, calling a second application program installation interface to analyze the application update installation package returned by the server to execute the update of the target application program.
For example, as limited by Android official, segmentation is performed at Android7.0
// system identification > =7.0
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
I/Call System second application installation interface
installIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
installIntent.setDataAndType(Uri.fromFile(updateFile), "application/vnd.android.package-archive");
} else {// System identity <7.0
I/Call System first application installation interface
installIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
installIntent.setDataAndType(Uri.fromFile(updateFile), "application/vnd.android.package-archive");
}
Explanation: the difference of installation logic is limited by android authorities, for example, when an android system is upgraded from 6.0 to 7.0, an API for upgrading in the system is modified, and different upgrading API interfaces must be called according to different versions of the system.
In a specific implementation process, a system identifier of a current operating system may be a version model of an operating system in a client, and since an update frequency of the operating system is higher and higher, and compatibility of the operating system with a later developed application cannot guarantee stable operation, in this embodiment of the present specification, before the current application is updated, a matching degree between the system identifier and a first application installation interface or a second application installation interface preset in the client is judged in advance, and the first application installation interface or the second application installation interface capable of realizing updating of a corresponding sub-application is called to realize updating of the current sub-application. Therefore, in the technical scheme provided by the embodiment of the specification, the numerical relationship between the numerical value corresponding to the system identifier and the preset system installation identifier value is judged in advance before the application program is installed, so that the smooth installation of the application program is ensured.
On the basis of the foregoing embodiment, in an embodiment of this specification, the executing the update of the target application program according to the received application update installation package returned by the server includes:
acquiring a system identifier of a current operating system;
judging whether the value corresponding to the system identifier is larger than a preset system authorization identifier value or not;
and when the numerical value corresponding to the system identifier is larger than the preset system authorization identifier value, executing the installation of the target application program according to the received allowable installation permission granted to the target application program by the current operating system.
In a specific implementation process, the client may determine a system identifier of a current operating system before updating the target application program, and execute installation of the target application program according to a received permission for installation granted to the target application program by the current operating system when a numerical value corresponding to the system identifier is greater than a preset system authorization identifier value, where the permission for installation is not specifically limited in this embodiment of the present specification and may be set according to actual needs.
For example, if the android system platform needs to authorize the system identifier to be greater than or equal to 8.0, the authority of the app to install unknown sources and install in the app needs to be granted, and then the next operation can be normally executed. It will be appreciated that both "install unknown sources" and "install within application" may be permitted installation permissions triggered based on user entered instructions. In order to better protect the privacy of a user and the security of an operating system in the process of upgrading the system, corresponding authority management is set in the updated operating system, in the embodiment of the specification, the system identifier of the current operating system is judged before the application program is installed, and the installation of the target application program is executed after the permission of installation input by the user is obtained, so that the security of the operating system is guaranteed, and the good feeling of the user is improved.
On the basis of the foregoing embodiment, in an embodiment of this specification, the application update installation package corresponds to an application identifier, and the application update installation package corresponds to an application identifier, where the application identifier includes: a tenant identification;
the executing the update of the target application program according to the received application update installation package returned by the server further comprises:
acquiring an application identifier in the application update installation package;
verifying whether the tenant identification of the application identification in the application update installation package is matched with the current tenant identification;
when the tenant identification of the application identification in the application updating installation package is matched with the current tenant identification, executing the updating of the target application program according to the application updating installation package;
or the like, or, alternatively,
verifying whether the application identifier in the application update installation package is matched with a target application identifier;
and when the application identifier in the application updating installation package is matched with the target application identifier, executing the updating of the target application program according to the application updating installation package.
Since the verification mode of the client to the tenant identity and/or the application identity is the same as the server-side principle and technical effect, the details are not repeated.
On the other hand, an embodiment of the present specification provides an application program updating apparatus in a multi-tenant scenario, and fig. 7 is a schematic structural diagram of an application updating apparatus in a multi-tenant scenario provided in an embodiment of the present invention, as shown in fig. 7, including:
an update request receiving module 11 configured to execute an update request of a target application sent by a receiving client, where the update request includes: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
a target download path obtaining module 12 configured to obtain a target download path of the target application program from an application program database according to a current tenant identifier in the target application identifiers; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are obtained from a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program;
a comparison module 13 configured to perform comparison between the target application level identifier and the application level identifier corresponding to the target download path;
a returning module 14, configured to execute returning the target download path to the client if the target application level identifier is different from the application level identifier corresponding to the target download path.
In another aspect, an embodiment of the present specification provides an application program updating apparatus in a multi-tenant scenario, and fig. 8 is a schematic structural diagram of an application updating apparatus in another multi-tenant scenario provided in the embodiment of the present invention, as shown in fig. 8, including:
an update request sending module 21 configured to execute sending of an update request of a target application to a server, the update request including: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program; enabling the server to obtain a target downloading path of the target application program from an application program database according to a current tenant identification in the target application identification, and returning the target downloading path when the target application level identification is different from the application level identification corresponding to the target downloading path; the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are obtained from a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, and the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program;
a target download path receiving module 22 configured to execute receiving the target download path returned by the server;
an installation request sending module 23 configured to execute sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request;
and the installation module 24 is configured to execute the update of the target application program according to the received application update installation package returned by the server.
In another aspect, an embodiment of the present specification provides an electronic device for updating an application program in a multi-tenant scenario, and fig. 9 is a schematic structural diagram of an electronic device for updating an application program in a multi-tenant scenario, where as shown in fig. 9, the device includes a processor and a memory, where at least one instruction or at least one program is stored in the memory, and the at least one instruction or the at least one program is loaded and executed by the processor to implement the method for updating an application program in a multi-tenant scenario as described in any one of the above.
In another aspect, the present specification provides a computer-readable storage medium, in which at least one instruction or at least one program is stored, and the at least one instruction or the at least one program is loaded and executed by a processor to implement the application program updating method in the multi-tenant scenario.
Since the application updating apparatus, the computer readable storage medium, and the application updating device in the multi-tenant scenario have the same technical effects as the application updating method in the multi-tenant scenario, further description is omitted here.
It should be noted that, in the present specification, the embodiments are all described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other. The implementation principle and the generated technical effect of the testing method provided by the embodiment of the invention are the same as those of the system embodiment, and for the sake of brief description, the corresponding contents in the system embodiment can be referred to where the method embodiment is not mentioned.
In the several embodiments provided in the present application, it should be understood that the disclosed system and method may be implemented in other ways. The apparatus embodiments described above are merely illustrative, and for example, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present invention. 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 above functions, if implemented in the form of software functional units and sold or used as a separate product, may be stored in a computer-readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
Finally, it should be noted that: the above-mentioned embodiments are only specific embodiments of the present invention, which are used for illustrating the technical solutions of the present invention and not for limiting the same, and the protection scope of the present invention is not limited thereto, although the present invention is described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: any person skilled in the art can modify or easily conceive the technical solutions described in the foregoing embodiments or equivalent substitutes for some technical features within the technical scope of the present disclosure; such modifications, changes or substitutions do not depart from the spirit and scope of the embodiments of the present invention, and they should be construed as being included therein. Therefore, the protection scope of the present invention shall be subject to the protection scope of the above claims.

Claims (16)

1. An application program updating method under a multi-tenant scene is characterized by comprising the following steps:
the method comprises the steps that a client sends an update request of a target application program to a server, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program; the server stores an application program database, and the application program database stores application update installation packages of a plurality of sub application programs corresponding to basic application programs; wherein, the application updating installation package in the application program database is constructed by the following method: receiving an installation package generation instruction corresponding to the sub application program; inquiring a common configuration file of an application development project of a basic application program corresponding to each sub-application program; loading the common configuration file according to the installation package generation instruction to assemble resource information matched with the functional parameters of each application program and generate application update installation packages corresponding to at least two differentiated functional parameters of the application programs; configuring a corresponding downloading path for each application updating installation package; the application development projects are program projects for developing target application programs, each application development project has a unique corresponding common configuration file, at least two differentiated application program functional parameters of a basic application program are configured in the common configuration files, the target application identification is a unique identification allowing the application program to be installed by a client, and differentiated application updating installation packages can be simultaneously installed on the same client;
after receiving an update request sent by the client, the server acquires a target download path of the target application program from the application program database according to a current tenant identification in the target application identification; each application updating installation package in the application program database corresponds to a downloading path, address identifiers corresponding to designated sub application programs are the same and tenant identifiers are different, the address identifiers are determined according to a common configuration file corresponding to a basic application program, application program function parameters of the designated application updating installation packages are configured based on tenant use requirements of the corresponding tenant identifiers, the designated sub application programs are different sub application programs corresponding to the same basic application program, the designated application updating installation packages are application updating installation packages of different sub application programs corresponding to the same basic application program, and the designated sub application programs are developed based on the same application development project;
after the server acquires the target download path, comparing a target application level identifier in the update request with an application level identifier corresponding to the target download path, and if the target application level identifier is different from the application level identifier corresponding to the target download path, returning the target download path to the client;
and the client downloads the application updating installation package corresponding to the target application program from the server according to the received target downloading path, and executes the downloaded application updating installation package to update the target application program.
2. An application program updating method under a multi-tenant scene is characterized by comprising the following steps:
receiving an update request of a target application program sent by a client, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
acquiring a target download path of the target application program from an application program database according to the current tenant identification in the target application identification; wherein, the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are determined according to a common configuration file corresponding to the basic application program, the application program function parameters of the designated application update installation package are configured based on the tenant use requirement of the corresponding tenant identifier, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, the designated application update installation package is an application update installation package of different sub application programs corresponding to the same basic application program, the designated sub application programs are developed based on the same application development project, and the application development project is a program project for developing a target application, each application development project has a unique corresponding common configuration file, and at least two differentiated application program functional parameters of a basic application program are configured in the common configuration file;
comparing the target application level identification with the application level identification corresponding to the target download path;
if the target application level identification is different from the application level identification corresponding to the target download path, returning the target download path to the client;
before receiving an update request of a target application program sent by a client, the method for constructing the application update installation package in the application program database comprises the following steps:
receiving an installation package generation instruction corresponding to a sub application program corresponding to a basic application program;
inquiring a common configuration file of an application development project of a basic application program corresponding to each sub-application program;
loading the common configuration file according to the installation package generation instruction to assemble resource information matched with the functional parameters of each application program, and generating application update installation packages corresponding to at least two differentiated application program functional parameters respectively, wherein the target application identifier is a unique identifier allowing the application program to be installed by a client, and the differentiated application update installation packages can be installed on the same client at the same time;
and configuring a corresponding downloading path for each application updating installation package.
3. The method for updating an application program in a multi-tenant scenario according to claim 2, wherein the update request further includes: an authorization identifier; the acquiring a target download path of the target application program from an application program database according to the current tenant identification in the target application identification comprises:
calling an application program connection interface according to the current address identifier in the target application identifier;
inquiring whether an authorization identifier to be verified which is the same as the authorization identifier is stored in the application program database or not through the application program connection interface, wherein each application updating installation package in the application program database also corresponds to the authorization identifier to be verified;
and when the authorization identifier to be verified which is the same as the authorization identifier is stored in the application program database, acquiring a target download path of the target application program from the application program database according to the current tenant identifier in the target application identifier.
4. The method for updating an application program in a multi-tenant scenario according to claim 2, further comprising:
receiving an installation request sent by the client based on the target download path;
and returning the corresponding application update installation package to the client based on the installation request, so that the client executes the update of the target application program corresponding to the update request.
5. The method according to claim 2, wherein the loading the common configuration file according to the installation package generation instruction to assemble the resource information matching the functional parameters of each application program to generate the application update installation package corresponding to each of the at least two differentiated functional parameters of the application program comprises:
loading a common configuration file according to the installation package generation instruction so as to load each application program function parameter in the common configuration file; the application program functional parameters comprise interface layout paths;
in the process of loading the application program functional parameters, loading a layout file corresponding to an interface layout path of the application program functional parameters, and assembling interface resources configured by the application program functional parameters according to the layout file to generate an application update installation package corresponding to the application program functional parameters; when at least one of the layout files and the interface resources of any two application program functional parameters is different, the correspondingly generated application update installation package is used for installing the target application program with the differentiated interface.
6. The method for updating an application program in a multi-tenant scenario according to claim 2, wherein the receiving an installation package generation instruction corresponding to a sub-application program corresponding to a base application program previously comprises:
acquiring differentiated use requirements corresponding to at least two tenants of a basic application program;
creating a common configuration file corresponding to an application development project of a basic application program;
and in the common configuration file, according to the use requirements corresponding to each tenant, the differentiated application program function parameters corresponding to each tenant are partitioned and expanded.
7. The method for updating an application program in a multi-tenant scenario according to claim 2, wherein the receiving an installation package generation instruction corresponding to a sub-application program corresponding to a base application program previously comprises:
according to the use requirement of a new tenant on a basic application program, adding partition configuration and filling corresponding differentiated application program function parameters in a common configuration file corresponding to the basic application program.
8. The method for updating an application program in a multi-tenant scenario according to claim 2, wherein the receiving an installation package generation instruction corresponding to a sub-application program corresponding to a base application program previously comprises:
and if the current tenant changes the use requirement of the basic application program, modifying the application program function parameters corresponding to the current tenant in the public configuration file corresponding to the basic application program.
9. An application program updating method under a multi-tenant scene is characterized by comprising the following steps:
sending an update request of a target application program to a server, wherein the update request comprises: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
receiving a target downloading path which is returned by the server when the target application level identification is different from the application level identification corresponding to the target downloading path after the server acquires the target downloading path of the target application program from an application program database according to the current tenant identification in the target application identification; the application program updating method comprises the steps that application updating installation packages of a plurality of sub application programs corresponding to basic application programs are stored in an application program database, each application updating installation package in the application program database corresponds to a downloading path configured by a server, address identifiers corresponding to the specified sub application programs are the same and different, the address identifiers are determined according to a public configuration file corresponding to the basic application programs, application program function parameters of the specified application updating installation packages are configured based on tenant use requirements of the corresponding tenant identifiers, wherein the specified sub application programs are different sub application programs corresponding to the same basic application program, and the specified application updating installation packages are application updating installation packages of different sub application programs corresponding to the same basic application program; the designated sub-application program is developed based on the same application development project, the application development project is a program project for developing target application, and each application development project has a unique corresponding public configuration file; configuring at least two differentiated application program functional parameters of a basic application program in a common configuration file, so that a server generates a sub-application installation package corresponding to each of the at least two differentiated application program functional parameters based on the common configuration file; the target application identification is the only identification which allows the application program to be installed by the client, and the differentiated application updating installation package can be simultaneously installed on the same client;
sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request;
and executing the update of the target application program according to the received application update installation package returned by the server.
10. The method for updating an application program in a multi-tenant scenario according to claim 9, wherein the sending an update request of a target application program to a server includes:
sending an update request of a target application program to the server at every interval of preset time;
or sending an update request of the target application program to the server based on an update instruction input by a user;
or sending an update request of the target application program to the server when the target application program is unavailable;
or when receiving a version update prompt sent by the server, sending an update request of a target application program to the server;
or when the target application program runs to a preset running node, sending an update request of the target application program to the server.
11. The method for updating an application program in a multi-tenant scenario according to claim 9, wherein the executing the update of the target application program according to the received application update installation package returned by the server includes:
acquiring a system identifier of a current operating system;
judging whether the numerical value corresponding to the system identifier is larger than a preset system installation identifier value or not;
when the value corresponding to the system identifier is larger than a preset system installation identifier value, calling a first application program installation interface to analyze an application update installation package returned by the server to execute the update of the target application program;
and when the numerical value corresponding to the system identifier is not greater than the preset system installation identifier value, calling a second application program installation interface to analyze the application update installation package returned by the server to execute the update of the target application program.
12. The method for updating an application program in a multi-tenant scenario according to claim 9, wherein the executing the update of the target application program according to the received application update installation package returned by the server includes:
acquiring a system identifier of a current operating system;
judging whether the value corresponding to the system identifier is larger than a preset system authorization identifier value or not;
and when the numerical value corresponding to the system identifier is larger than the preset system authorization identifier value, executing the installation of the target application program according to the received allowable installation permission granted to the target application program by the current operating system.
13. The method for updating an application program in a multi-tenant scenario according to claim 9, wherein the application update installation package corresponds to an application identifier, and the application identifier includes: a tenant identification;
the executing the update of the target application program according to the received application update installation package returned by the server further comprises:
acquiring an application identifier in the application update installation package;
verifying whether the tenant identification of the application identification in the application update installation package is matched with the current tenant identification;
when the tenant identification of the application identification in the application updating installation package is matched with the current tenant identification, executing the updating of the target application program according to the application updating installation package;
or the like, or, alternatively,
verifying whether the application identifier in the application update installation package is matched with a target application identifier;
and when the application identifier in the application updating installation package is matched with the target application identifier, executing the updating of the target application program according to the application updating installation package.
14. An apparatus for updating an application program in a multi-tenant scenario, comprising:
an update request receiving module configured to execute an update request of a target application sent by a receiving client, where the update request includes: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program;
the target download path acquisition module is configured to acquire a target download path of the target application program from an application program database according to the current tenant identification in the target application identification; wherein, the application program database stores application update installation packages of a plurality of sub application programs corresponding to a basic application program, each application update installation package in the application program database corresponds to a download path, the address identifiers corresponding to the designated sub application programs are the same and different, the address identifiers are obtained from a common configuration file corresponding to the basic application program, and the application program function parameters of the designated application update installation packages are configured based on the tenant use requirement of the corresponding tenant identifiers, wherein the designated sub application programs are different sub application programs corresponding to the same basic application program, the designated application update installation packages are application update installation packages of different sub application programs corresponding to the same basic application program, the designated sub application programs are developed based on the same application development project, and the application development project is a program project for developing a target application, each application development project has a unique corresponding common configuration file, and at least two differentiated application program functional parameters of a basic application program are configured in the common configuration file;
a comparison module configured to perform a comparison of the target application level identifier with the application level identifier corresponding to the target download path;
a return module configured to return the target download path to the client if the target application level identifier is different from the application level identifier corresponding to the target download path;
an application update installation package build module configured to: receiving an installation package generation instruction corresponding to a sub application program corresponding to a basic application program; inquiring a common configuration file of an application development project of a basic application program corresponding to each sub-application program; loading the common configuration file according to the installation package generation instruction to assemble resource information matched with the functional parameters of each application program, generating application update installation packages corresponding to at least two differentiated functional parameters of the application program respectively, and configuring a corresponding download path for each application update installation package; the target application identifier is the only identifier allowing the application program to be installed by the client, and the differentiated application updating installation package can be installed on the same client at the same time.
15. An apparatus for updating an application program in a multi-tenant scenario, comprising:
an update request sending module configured to perform sending an update request of a target application to a server, the update request including: the target application identifier comprises a current address identifier and a current tenant identifier corresponding to the target application program; enabling the server to obtain a target downloading path of the target application program from an application program database according to a current tenant identification in the target application identification, and returning the target downloading path when the target application level identification is different from the application level identification corresponding to the target downloading path; the application program updating method comprises the steps that application updating installation packages of a plurality of sub application programs corresponding to a basic application program are stored in an application program database, each application updating installation package in the application program database corresponds to a downloading path configured by a server, address identifiers corresponding to the appointed sub application programs are the same and different, the address identifiers are obtained from a public configuration file corresponding to the basic application program, and application program function parameters of the appointed application updating installation packages are configured based on tenant use requirements of the corresponding tenant identifiers, wherein the appointed sub application programs are different sub application programs corresponding to the same basic application program, and the appointed application updating installation packages are application updating installation packages of different sub application programs corresponding to the same basic application program; the designated sub-application program is developed based on the same application development project, the application development project is a program project for developing target application, and each application development project has a unique corresponding public configuration file; configuring at least two differentiated application program functional parameters of a basic application program in a common configuration file, so that a server generates a sub-application installation package corresponding to each of the at least two differentiated application program functional parameters based on the common configuration file; the target application identification is the only identification which allows the application program to be installed by the client, and the differentiated application updating installation package can be simultaneously installed on the same client;
a target download path receiving module configured to execute receiving the target download path returned by the server;
an installation request sending module configured to execute sending an installation request to the server based on the target download path, so that the server returns the corresponding application update installation package based on the installation request;
and the installation module is configured to execute the update of the target application program according to the received application update installation package returned by the server.
16. An electronic device for updating an application program in a multi-tenant scenario, comprising:
a memory for storing a computer program;
a processor for implementing the method of application update in a multi-tenant scenario as claimed in any of claims 2-8 or 9-13 when executing the computer program.
CN202110149182.9A 2021-02-03 2021-02-03 Application program updating method and device under multi-tenant scene and electronic equipment Active CN112486547B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110149182.9A CN112486547B (en) 2021-02-03 2021-02-03 Application program updating method and device under multi-tenant scene and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110149182.9A CN112486547B (en) 2021-02-03 2021-02-03 Application program updating method and device under multi-tenant scene and electronic equipment

Publications (2)

Publication Number Publication Date
CN112486547A CN112486547A (en) 2021-03-12
CN112486547B true CN112486547B (en) 2021-05-14

Family

ID=74912177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110149182.9A Active CN112486547B (en) 2021-02-03 2021-02-03 Application program updating method and device under multi-tenant scene and electronic equipment

Country Status (1)

Country Link
CN (1) CN112486547B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113342765A (en) * 2021-06-22 2021-09-03 山东浪潮通软信息科技有限公司 Service unit updating method, system and computer equipment
CN113379507A (en) * 2021-06-30 2021-09-10 特赞(上海)信息科技有限公司 Customization method and device suitable for enterprise-level multi-tenant product and electronic equipment
CN113407227A (en) * 2021-07-02 2021-09-17 携程旅游网络技术(上海)有限公司 Program management method and device, equipment and medium
CN114153858B (en) * 2021-11-26 2024-07-12 泰康保险集团股份有限公司 Method and device for automatically updating tenant under MySQL table space
CN114385192A (en) * 2022-01-18 2022-04-22 北京字节跳动网络技术有限公司 Application deployment method and device, computer equipment and storage medium
CN114615318B (en) * 2022-01-24 2023-04-28 阿里云计算有限公司 Data processing method and device
CN114692093B (en) * 2022-05-27 2022-10-25 荣耀终端有限公司 Application program installation method and electronic equipment
CN116610345B (en) * 2023-07-21 2023-10-20 上海柯林布瑞信息技术有限公司 Application program upgrading method and device based on execution record table
CN117762430B (en) * 2024-02-22 2024-07-09 腾讯科技(深圳)有限公司 Processing method and device based on application program, computer equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107301041A (en) * 2017-05-27 2017-10-27 福州汇思博信息技术有限公司 A kind of method and system of custom-built system function
WO2020165771A1 (en) * 2019-02-12 2020-08-20 Open Text Corporation Methods and systems for packaging and deployment of applications in a multitenant platform
CN111984279A (en) * 2020-09-03 2020-11-24 深圳创维-Rgb电子有限公司 Application software upgrading method, system and storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107301041A (en) * 2017-05-27 2017-10-27 福州汇思博信息技术有限公司 A kind of method and system of custom-built system function
WO2020165771A1 (en) * 2019-02-12 2020-08-20 Open Text Corporation Methods and systems for packaging and deployment of applications in a multitenant platform
CN111984279A (en) * 2020-09-03 2020-11-24 深圳创维-Rgb电子有限公司 Application software upgrading method, system and storage medium

Also Published As

Publication number Publication date
CN112486547A (en) 2021-03-12

Similar Documents

Publication Publication Date Title
CN112486547B (en) Application program updating method and device under multi-tenant scene and electronic equipment
US10452373B2 (en) System and method for service import/export in a cloud platform environment
US20140109072A1 (en) Application wrapping for application management framework
US11237822B2 (en) Intelligent discovery and application of API changes for application migration
US20150319252A1 (en) Application customization
US20170192773A1 (en) Mobile applications
CN111897623B (en) Cluster management method, device, equipment and storage medium
CN111399840B (en) Module development method and device
US10296599B2 (en) Sharing resources among remote repositories utilizing a lock file in a shared file system or a node graph in a peer-to-peer system
US10579354B2 (en) Method and system for rapid deployment and execution of customized functionality across multiple distinct platforms
Kirschnick et al. Towards an architecture for deploying elastic services in the cloud
US20200244772A1 (en) Method and system for cloud application and service integration using pattern-based discovery
CN115658085A (en) Deployment method of cloud native application
CN110806935B (en) Application program construction method, device and system
CN109117152B (en) Service generation system and method
CN116991713B (en) Method, device, computer equipment and storage medium for executing use cases across environments
CN116029526B (en) Scheduling method, device, equipment and storage medium of experimental resources
CN115878860A (en) Menu generation method, device, server equipment and medium
CN116414407A (en) Method, device, equipment and medium for component installation and data processing
Kulik et al. Extending the formal security analysis of the HUBCAP sandbox
CN114422358A (en) API gateway configuration updating method and equipment
Krishnan et al. Google cloud SQL
CN112650509B (en) Application installation package generation method and device, computer equipment and storage medium
Mardan et al. Getting Node. js Apps Production Ready
CN116909584B (en) Deployment method, device, equipment and storage medium of space-time big data engine

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
GR01 Patent grant
GR01 Patent grant