CN117955962A - Method, device, equipment and storage medium for releasing client application - Google Patents
Method, device, equipment and storage medium for releasing client application Download PDFInfo
- Publication number
- CN117955962A CN117955962A CN202211288920.9A CN202211288920A CN117955962A CN 117955962 A CN117955962 A CN 117955962A CN 202211288920 A CN202211288920 A CN 202211288920A CN 117955962 A CN117955962 A CN 117955962A
- Authority
- CN
- China
- Prior art keywords
- application
- data
- client
- server
- upgraded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000003860 storage Methods 0.000 title claims abstract description 43
- 230000006835 compression Effects 0.000 claims abstract description 74
- 238000007906 compression Methods 0.000 claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000013075 data extraction Methods 0.000 claims abstract description 12
- 238000012795 verification Methods 0.000 claims description 90
- 230000006870 function Effects 0.000 claims description 76
- 238000009434 installation Methods 0.000 claims description 51
- 230000002159 abnormal effect Effects 0.000 claims description 43
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 230000014509 gene expression Effects 0.000 claims description 9
- 230000003139 buffering effect Effects 0.000 claims description 8
- 238000012937 correction Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 17
- 239000000284 extract Substances 0.000 abstract description 3
- 238000007726 management method Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 238000013461 design Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000006399 behavior Effects 0.000 description 6
- 230000000750 progressive effect Effects 0.000 description 5
- 230000005856 abnormality Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
The embodiment of the application discloses a method, a device, equipment and a storage medium for releasing a client application, and the related embodiment can be applied to various scenes such as cloud technology and the like for realizing automatic application release and update. The method comprises the following steps: the method comprises the steps that a server creates an application release order corresponding to an application to be upgraded based on application package data, issues the application release order to a concurrent component model object, extracts attribute data corresponding to the attribute name from the application release order based on the attribute name in the concurrent component model object, matches the attribute data to the attribute of the concurrent component model object, pushes the attribute data to a client through a server socket port according to the concurrent component model object, obtains the attribute data corresponding to the application to be upgraded, performs data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data, analyzes the file compression data, and installs the file compression data to a formal directory of the client to update the application to be upgraded.
Description
Technical Field
The embodiment of the application relates to the technical field of computer networks, in particular to a method, a device, equipment and a storage medium for releasing a client application.
Background
With the continuous and deep development of the mobile internet, mobile applications have become a necessity for the daily life of internet users. The functions of the mobile application products are iterated rapidly, the application developer optimizes the mobile application by continuously repairing and perfecting the application functions or developing new functions and puts the mobile application on line so as to better meet the requirements of users and improve the experience of the users.
After the mobile application is released, a user can only update the mobile application App through an application store or a mobile phone system, and the user needs to manually install the mobile application App, and when the existing application is released, a plurality of certificates and description files are generally required to be configured first, then the mobile application is released through a plurality of steps of synchronization, configuration, verification and the like of the application store or the mobile phone system, the application release is seriously dependent on verification time, after the total release of the functions, the verification is possibly not passed, for example, an App has a special activity corresponding to the holiday, and is submitted after the function development is finished, but after the holiday is finished, the verification is passed, so that the newly added functions cannot be put on shelf in time, the application release timeliness and the execution rate are not high, the user cannot timely experience the special or fresh application functions, and the experience of the user is poor.
Disclosure of Invention
The embodiment of the application provides a method, a device, equipment and a storage medium for releasing a client application, which are used for solving the problems of poor timeliness and low execution rate of the traditional client application release.
An aspect of the present application provides a method for publishing a client application, including:
when the server acquires application package data corresponding to the application to be upgraded, the server creates an application release order corresponding to the application to be upgraded based on the application package data;
issuing the application release order to concurrent component model objects, wherein one concurrent component model object can hold one application release order;
Based on the attribute names in the concurrent component model object, extracting attribute data corresponding to the attribute names from the application release order, and matching the attribute data to the attribute of the concurrent component model object;
pushing attribute data to a client corresponding to the target object through a server socket port according to the concurrent component model object;
When the client receives an application issuing instruction issued by the server, the client acquires attribute data corresponding to the application to be upgraded according to the application issuing instruction;
Carrying out data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data;
and analyzing the file compression data and installing the file compression data into a formal directory of the client so as to update the application to be upgraded.
Another aspect of the embodiment of the present application provides an apparatus for publishing a client application, including:
the system comprises an acquisition unit, a server and a control unit, wherein the acquisition unit is used for creating an application release order corresponding to an application to be upgraded based on application package data when the server acquires the application package data corresponding to the application to be upgraded;
The processing unit is used for issuing the application release order to the concurrent component model objects, wherein one concurrent component model object can hold one application release order;
the processing unit is also used for extracting attribute data corresponding to the attribute names from the application release order based on the attribute names in the concurrent component model objects and matching the attribute data to the attributes of the concurrent component model objects;
the sending unit is used for pushing the attribute data to the client corresponding to the target object through the server socket port according to the concurrent component model object;
The acquisition unit is also used for acquiring attribute data corresponding to the application to be upgraded according to the application issuing instruction when the client receives the application issuing instruction issued by the server;
The processing unit is also used for carrying out data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data;
And the processing unit is also used for analyzing the file compression data and installing the file compression data into a formal catalog of the client so as to update the application to be upgraded.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the obtaining unit may specifically be configured to:
When the server acquires application package data corresponding to the application to be upgraded, performing field content verification operation on the field information according to a service verification rule to obtain a verification result, wherein the service verification rule comprises a regular expression rule and/or a character string matching rule;
if the verification result is that the data is wrong, sending a data correction prompt;
If the verification result is data without errors, the server creates an application release order corresponding to the application to be upgraded based on the application package data.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the sending unit may specifically be configured to:
according to the application pushing conditions, M target objects are determined from the mass application objects, wherein M is an integer greater than or equal to 1;
If M is smaller than or equal to the number of the created concurrent component model objects, pushing M attribute data to clients corresponding to M target objects through M concurrent component model objects based on a server socket port;
If M is greater than the number of the created concurrent component model objects, selecting N idle concurrent component model objects from the concurrent component model objects during each pushing, and pushing N attribute data to the clients corresponding to the N target objects through the N idle concurrent component model objects based on the server socket port until the M attribute data are pushed to the clients corresponding to the M target objects, wherein N is an integer greater than 0 and less than M.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the sending unit may specifically be configured to:
if the application pushing condition is a client version number interval, M target objects corresponding to the client version number interval are determined from the massive application objects;
If the application pushing condition is a product version number interval, M target objects corresponding to the product version number interval are determined from the mass application objects;
If the application pushing condition is a combination of the client version number interval and the product version number interval, M target objects corresponding to the client version number interval and the product version number interval are determined from the massive application objects.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the processing unit may specifically be configured to:
the client performs security verification on the file compressed data to obtain a security verification result;
If the security check result is that the check is abnormal, the file compression data is analyzed and installed to the formal catalogue of the client so as to update the application to be upgraded.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the processing unit may specifically be configured to:
creating a main installation component according to the command mode;
carrying out security check on the file compressed data according to the hash operation to obtain a security check result;
the processing unit may be specifically configured to:
If the security check result is that the check is abnormal, analyzing the file compression data to a temporary directory to obtain an application installation file;
and authenticating the application installation file, and if the authentication result is that the authentication is successful, transferring the application installation file from the temporary directory to the formal directory for installation so as to update the application to be upgraded.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the obtaining unit may specifically be configured to:
Creating a cloud instruction processing center, and creating a client socket port connected with a server in the cloud instruction processing center according to a socket function;
the method comprises the steps that connection is carried out on the basis of a client socket port and a server socket port of a server, and an application issuing instruction issued by the server is received through the client socket port;
And receiving attribute data corresponding to the application to be upgraded according to the access address of the application issuing instruction.
In one possible design, in one implementation of another aspect of the embodiments of the present application,
The processing unit is also used for obtaining function call state data through the updated function call of the application to be upgraded, which is detected by the cloud instruction processing center in real time;
And the processing unit is also used for sending the abnormal parameters or the error callback information to the server through the socket port of the client side as callback data corresponding to the updated application to be upgraded if the abnormal parameters or the error callback information exists in the function call state data.
In one possible design, in one implementation of another aspect of the embodiments of the present application,
The acquisition unit is also used for receiving callback data of the updated application to be upgraded returned by each target object according to the socket port of the server;
And the processing unit is also used for pushing the attribute data to a target object corresponding to the callback data with the abnormal parameters or the error callback information if the callback data has the abnormal parameters or the error callback information.
In one possible design, in one implementation of another aspect of the embodiments of the present application,
The processing unit is also used for creating a control console module according to the concurrent component model by the server and arranging the control console module in the server, wherein the control console module comprises a concurrent component model object;
the processing unit is further used for creating a server socket port in the control console module according to the socket function.
In one possible design, in one implementation of another aspect of the embodiments of the present application, the processing unit may specifically be configured to:
performing format conversion operation on the attribute data to obtain standard data;
Extracting stream buffering, stream size and data holding from standard data according to attribute names;
and performing compression operation on stream buffering, stream size and data holding to obtain file compression data.
Another aspect of the present application provides a computer device comprising: a memory, a processor, and a bus system;
Wherein the memory is used for storing programs;
the processor is used for executing the program in the memory to realize the method of the aspects;
The bus system is used to connect the memory and the processor to communicate the memory and the processor.
Another aspect of the application provides a computer readable storage medium having instructions stored therein which, when run on a computer, cause the computer to perform the methods of the above aspects.
From the above technical solution, the embodiment of the present application has the following beneficial effects:
Creating an application release order corresponding to the application to be upgraded based on the application package data by a server, issuing the application release order to a concurrent component model object, extracting attribute data corresponding to the attribute name from the application release order based on the attribute name in the concurrent component model object, matching the attribute data to the attribute of the concurrent component model object, pushing the attribute data to a client through a socket port of the server according to the concurrent component model object, acquiring the attribute data corresponding to the application to be upgraded by the client, performing data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data, analyzing the file compression data, and installing the file compression data to a formal directory of the client to update the application to be upgraded. Through the method, the sending-receiving communication relation of cloud instructions can be established between the server and the client through the establishment of the server socket port, then the concurrent component model is used for calling a plurality of concurrent component model objects, the established application release order is converted into the attribute data, the attribute data is directly and concurrently pushed to the clients of a plurality of target objects through the server socket port, the client can analyze and install the acquired attribute data to execute the update of the application to be upgraded, the application release package can be downloaded and updated under the condition that a user does not feel the update, the release arrival rate and timeliness of the application release of the client are greatly improved, the user can timely experience special or fresh application functions, and the experience of the user is improved.
Drawings
FIG. 1 is a schematic diagram of an architecture of a data object control system in accordance with an embodiment of the present application;
FIG. 2 is a flow chart of one embodiment of a method of client application publishing in accordance with an embodiment of the application;
FIG. 3 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 4 is a flow chart of another embodiment of a method for client application publication in an embodiment of the present application;
FIG. 5 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 6 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 7 is a flow chart of one embodiment of a method of client application publishing in accordance with an embodiment of the application;
FIG. 8 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 9 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 10 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 11 is a flow chart of another embodiment of a method for client application publication in an embodiment of the present application;
FIG. 12 is a flow chart of another embodiment of a method of client application publication in an embodiment of the present application;
FIG. 13 is a schematic flow diagram of a method for client application publishing in accordance with an embodiment of the application;
FIG. 14 is a schematic diagram of an application package management page of a method for client application publishing in an embodiment of the application;
FIG. 15 is a schematic view of a page of an application publication of a method of client application publication in an embodiment of the present application;
FIG. 16 is a schematic diagram of an embodiment of an apparatus for client application publishing in accordance with an embodiment of the application;
FIG. 17 is a schematic diagram of one embodiment of a computer device in an embodiment of the application.
Detailed Description
The embodiment of the application provides a method, a device, equipment and a storage medium for releasing a client application, which are used for establishing a sending-receiving communication relation between a server and the client through a socket port of a creation server, so that the client can analyze and install acquired attribute data to execute the update of the application to be upgraded, the application release package can be downloaded and upgraded under the condition that a user does not feel a plurality of complex steps such as synchronization, configuration and auditing through an application store or a mobile phone system, the purpose of releasing and updating can be achieved, the arrival rate and timeliness of releasing the client application are greatly improved, the user can experience special or fresh application functions in time, and the experience of the user is improved.
The terms "first," "second," "third," "fourth" and the like in the description and in the claims and drawings, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the application described herein may be implemented, for example, in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "includes" and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed or inherent to such process, method, article, or apparatus.
For ease of understanding, some terms or concepts related to embodiments of the present application are explained first.
1. Socket: socket can be seen as an endpoint in a respective communication connection when two network applications communicate. The method is an API for interprocess communication in a network environment, and the cloud instruction pushing system is realized by utilizing the Socket API.
2. Command design mode: the command pattern (CommandPattern) is a data-driven design pattern, which belongs to the behavioral pattern. The request is wrapped in the object in the form of a command and passed to the object. Finding the appropriate object that can process the command based on the object and passing the command to the corresponding object, which executes the command. The scheme adopts a command mode to package, detect and execute the upgrade instruction.
3. The Actor: the Actor belongs to a concurrent component model, defines the advanced stage of a concurrent programming paradigm in a component mode, and avoids the user from directly contacting with basic concepts such as multithread concurrency or a thread pool. The method utilizes the Actor to send the upgrade data in the console and receive the upgrade data returned by the client.
It will be appreciated that in the specific embodiments of the present application, related data such as application package data, attribute data, etc. are referred to, and when the above embodiments of the present application are applied to specific products or technologies, user permissions or consents need to be obtained, and the collection, use and processing of related data need to comply with relevant laws and regulations and standards of relevant countries and regions.
It is to be appreciated that the method of client application publishing as disclosed herein relates to Cloud technology (Cloud technology), which is further described below. Cloud technology refers to a hosting technology for unifying serial resources such as hardware, software, network and the like in a wide area network or a local area network to realize calculation, storage, processing and sharing of data. The cloud technology is based on the general names of network technology, information technology, integration technology, management platform technology, application technology and the like applied by the cloud computing business mode, can form a resource pool, and is flexible and convenient as required. Cloud computing technology will become an important support. Background services of technical networking systems require a large amount of computing, storage resources, such as video websites, picture-like websites, and more portals. Along with the high development and application of the internet industry, each article possibly has an own identification mark in the future, the identification mark needs to be transmitted to a background system for logic processing, data with different levels can be processed separately, and various industry data needs strong system rear shield support and can be realized only through cloud computing.
Cloud computing (cloudcomputing) is a computing model that distributes computing tasks across a pool of resources made up of a large number of computers, enabling various application systems to acquire computing power, storage space, and information services as needed. The network that provides the resources is referred to as the "cloud". Resources in the cloud are infinitely expandable in the sense of users, and can be acquired at any time, used as needed, expanded at any time and paid for use as needed.
As a basic capability provider of cloud computing, a cloud computing resource pool (cloud platform for short, generally referred to as IaaS (InfrastructureasaService, infrastructure as a service) platform) is established, in which multiple types of virtual resources are deployed for external clients to select for use.
According to the logic function division, a PaaS (platform format service) layer can be deployed on an IaaS (InfrastructureasaService, infrastructure service) layer, and a SaaS (Software asaService, software service) layer can be deployed above the PaaS layer, or the SaaS can be directly deployed on the IaaS. PaaS is a platform on which software runs, such as a database, web container, etc. SaaS is a wide variety of transactional software such as web portals, text message mass senders, etc. Generally, saaS and PaaS are upper layers relative to IaaS.
Next, cloud security (CloudSecurity) refers to a generic term for security software, hardware, users, institutions, and security cloud platforms based on cloud computing business model applications. Cloud security fuses emerging technologies and concepts such as parallel processing, grid computing, unknown virus behavior judgment and the like, acquires the latest information of Trojan horse and malicious programs in the Internet through abnormal monitoring of a large number of network clients on software behaviors, sends the latest information to a server for automatic analysis and processing, and distributes solutions of viruses and Trojan horse to each client.
Secondly, cloud storage (cloudstorage) is a new concept which extends and develops in the concept of cloud computing, and a distributed cloud storage system (hereinafter referred to as a storage system for short) refers to a storage system which integrates a large number of storage devices (storage devices are also called storage nodes) of different types in a network to work cooperatively through application software or application interfaces through functions of cluster application, grid technology, distributed storage file systems and the like, and provides data storage and transaction access functions together.
At present, the storage method of the storage system is as follows: when creating logical volumes, each logical volume is allocated a physical storage space, which may be a disk composition of a certain storage device or of several storage devices. The client stores data on a certain logical volume, that is, the data is stored on a file system, the file system divides the data into a plurality of parts, each part is an object, the object not only contains the data but also contains additional information such as a data Identification (ID) and the like, the file system writes each object into a physical storage space of the logical volume, and the file system records storage location information of each object, so that when the client requests to access the data, the file system can enable the client to access the data according to the storage location information of each object.
The process of allocating physical storage space for the logical volume by the storage system specifically includes: physical storage space is divided into stripes in advance according to a set of capacity measures for objects stored on a logical volume (the measures often have a large margin with respect to the capacity of the objects actually to be stored) and redundant array of independent disks (RAID, redundantArrayofIndependentDisk), and a logical volume can be understood as a stripe, whereby physical storage space is allocated for the logical volume.
It should be understood that the method for publishing the client application provided by the application can be applied to various scenes, including but not limited to artificial intelligence, cloud technology, maps, intelligent traffic and the like, and is used for pushing attribute data of an application to be upgraded to a target object through a concurrency model component object so as to finish updating the application to be upgraded on the client, so as to be applied to scenes such as application program repairing application function scenes, application program updating new application function scenes and the like.
In order to solve the above problems, the present application provides a method for publishing a client application, which is applied to a data object control system shown in fig. 1, referring to fig. 1, fig. 1 is a schematic diagram of a structure of a data object control system in an embodiment of the present application, as shown in fig. 1, a server creates an application publishing configuration list corresponding to an application to be upgraded based on application package data, publishes the application publishing configuration list to a concurrent component model object, extracts attribute data corresponding to the attribute name from the application publishing configuration list based on the attribute name in the concurrent component model object, matches the attribute data to an attribute of the concurrent component model object, pushes the attribute data to a client corresponding to a terminal device through a socket port of the server according to the concurrent component model object, obtains the attribute data corresponding to the application to be upgraded, performs data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data, parses the file compression data and installs the file compression data to a directory of the client to update the formal application to be upgraded. Through the method, the sending-receiving communication relation of cloud instructions can be established between the server and the client through the establishment of the server socket port, then the concurrent component model is used for calling a plurality of concurrent component model objects, the established application release order is converted into the attribute data, the attribute data is directly and concurrently pushed to the clients of a plurality of target objects through the server socket port, the client can analyze and install the acquired attribute data to execute the update of the application to be upgraded, the application release package can be downloaded and updated under the condition that a user does not feel the update, the release arrival rate and timeliness of the application release of the client are greatly improved, the user can timely experience special or fresh application functions, and the experience of the user is improved.
It should be understood that only one terminal device is shown in fig. 1, and in an actual scenario, a greater variety of terminal devices may participate in the data processing process, where the terminal devices include, but are not limited to, mobile phones, computers, intelligent voice interaction devices, intelligent home appliances, vehicle terminals, etc., and the specific number and variety are determined by the actual scenario, and the specific number and variety are not limited herein. In addition, one server is shown in fig. 1, but in an actual scenario, there may also be a plurality of servers involved, especially in a scenario of multi-model training interaction, the number of servers depends on the actual scenario, and the present application is not limited thereto.
It should be noted that in this embodiment, the server may be an independent physical server, or may be a server cluster or a distributed system formed by a plurality of physical servers, or may be a cloud server that provides cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, a content distribution network (content deliverynetwork, CDN), and basic cloud computing services such as big data and an artificial intelligence platform. The terminal device and the server may be directly or indirectly connected through wired or wireless communication, and the terminal device and the server may be connected to form a blockchain network, which is not limited herein.
With reference to the foregoing description, a method for publishing a client application applied to a server in the present application will be described below, referring to fig. 2, where an embodiment of a method for publishing a client application in an embodiment of the present application includes:
in step S101, when the server obtains application package data corresponding to an application to be upgraded, the server creates an application release order corresponding to the application to be upgraded based on the application package data;
In the embodiment of the application, when the new version of the application program is available for the terminal to upgrade, the application package data corresponding to the application to be upgraded can be uploaded to the system according to the developer, the system can acquire the application package data corresponding to the application to be upgraded through the server, so that the server can create the application release order corresponding to the application to be upgraded based on the application package data, and the new version of the application program can be better pushed to the terminal of a proper group through the concurrent component model object after the application release order is released.
The application package data includes default field information and custom information, where the default field information may be an application package identifier, an application package name, an application package version number, an application package build number, an application package creation time, etc., and the custom information may be a download link of a source file, a file md5 value, a remark, a file size, etc., which should be understood that the application package data is only illustrated for convenience and is not limited herein. The application release order is upgrade data corresponding to a new version of an application program generated based on application package data, and specifically may include upgrade data such as a download link of a source file, a file md5 value, a remark, a file size, a version policy, an expiration date, and an upgrade mode.
Specifically, as shown in fig. 13, when a new version of an application program is available for upgrading by a terminal, for example, there is a chat application program with a new version of a holiday campaign advertisement push function extended, application package data corresponding to an application to be upgraded (for example, a chat application data package with a new version of a holiday campaign advertisement push function extended) may be uploaded to a system according to a developer, a user operation page for uploading the application package data may be built in the system, that is, an application package management page (for example, an application package management page illustrated in fig. 14), specifically, an application package management page may be built based on a progressive framework, or may be built by other frameworks, without specific limitation, then the application package management page may be displayed to a developer through a user terminal for uploading the application package data by the application package management page, so that operations such as adding, deleting or modifying an application package may be performed in the application package management, for example, as shown in fig. 14, the application package management page includes a file uploading control, a field information input control, where field information may include an ID package number, an application file name, a build information number, a build information, and the like.
The progressive framework refers to a development framework at the front end, and can be Vue as an example, wherein the Vue is a set of progressive framework for constructing a user interface, is applied from the bottom to the top, and a core library of the Vue can be integrated with a third party library or an existing project and can be applied in a complex single page; the progressive frame may also be a compact frame or an Angular frame, etc., it being understood that the progressive frame is merely illustrative for ease of understanding and is not particularly limited herein.
Among them, the user terminal may be a mobile terminal such as a mobile phone, a smart phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a navigation device, etc., and a fixed terminal such as a digital TV, a desktop computer, etc., it should be understood that the example of the user terminal is only for convenience of understanding and is not particularly limited herein.
Further, as shown in fig. 13, after the application package data is acquired through the application package management page, an application release order (for example, a chat application release order of a new version extended with a holiday campaign advertisement push function) corresponding to the application to be upgraded may be created based on the application package data, for displaying information about a download link (such as http:// xxx. Apk, etc.) of a source file of the new version of the application to be upgraded, a file md5 value (such as eb4d69e1cd6690e476abbf b, etc.), a remark (such as a general POC application release, etc.), a file size (such as 123747697 bytes, etc.), a version policy (such as an original build number, etc.), a validity period (such as 2021.9.30-2021.10.08, etc.), and an upgrade mode (such as a general upgrade, etc.), etc.
In step S102, issuing an application release order to a concurrent component model object, where one concurrent component model object may hold one application release order;
In the embodiment of the application, after the server creates the order, the server can hold the order by concurrently constructing the model object, wherein the concurrent component model object comprises a strategy field for detecting the upgrade, push and release of the current order, and meanwhile, a developer can carry out custom configuration information according to actual situation requirements, so that the flexibility of the order is improved, and generally, the custom information of the order is mainly the custom information of the application package data.
Specifically, after the application release order is created, application release management may be performed by the console module based on the application release order (e.g., a chat application release order with a new version of the holiday campaign advertisement pushing function extended), specifically, an appropriate group, that is, at least one target object, may be screened out from a huge number of group objects, then, based on a principle that one concurrent component model object may hold one application release order, at least one application release order may be issued to at least one concurrent component model object, for example, assuming that the target object is 100 people, 100 application release orders (e.g., a chat application release order with a new version of the holiday campaign advertisement pushing function extended) may be issued to 100 concurrent component model objects, so that the subsequent chat application may be executed through the 100 concurrent component model objects to push the new version of the holiday campaign advertisement pushing function extended to 100 target objects.
In step S103, based on the attribute names in the concurrent component model object, extracting attribute data corresponding to the attribute names from the application release order, and matching the attribute data to the attributes of the concurrent component model object;
In the embodiment of the application, after the application release order is issued to the concurrent component model object to execute the application release task, the attribute data corresponding to the attribute name can be extracted from the application release order based on the attribute name in the concurrent component model object, and the attribute data is matched to the attribute of the concurrent component model object, so that the new version of the application to be upgraded can be better transferred to the concurrent component model object, and the new version of the application program can be better pushed to the terminals of the proper group through the concurrent component model object.
Specifically, when the application release order is issued to the concurrent component model object to execute the application release task, data conversion may be performed based on the concurrent component model object (such as attribute conversion illustrated in fig. 13) to better transfer a new version of the application to be upgraded to the concurrent component model object, specifically, based on an attribute name in the concurrent component model object (such as URL of an update package, version policy, validity period, upgrade mode, push mode and the like illustrated in fig. 15), attribute data corresponding to the attribute name is extracted from the application release order (such as push mode: unrestricted, upgrade mode: normal upgrade and the like illustrated in fig. 15), and the attribute data is matched to an attribute of the concurrent component model object (such as URL of the update package: http://192.144.179.201:30001/xxx apk; version policy: original build number; validity period: 20220329; upgrade mode normal upgrade; and push mode: unrestricted and the like).
In step S104, according to the concurrent component model object, pushing the attribute data to the client corresponding to the target object through the server socket port;
In the embodiment of the application, after the attribute data is matched to the attribute of the concurrent component model object, a new version of the application to be upgraded, which can be transmitted through the concurrent component model object, can be obtained, and then the attribute data can be pushed to the target object through the server socket port based on the concurrent component model object so as to update the application to be upgraded in the client corresponding to the target object.
Specifically, as shown in fig. 13, after attribute data is matched to the attribute of the concurrent component model object, a new version of the application to be upgraded, which can be transmitted through the concurrent component model object, for example, 100 new versions of chat applications with holiday activity advertisement pushing functions extended are obtained through conversion of 100 concurrent component model objects, and then the system can jump to a cloud pushing system based on the concurrent component model object, and the system can push cloud instructions and attribute data (such as 100 new versions) issued by the application to a target object (100 clients) through a server Socket port (such as a Socket channel shown in fig. 13), so that the subsequent target object can parse and install the received and downloaded new versions through the clients, thereby realizing the upgrade of the application to be upgraded.
In step S105, when the client receives an application issue instruction issued by the server, the client obtains attribute data corresponding to the application to be upgraded according to the application issue instruction;
In the embodiment of the application, after the system pushes the attribute data corresponding to the application to be upgraded to the client of the target object through the socket port of the server, when the client receives the application issuing instruction issued by the server, the attribute data corresponding to the application to be upgraded can be acquired according to the application issuing instruction, so that the acquired attribute data can be analyzed and installed subsequently to upgrade the application to be upgraded.
Specifically, before the client receives the application issue instruction issued by the server, the client may first create a cloud instruction processing center InstructionCenter, and create a client socket port connected to the server according to a socket function in the cloud instruction processing center to detect the application issue instruction in real time, and when detecting the application issue instruction issued by the server, may acquire attribute data corresponding to the application to be upgraded (for example, a new version of the chat application with the holiday campaign advertisement pushing function is extended) through the client socket port.
In step S106, performing data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data;
in the embodiment of the application, after the attribute data is acquired, the data extraction and the assembly processing can be performed on the attribute data to acquire the file compression data corresponding to the attribute data, so that the file compression data can be analyzed and installed to the formal catalogue of the client in the follow-up process to smoothly update the application to be upgraded, thereby realizing the automatic release and automatic update of the application.
Specifically, after the client acquires the attribute data (for example, a new version of the chat application with the holiday campaign advertisement push function is expanded), the acquired attribute data may be converted according to a preset format to acquire standard data of a format specification, and data assembly may be performed based on the standard data, specifically, the stream buffer streamBuffer, the stream size streamSize, and the data holder dataHolders may be respectively extracted from the standard data according to the attribute name required for the installation of the data packet, and then compression operation is performed on the stream buffer, the stream size, and the data holder to acquire file compression data.
Further, the security verification is performed on the file compressed data to obtain a security verification result, specifically, the main installation component CHRISTINSTALLER is created according to the command mode, then verification code verification operation is performed on the file compressed data according to hash operation, when verification code verification operation is completed, and when verification is not abnormal, decryption operation is performed on the local compressed package according to the key encryption block algorithm, after decryption operation is completed, multiple directories which are virtual in the formal directory, namely, temporary directories, can be used for analyzing the file compressed data to the temporary directories, so as to obtain an application installation file, and then the application installation file is transferred to the formal directory for downloading and installation, so that the application to be upgraded is updated.
In step S107, the file compression data is parsed and installed to the formal directory of the client to update the application to be upgraded.
In the embodiment of the application, after the file compression data is obtained, the file compression data can be analyzed and installed to the formal catalog of the client so as to smoothly update the application to be upgraded, thereby realizing automatic release and automatic update of the application.
Specifically, after the file compression data is obtained, the file compression data can be parsed and installed into a formal directory of the client, specifically, decryption operation can be performed on the file compression data, after the decryption operation is completed, a plurality of directories which are virtual in the formal directory, namely temporary directories, can be used for storing the parsed data of the file compression data into the temporary directories so as to obtain an application installation file, and then the application installation file is transferred into the formal directory for downloading and installation so as to update the application to be upgraded.
In the embodiment of the application, a method for releasing the client application is provided, a server can be established through a server socket port, a cloud instruction sending-receiving communication relation is established between the server and the client, then a plurality of concurrent component model objects are called through a concurrent component model, a created application release order is converted into attribute data, the attribute data are directly and concurrently pushed to the client of a plurality of target objects through the server socket port, the client can analyze and install the acquired attribute data to execute the update of the application to be upgraded, the application release package can be downloaded and upgraded under the condition that a user does not feel the complex steps of synchronization, configuration, verification and the like of an application store or a mobile phone system are not needed, the purpose of releasing the application release order is achieved, the time of releasing the client application is greatly improved, the user can timely experience the special or fresh application function, and the experience of the user is improved.
Optionally, in another optional embodiment of the method for publishing a client application provided by the embodiment of the present application on the basis of the embodiment corresponding to fig. 2, as shown in fig. 3, the application package data includes field information, and step S101 includes, when the server acquires the application package data corresponding to the application to be upgraded, creating, by the server, an application publishing configuration list corresponding to the application to be upgraded based on the application package data, including:
in step S301, when the server obtains application packet data corresponding to the application to be upgraded, performing field content verification operation on the field information according to a service verification rule to obtain a verification result, where the service verification rule includes a regular expression rule and/or a character string matching rule;
in the embodiment of the application, when the server acquires the application package data corresponding to the application to be upgraded, the field information can be subjected to field content verification operation according to the service verification rule so as to ensure that the acquired data is completely consistent with the uploaded application package data, so that the accuracy of the application package data corresponding to the application to be upgraded is maintained, and the accuracy of automatic release of the application can be improved to a certain extent.
The service check rule is used for checking whether field information has errors or abnormal data or not so as to maintain the accuracy of the application packet data. The business validation rules include regular expression rules and/or string matching rules, and may also include other rules, without specific limitation herein. Among them, regular expression rules, also called regular expression (often abbreviated as regex, regex p, or RE in code), are a text pattern including common characters (e.g., letters between a and z) and special characters (called "meta characters"). Regular expressions typically use a single string to describe, match a series of strings that match a certain syntactic rule, and are typically used to retrieve, replace, text that conforms to a certain pattern (rule). String matching rules refer to a string being a sequence of characters defined on a finite alphabet Σ, for example ATCTAGAGA is a string on the alphabet Σ= { a, C, G, T }. String matching is typically performed by searching a large string T for all occurrences of a string P. Where T is called text, P is called pattern, and T and P are both defined on the same alphabet Sigma.
Specifically, when the server obtains the application package data corresponding to the application to be upgraded, in order to smoothly create the application release order corresponding to the application to be upgraded based on the application data package, so as to ensure the accuracy of the new version of the application to be upgraded, the field information may be first matched with the field content according to a service verification rule, such as a regular expression rule and/or a character string matching rule, so as to obtain a corresponding verification result (such as data verification illustrated in fig. 12) according to the matching situation, and then, based on the verification result, whether the obtained application package data is accurate and whether the application package is successfully created may be determined.
In step S302, if the verification result is that the data is incorrect, a data correction prompt is sent;
Specifically, if the verification result shows that the error data occurs, it indicates that the field information in the uploaded application data packet is unavailable, if the subsequent application publishing operation is continued, the subsequent client application cannot be normally installed, and the server needs to be returned to correct the application publishing configuration list again, so that the workload of the server and the client application publishing can be increased in a phase changing manner, and the client application publishing efficiency is reduced. Therefore, if the verification result shows error data, a data correction prompt can be sent, and operations such as re-uploading or data correction are performed on the application data packet, so that the operation that the subsequent client application needs to be returned to be reissued when the field information is mistakenly installed is effectively avoided, and the accuracy of the client application publishing is effectively maintained.
In step S303, if the verification result is that the data is correct, the server creates an application release order corresponding to the application to be upgraded based on the application package data.
Specifically, after the verification result is obtained, whether the obtained application package data is accurate and whether the application package is successfully created can be determined based on the verification result, that is, if the verification result does not have error data, it is indicated that the field information in the uploaded application data package is available, so the step of creating the application release order corresponding to the application to be upgraded based on the application package data can be continuously performed, so as to obtain the application release order as illustrated in fig. 14.
Optionally, on the basis of the embodiment corresponding to fig. 2, in another optional embodiment of the method for publishing a client application provided by the embodiment of the present application, as shown in fig. 4, step S104 includes pushing, according to a concurrent component model object, attribute data to a client corresponding to a target object through a server socket port, including:
in step S401, M target objects are determined from the massive application objects according to the application pushing conditions, where M is an integer greater than or equal to 1;
in step S402, if M is less than or equal to the number of the created concurrent component model objects, pushing M attribute data to clients corresponding to M target objects through M concurrent component model objects based on the server socket port;
in step S403, if M is greater than the number of created concurrent component model objects, during each pushing, N idle concurrent component model objects are selected from the concurrent component model objects, and N attribute data are pushed to the clients corresponding to N target objects through the N idle concurrent component model objects based on the server socket port until M attribute data are pushed to the clients corresponding to M target objects, where N is an integer greater than 0 and less than M.
In the embodiment of the application, in order to better push a new version of an application to be upgraded, so as to avoid the situation of user complaints or resource waste and the like caused by unsuitable pushing, the embodiment can firstly determine M target objects from massive application objects according to application pushing conditions, if M is smaller than or equal to the number of created concurrent component model objects, the M attribute data can be pushed to the M target objects through the M concurrent component model objects, otherwise, if M is larger than the number of created concurrent component model objects, N idle concurrent component model objects can be selected from the concurrent component model objects at first during each pushing, and N attribute data can be pushed to the N target objects through the N idle concurrent component model objects until the M attribute data are pushed to the N target objects, so that multiplexing of the N idle concurrent component model objects can be realized, and resource consumption cost can be reduced.
The application pushing condition is mainly used for screening group objects, namely target objects, which are suitable for pushing new versions of the application to be upgraded from massive application objects, wherein the application pushing condition can be specifically expressed as a combination of client version number interval limit, product version number interval limit and client version number interval limit or product version number interval limit.
Specifically, before the new version of the application to be upgraded is pushed to the target object by the concurrent component model object, M target objects may be determined from the massive application objects according to an application pushing condition (such as a policy configuration illustrated in fig. 13, that is, an application pushing condition configuration), for example, a limited condition such as an effective time may be used as an application pushing condition to determine at least one target object from the massive application objects, where the effective time refers to an effective time of attribute data corresponding to the application to be upgraded, that is, a new version, for example, a period of 2022, and a period of 22 months to 29 months, may be based on the effective time, so that the massive application objects may select a group that may use the application to be upgraded during the effective time to obtain M target objects, such as 100 target objects.
Further, assuming that the number of concurrent component model objects is 120, it is enough to provide 100 new versions of concurrent pushing at a time, so that M attribute data can be pushed to M target objects through M concurrent component model objects, that is, 100 attribute data, that is, new versions can be pushed to 100 target objects through 100 concurrent component model objects.
Further, assuming that the number of concurrent component model objects is 80, 100 new versions of concurrent pushing is not provided at one time, N idle concurrent component model objects can be selected from the concurrent component model objects and N attribute data can be pushed to N target objects through the N idle concurrent component model objects when each pushing is performed, the current idle concurrent component model object can be acquired first, 50 concurrent component model objects are assumed, 50 attribute data can be pushed to 50 target objects through the 50 idle concurrent component model objects, 50 attribute data to be pushed are left, next round of idle concurrent component model objects are acquired, 10 concurrent component model objects are assumed, 10 attribute data can be pushed to 10 target objects through the 10 idle concurrent component model objects, 40 attribute data to be pushed are left through the 10 idle concurrent component model objects, next round of idle concurrent component model objects are acquired, 40 attribute data can be pushed to 40 target objects through the 40 concurrent component model objects until the 40 new versions are 100 new versions of concurrent component model objects are different from the 100 new versions of terminal.
Optionally, on the basis of the embodiment corresponding to fig. 4, in another optional embodiment of the method for publishing a client application provided in the embodiment of the present application, as shown in fig. 5, an application pushing condition includes any one of a client version number interval or a product version number interval or a combination thereof, and step S401 includes determining M target objects from a mass of application objects according to the application pushing condition, where the determining includes:
in step S501, if the application push condition is a client version number interval, determining M target objects corresponding to the client version number interval from the massive application objects;
In the embodiment of the application, in order to better push the new version of the application to be upgraded so as to avoid the situations of user complaints or resource waste and the like caused by improper pushing, the embodiment can firstly determine M target objects from a mass of application objects according to the application pushing conditions, and if the application pushing conditions are client version number intervals, can determine M target objects corresponding to the client version number intervals from the mass of application objects.
Specifically, because the applicable terminals of some new version applications need to be supported by the system with a higher version to apply the new version application function, a proper pushing group can be better screened and obtained by adding a limiting condition of limiting the version number interval of the client, namely M target objects corresponding to the version number interval of the client are determined from a large number of application objects. For example, 100 target objects corresponding to a client version number interval, for example, version 3.0, are determined from the massive application objects.
In step S502, if the application pushing condition is a product version number interval, determining M target objects corresponding to the product version number interval from the massive application objects;
In the embodiment of the application, in order to better push the new version of the application to be upgraded so as to avoid the situation of user complaints or resource waste and the like caused by improper pushing, the embodiment can firstly determine M target objects from a large number of application objects according to the application pushing conditions, and if the application pushing conditions are product version number intervals, can determine M target objects corresponding to the product version number intervals from the large number of application objects.
Specifically, since the same application may have multiple versions at the same time, for example: android version, apple version, personal user version, enterprise user version and the like, and the additional function of the new version application only upgrades the historical application of the individual version, at this time, a proper pushing group can be better screened and obtained by adding the limiting condition of the product version number interval, namely M target objects corresponding to the product version number interval are determined from a large number of application objects. For example, 100 target objects corresponding to a product version number interval, for example, product version number 300903, are determined from the mass application objects.
In step S503, if the application pushing condition is a combination of the client version number interval and the product version number interval, M target objects corresponding to the client version number interval and the product version number interval are determined from the massive application objects.
In the embodiment of the application, in order to better push a new version of an application to be upgraded so as to avoid the situation of user complaints or resource waste and the like caused by improper pushing, the embodiment can firstly determine M target objects from a large number of application objects according to application pushing conditions, and if the application pushing conditions are combinations of a client version number interval and a product version number interval, determine M target objects corresponding to the client version number interval and the product version number interval from the large number of application objects.
Specifically, through the condition limitation of the combination of the client version number interval and the product version number interval, a proper pushing group can be further obtained through screening, namely M target objects corresponding to the client version number interval and the product version number interval are determined from a large number of application objects. For example, 50 target objects corresponding to a client version number interval (e.g., version 3.0) and a product version number interval (e.g., product version number 300903) are determined from among the massive application objects.
It should be noted that the application pushing condition may be effective time, group object information such as objects of different age groups, and the like, and may also be represented by other conditions, which are not limited herein.
Optionally, on the basis of the embodiment corresponding to fig. 2, in another optional embodiment of the method for publishing a client application provided in the embodiment of the present application, as shown in fig. 6, step S107 parses and installs file compression data to a formal directory of a client to update an application to be upgraded, including:
in step S601, the client performs security verification on the file compressed data to obtain a security verification result;
In step S602, if the security check result is that there is no abnormality, the file compression data is parsed and installed to the formal directory of the client to update the application to be upgraded.
In the embodiment of the application, after the file compression data is acquired, the file compression data can be firstly subjected to security check to acquire the security check result, so that whether the file compression data can be safely installed or not can be better judged based on the security check result, namely if the security check result is that the verification is abnormal, the file compression data can be analyzed and installed to a formal catalogue of a client so as to smoothly update the application to be updated, and thus the automatic release and automatic update of the application are realized.
Specifically, the security verification is performed on the file compressed data to obtain a security verification result, specifically, the main installation component CHRISTINSTALLER is created according to the command mode, verification code verification operation is performed on the file compressed data according to hash operation, when verification code verification operation is completed, that is, the security verification result is that verification is abnormal, decryption operation can be performed on the local compressed package according to the key encryption block algorithm, after decryption operation is completed, multiple virtual directories in the formal directory, that is, the temporary directory can be used for resolving the file compressed data to the temporary directory to obtain an application installation file, and then the application installation file is transferred to the formal directory to be downloaded and installed to update the application to be upgraded.
Optionally, based on the embodiment corresponding to fig. 6, in another optional embodiment of the method for publishing a client application provided by the embodiment of the present application, as shown in fig. 7, step S601 performs security verification on file compressed data to obtain a security verification result, where the security verification result includes: step S701 and step S702; step S602 includes: step S703 and step S704;
In step S701, a main installation component is created according to a command mode;
in the embodiment of the application, after the file compression data is obtained, in order to maintain the smooth installation of the file compression data and better realize the installation of the new version of the application program, the main installation component can be established according to the command mode, so that the file compression data can be safely checked based on the main installation component later to obtain a safety check result so as to judge whether the safe installation of the file compression data can be carried out.
Wherein the command mode (CommandPattern) is a data-driven design mode, which belongs to a behavior mode. The request is wrapped in the object in the form of a command and passed to the calling object. The calling object finds the appropriate object that can handle the command and passes the command to the corresponding object, which executes the command so that the command mode application issue instruction can be packaged, detected and executed.
Specifically, using the command mode to create the master installation Component (CHRISTINSTALLER), the retrieved file may be compressed and validated, such as a local zip file, including operations to verify MD5, DES decryption, decompression to a temporary directory, and file verification.
In step S702, performing security verification on the file compressed data according to the hash operation to obtain a security verification result;
In the embodiment of the application, after the main installation component is established, the security check can be performed on the file compression data according to the hash operation based on the main installation component so as to obtain the security check result, so as to judge whether the security installation of the file compression data can be performed.
The hash operation is referred to as MD5Message-DigestAlgorithm, which is a cryptographic hash function that generates a 128-bit (16-byte) hash value (hashvalue) to ensure that the information transfer is complete and consistent.
Specifically, when the client creates the main installation component in the trial command mode, the verification code can be transmitted into the ChristInfo model to perform verification code verification operation, it can be understood that, because the commonly used Web server lacks a page integrity verification mechanism, the website file cannot be prevented from being tampered, in order to ensure the integrity of the file, the user is prevented from accessing the page to be tampered, a Web tamper-proof mechanism for verifying the integrity of the file by adopting an MD5 algorithm can be adopted, the digital fingerprint of the target file is calculated, and the tampered file is restored by adopting a snapshot technology, so that the problems that most tamper-proof systems fail in protecting the dynamic website and are difficult in restoring small files are solved, the verification code verification operation can be specifically performed on file compressed data according to hash operation (such as MD5 algorithm), after the calculation result is obtained, the calculation result is compared with verification codes (such as verification code: eb4d69e1cd6690e476abbf b) of the ChristInfo model, if the user accesses the page to be prevented from being tampered, the file transmitted by the server is not wrong, and the security verification result without abnormality is obtained, otherwise the security verification result of abnormality is obtained, and the file is required to be retransmitted if the security verification is wrong.
In step S703, if the security check result is that there is no abnormality in the check, the file compression data is parsed into a temporary directory to obtain an application installation file;
In step S704, the application installation file is authenticated, and if the authentication result is that the authentication is successful, the application installation file is transferred from the temporary directory to the formal directory for installation, so as to update the application to be upgraded.
In the embodiment of the application, after the security verification result is obtained, if the security verification result is that verification is abnormal, the file compression data can be analyzed to the temporary directory to obtain the application installation file, then the application installation file is authenticated, and if the authentication result is that the authentication is successful, the application installation file is transferred from the temporary directory to the formal directory to be installed so as to update the application to be upgraded, thereby maintaining the security installation of the new version of the application to be upgraded.
Specifically, after the security verification result is obtained, if the security verification result is that the verification is not abnormal, the file compression data may be parsed into a temporary directory (e.g. temppath) to obtain the application installation file, specifically, an encryption key for decryption may be carried in the ChristInfo model, and the decryption operation may be performed on the file compression data by using the encryption key to obtain the application installation file. Further, the file verification may be performed based on a temporary directory (e.g. temppath), specifically may be loading a signature. Json to obtain a signature parsing base64, and finally executing RSASHA1Verify to perform signature authentication, if the signature is authorized, that is, the authentication result is that the authentication is successful, the application installation file may be transferred from the temporary directory to a formal directory (e.g. installpath) for installation, so as to update the application to be upgraded.
Optionally, in another optional embodiment of the method for publishing a client application provided in the embodiment of the present application on the basis of the embodiment corresponding to fig. 2, as shown in fig. 8, step S105 includes, when the client receives an application publishing instruction issued by the server, the client obtaining attribute data corresponding to an application to be upgraded according to the application publishing instruction, where the step includes:
in step S801, a cloud instruction processing center is created, and a client socket port connected with a server is created in the cloud instruction processing center according to a socket function;
In step S802, a client socket port is connected with a server socket port of a server, and an application issuing instruction issued by the server is received through the client socket port;
In step S803, attribute data corresponding to the application to be upgraded is received according to the access address of the application issuing instruction.
In the embodiment of the application, the server sends the attribute data through the socket port, and the client must create the socket port capable of communicating with the server, namely the client socket port, so that the client socket port can be connected with the server socket port of the server, an application issuing instruction issued by the server is received through the client socket port, and then the attribute data corresponding to the application to be upgraded can be received according to the access address of the application issuing instruction, so that the subsequent operations such as verification, installation and upgrading can be conveniently performed based on the acquired attribute data.
Specifically, the client needs to create InstructionCenter (cloud instruction processing center) to call a socket function to create a socket port applied to the client based on the cloud instruction processing center, which may specifically be based on obtaining a socket carried in an application issue instruction to determine a protocol family, a data type and a description character, where the protocol family may use af_inet to represent ipv4; the data type of Socket may use SOCK_STREAM; the descriptive characters may use IPPROTO _tipc protocol types, but other sockets may also be used, without specific limitation.
Further, the client side creates a socket port based on the cloud instruction processing center, and the implementation process can refer to the following steps:
(1) Calling Socket function Socket (), and creating a Socket, wherein the Socket is the master Socket (Active Socket);
(2) When the server side calls an acceptance function acceptance () and the client side can call a connection function connect () to initiate a connection request to the server, the kernel can allocate a temporary port to the client side, and once handshake is successful, the acceptance () of the server returns to another Socket;
(3) The client can read data or write data from the connected Socket.
Further, after the client completes the creation of the socket port, the client tries to connect the IP address and the port number of the server, after the connection is successful, the client injects InstructionCenter (cloud instruction processing center) as an observer and binds a data detection function access (accept) address, after the attribute data arrives at the client, the data detection function access (accept) address will transfer binary stream data to the cloud instruction processing center (InstructionCenter), then executes a write function of ssize _t to acquire attribute data issued by the server, and opens up a buffer zone and sets the length of the buffer zone based on the cloud instruction processing center to write the attribute data into the buffer zone.
Optionally, on the basis of the embodiment corresponding to fig. 8, in another optional embodiment of the method for publishing a client application provided by the embodiment of the present application, as shown in fig. 9, step S107 parses and installs file compression data to a formal directory of a client to update an application to be upgraded, and the method further includes:
in step S901, function call state data is obtained through the updated function call of the application to be upgraded detected in real time by the cloud instruction processing center;
In step S902, if the function call state data includes an abnormal parameter or error callback information, the abnormal parameter or error callback information is sent to the server through the client socket port as callback data corresponding to the updated application to be upgraded.
In the embodiment of the application, after the target object uses the client to successfully download and install the new version corresponding to the application to be upgraded, function call of the updated application to be upgraded can be detected in real time through the cloud instruction processing center to acquire function call state data, if abnormal parameters or error callback information exist in the function call state data, the abnormal parameters or the error callback information is sent to the server through a client socket port as callback data corresponding to the updated application to be upgraded, so that new version issued by the server is acquired again to upgrade the application to be upgraded again, and arrival rate and timeliness of release of the client application are maintained.
Specifically, after the target object uses the client to successfully download and install the new version corresponding to the application to be upgraded, the cloud instruction processing center can detect the function call of the updated application to be upgraded in real time, namely detect the use condition of the new version corresponding to the application to be upgraded in real time, so as to obtain function call state data, if the function call state data has abnormal parameters or error callback information, the abnormal parameters or error callback information is sent to the server through the client socket port as callback data corresponding to the updated application to be upgraded, so that the server can receive callback data, which is returned by each target object, about the updated application to be upgraded through the server socket port, and then if the callback data has the abnormal parameters or error callback information, the server can re-push the attribute data to the target object corresponding to the callback data with the abnormal parameters or error callback information, so that the target object can be reinstalled, and the application to be upgraded again.
Optionally, in another optional embodiment of the method for publishing a client application according to the embodiment of the present application on the basis of the embodiment corresponding to fig. 9, as shown in fig. 10, if in the function call state data, in step S902, abnormal parameters or error callback information are included, and after the abnormal parameters or error callback information is sent to the server as callback data corresponding to the updated application to be upgraded through the client socket port, the method further includes:
In step S1001, the server receives callback data about the updated application to be upgraded returned by each target object according to the server socket port;
In step S1002, if the callback data has an abnormal parameter or error callback information, the attribute data is pushed to the target object corresponding to the callback data having the abnormal parameter or error callback information.
In the embodiment of the application, after the client sends the abnormal parameters or the error callback information to the server through the client socket port as the callback data corresponding to the updated application to be upgraded, the server can receive the callback data about the updated application to be upgraded returned by each target object according to the server socket port, and if the callback data has the abnormal parameters or the error callback information, the attribute data can be pushed to the target object corresponding to the callback data with the abnormal parameters or the error callback information again.
Specifically, after the target object uses the client to successfully download and install the new version corresponding to the application to be upgraded, the application program takes effect after the next start, so that the use condition of the new version corresponding to the application to be upgraded can be detected in real time at the client, callback data about the updated application to be upgraded is returned to the server based on the use condition, so that the server can receive the callback data about the updated application to be upgraded returned by each target object through a socket port of the server, and then if the callback data has abnormal parameters or error callback information, the server can push the attribute data to the target object corresponding to the callback data with the abnormal parameters or the error callback information again so as to reinstall the target object.
Optionally, in another optional embodiment of the method for publishing a client application provided by the embodiment of the present application on the basis of the embodiment corresponding to fig. 2, as shown in fig. 11, when the server obtains the application package data corresponding to the application to be upgraded, in step S101, before the server creates the application publishing order corresponding to the application to be upgraded based on the application package data, the method further includes:
in step S1101, the server creates a console module according to the concurrent component model, and embeds the console module into the server, wherein the console module includes a concurrent component model object;
In the embodiment of the application, when a new version of an application program is available for a terminal to upgrade, a console module can be created according to the concurrent component model, and the console module is built in a server, so that a proper application release group can be selected through the console module in the follow-up process, and the new version of the application program is pushed to the terminals of the application release groups for the terminal to upgrade the application program.
The console module is a platform which is constructed based on the concurrent component model Actor and used for allocating and controlling various configuration, management, test, release and other operations of the application release task. The console module includes concurrent component model objects.
The concurrency component model is generally composed of three parts, namely a State (State), a Behavior (Behavior) and a mailbox (MailBox, which can be regarded as a message queue), and the concurrency component model object refers to a concurrency component model reference packaged with a State, a Behavior, a mailbox, a sub-Actor and a supervision policy in the concurrency component model, and the concurrency component model enables the concurrency component model object to be freely transferred without limit in the form of the concurrency component model reference so that the subsequent application publishing task can be better executed based on the concurrency component model object.
Specifically, a plurality of concurrent component model objects are created according to the concurrent component model, an application release component capable of supporting functions such as application package management and release management is defined, so that a console module is constructed, the console module is built in a server for subsequent control of the concurrent quantity of application release through the plurality of concurrent component model objects based on the console module, and therefore application release is executed better.
In step S1102, a server socket port is created in the console module according to the socket function.
In the embodiment of the application, after the console module is created, in order to better maintain information transfer between the server and the terminal and maintain smooth pushing of the application release task, the embodiment can create the server socket port in the console module based on the socket function, so that a new version of the application program can be better pushed to the terminals of a proper group based on the server socket port in the follow-up.
The server Socket port created based on Socket function Socket can be regarded as an end point in each communication connection when two network application programs communicate, and is an API for interprocess communication in a network environment.
Specifically, as shown in fig. 12, after the console module is created, after the control module is created, first, protocol communication between the server and the client, such as TCP protocol, may be established, on the basis of the TCP protocol, the client may be notified to create a Socket by using the newsocket method, meanwhile, the server may create a server Socket port in the console module based on a Socket function, so that a new version of the application program may be better pushed to terminals of several suitable groups based on the server Socket port (such as a Socket channel illustrated in fig. 12), where a SeverSocket (server Socket port) implementation procedure created by the server may be specifically as follows:
(1) Calling Socket function Socket (), and creating a server Socket port Socket, wherein the Socket is initiative Socket (ActiveSocket);
(2) Calling a binding function bind (), and binding an ip address and a port to the active Socket in the step (1);
(3) Calling a detection function listen (), converting the active Socket into a detection Socket, and starting to detect a connection request of the client;
(4) Calling an acceptance function, taking out one connection from a queue of completed connections for processing, and blocking waiting for the connection to complete if the connection is not completed yet;
(5) If the server-side accept () function obtains a connected Socket (ConnectedSocket), the server-side can read data or write data from the connected Socket, namely, connect is connected to the remote Socket of the server-side, and after connection is successful, data receiving and sending operation can be performed, and the Socket of the server Socket is successfully created.
Optionally, on the basis of the embodiment corresponding to fig. 2, in another optional embodiment of the method for publishing a client application provided by the embodiment of the present application, as shown in fig. 12, step S106 performs data extraction and assembly processing on attribute data to obtain file compression data corresponding to the attribute data, where the method includes:
in step S1201, format conversion operation is performed on the attribute data to obtain standard data;
In step S1202, stream buffering, stream size, and data holding are extracted from standard data by attribute name;
in step S1203, a compression operation is performed on stream buffer, stream size, and data holding, resulting in file compressed data.
In the embodiment of the application, when the attribute data is acquired, because the stream data such as the video stream is acquired, in order to facilitate the processing of the attribute data and improve the update efficiency of application release, the embodiment can firstly perform format conversion operation on the attribute data to acquire standard data, and then extract stream buffering, stream size and data holding from the standard data according to the attribute name, and perform compression operation on the stream buffering, stream size and data holding to acquire file compression data.
Specifically, when the attribute data is obtained, the format conversion operation may be performed on the attribute data first, specifically, the conversion operation may be performed according to a preset data format, for example, the stream formatting operation, that is, the stream formatting, or other data format conversion may also be adopted, which is not limited herein, so as to obtain standard data, which is normalized in format and is convenient for the computer to recognize and process, for example, the format conversion operation such as a video stream, an audio stream, or an image stream.
Further, after obtaining the standard data formatted by stream, the stream buffer streamBuffer, the stream size streamSize, and the data holder dataHolders may be extracted from the standard data according to the attribute names required for the installation of the data packet, respectively, and then compression operations are performed on the stream buffer, the stream size, and the data holder to obtain file compression data, such as a local zip file.
Referring to fig. 16, fig. 16 is a schematic diagram illustrating an embodiment of a device for publishing a client application according to an embodiment of the present application, where the device 20 for publishing a client application includes:
an obtaining unit 201, configured to create, when a server obtains application package data corresponding to an application to be upgraded, an application release order corresponding to the application to be upgraded based on the application package data;
A processing unit 202, configured to issue an application release order to a concurrent component model object, where one concurrent component model object may hold one application release order;
The processing unit 202 is further configured to extract attribute data corresponding to the attribute name from the application release order based on the attribute name in the concurrent component model object, and match the attribute data to the attribute of the concurrent component model object;
the sending unit 203 is configured to push, according to the concurrent component model object, attribute data to a client corresponding to the target object through a server socket port;
the obtaining unit 201 is further configured to, when the client receives an application issue instruction issued by the server, obtain attribute data corresponding to the application to be upgraded according to the application issue instruction;
The processing unit 202 is further configured to perform data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data;
the processing unit 202 is further configured to parse and install the file compression data to a formal directory of the client, so as to update the application to be upgraded.
Alternatively, in another embodiment of the device for publishing a client application provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the obtaining unit 201 may specifically be configured to:
When the server acquires application package data corresponding to the application to be upgraded, performing field content verification operation on the field information according to a service verification rule to obtain a verification result, wherein the service verification rule comprises a regular expression rule and/or a character string matching rule;
if the verification result is that the data is wrong, sending a data correction prompt;
If the verification result is data without errors, the server creates an application release order corresponding to the application to be upgraded based on the application package data.
Optionally, in another embodiment of the device for publishing a client application provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the sending unit 203 may specifically be configured to:
according to the application pushing conditions, M target objects are determined from the mass application objects, wherein M is an integer greater than or equal to 1;
If M is smaller than or equal to the number of the created concurrent component model objects, pushing M attribute data to clients corresponding to M target objects through M concurrent component model objects based on a server socket port;
If M is greater than the number of the created concurrent component model objects, selecting N idle concurrent component model objects from the concurrent component model objects during each pushing, and pushing N attribute data to the clients corresponding to the N target objects through the N idle concurrent component model objects based on the server socket port until the M attribute data are pushed to the clients corresponding to the M target objects, wherein N is an integer greater than 0 and less than M.
Optionally, in another embodiment of the device for publishing a client application provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the sending unit 203 may specifically be configured to:
if the application pushing condition is a client version number interval, M target objects corresponding to the client version number interval are determined from the massive application objects;
If the application pushing condition is a product version number interval, M target objects corresponding to the product version number interval are determined from the mass application objects;
If the application pushing condition is a combination of the client version number interval and the product version number interval, M target objects corresponding to the client version number interval and the product version number interval are determined from the massive application objects.
Optionally, in another embodiment of the device for client application publishing provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the processing unit 202 may specifically be configured to:
the client performs security verification on the file compressed data to obtain a security verification result;
If the security check result is that the check is abnormal, the file compression data is analyzed and installed to the formal catalogue of the client so as to update the application to be upgraded.
Optionally, in another embodiment of the device for client application publishing provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the processing unit 202 may specifically be configured to:
creating a main installation component according to the command mode;
carrying out security check on the file compressed data according to the hash operation to obtain a security check result;
the processing unit 202 may be specifically configured to:
If the security check result is that the check is abnormal, analyzing the file compression data to a temporary directory to obtain an application installation file;
and authenticating the application installation file, and if the authentication result is that the authentication is successful, transferring the application installation file from the temporary directory to the formal directory for installation so as to update the application to be upgraded.
Alternatively, in another embodiment of the device for publishing a client application provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the obtaining unit 201 may specifically be configured to:
Creating a cloud instruction processing center, and creating a client socket port connected with a server in the cloud instruction processing center according to a socket function;
the method comprises the steps that connection is carried out on the basis of a client socket port and a server socket port of a server, and an application issuing instruction issued by the server is received through the client socket port;
And receiving attribute data corresponding to the application to be upgraded according to the access address of the application issuing instruction.
Alternatively, on the basis of the embodiment corresponding to fig. 16, in another embodiment of the device for publishing a client application provided in the embodiment of the present application,
The processing unit 202 is further configured to obtain function call state data through function call of the updated application to be upgraded, where the function call is detected in real time by the cloud instruction processing center;
The processing unit 202 is further configured to send, if the function call state data includes an abnormal parameter or error callback information, the abnormal parameter or error callback information as callback data corresponding to the updated application to be upgraded to the server through the client socket port.
Alternatively, on the basis of the embodiment corresponding to fig. 16, in another embodiment of the device for publishing a client application provided in the embodiment of the present application,
The obtaining unit 201 is further configured to receive callback data about the updated application to be upgraded returned by each target object according to the server socket port;
the processing unit 202 is further configured to, if the callback data has an abnormal parameter or error callback information, re-push the attribute data to a target object corresponding to the callback data having the abnormal parameter or error callback information.
Alternatively, on the basis of the embodiment corresponding to fig. 16, in another embodiment of the device for publishing a client application provided in the embodiment of the present application,
The processing unit 202 is further configured to create a console module according to the concurrency component model by using the server, and embed the console module in the server, where the console module includes a concurrency component model object;
the processing unit 202 is further configured to create a server socket port in the console module according to the socket function.
Optionally, in another embodiment of the device for client application publishing provided in the embodiment of the present application based on the embodiment corresponding to fig. 16, the processing unit 202 may specifically be configured to:
performing format conversion operation on the attribute data to obtain standard data;
Extracting stream buffering, stream size and data holding from standard data according to attribute names;
and performing compression operation on stream buffering, stream size and data holding to obtain file compression data.
Another aspect of the present application provides another schematic diagram of a computer device, as shown in fig. 17, and fig. 17 is a schematic diagram of a structure of a computer device provided in an embodiment of the present application, where the computer device 300 may have a relatively large difference due to different configurations or performances, and may include one or more central processing units (centralprocessingunits, CPUs) 310 (e.g., one or more processors) and a memory 320, one or more storage mediums 330 (e.g., one or more mass storage devices) storing application programs 331 or data 332. Wherein memory 320 and storage medium 330 may be transitory or persistent storage. The program stored on the storage medium 330 may include one or more modules (not shown), each of which may include a series of instruction operations in the computer device 300. Still further, the central processor 310 may be configured to communicate with the storage medium 330 and execute a series of instruction operations in the storage medium 330 on the computer device 300.
The computer device 300 may also include one or more power supplies 340, one or more wired or wireless network interfaces 350, one or more input/output interfaces 360, and/or one or more operating systems 333, such as a windows server TM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM, or the like.
The above-described computer device 300 is also used to perform the steps in the corresponding embodiments as in fig. 2 to 12.
Another aspect of the application provides a computer readable storage medium having stored thereon a computer program which when executed by a processor performs steps in a method as described in the embodiments shown in fig. 2 to 12.
Another aspect of the application provides a computer program product comprising a computer program which, when executed by a processor, implements steps in a method as described in the embodiments shown in fig. 2 to 12.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, which are not repeated herein.
In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied essentially or in part or all of the technical solution or in part in the form of a software product stored in a storage medium, including instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. 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, or other various media capable of storing program codes.
Claims (15)
1. A method of client application publishing, comprising:
when a server acquires application package data corresponding to an application to be upgraded, the server creates an application release order corresponding to the application to be upgraded based on the application package data;
Issuing the application release order to concurrent component model objects, wherein one concurrent component model object can hold one application release order;
Extracting attribute data corresponding to the attribute names from the application release order based on the attribute names in the concurrent component model object, and matching the attribute data to the attribute of the concurrent component model object;
pushing the attribute data to a client corresponding to the target object through a server socket port according to the concurrent component model object;
When a client receives an application issuing instruction issued by the server, the client acquires attribute data corresponding to an application to be upgraded according to the application issuing instruction;
carrying out data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data;
and analyzing and installing the file compression data to a formal catalog of the client so as to update the application to be upgraded.
2. The method according to claim 1, wherein the application package data includes field information, and when the server obtains the application package data corresponding to the application to be upgraded, the server creates the application release order corresponding to the application to be upgraded based on the application package data, including:
When the server acquires application packet data corresponding to the application to be upgraded, performing field content verification operation on the field information according to a service verification rule to obtain a verification result, wherein the service verification rule comprises a regular expression rule and/or a character string matching rule;
if the verification result is that the data is wrong, a data correction prompt is sent out;
And if the verification result is data without errors, the server creates an application release order corresponding to the application to be upgraded based on the application package data.
3. The method according to claim 1, wherein pushing the attribute data to the client corresponding to the target object through the server socket port according to the concurrent component model object comprises:
according to application pushing conditions, M target objects are determined from mass application objects, wherein M is an integer greater than or equal to 1;
If M is smaller than or equal to the number of the created concurrent component model objects, pushing M attribute data to clients corresponding to the M target objects through M concurrent component model objects based on the server socket port;
And if M is greater than the number of the created concurrent component model objects, selecting N idle concurrent component model objects from the concurrent component model objects during each pushing, and pushing N attribute data to the clients corresponding to the N target objects through the N idle concurrent component model objects based on the server socket port until M attribute data are pushed to the clients corresponding to the M target objects, wherein N is an integer greater than 0 and less than M.
4. A method according to claim 3, wherein the application pushing condition includes any one of a client version number interval or a product version number interval or a combination thereof, and the determining M target objects from a huge number of application objects according to the application pushing condition includes:
If the application pushing condition is the client version number interval, M target objects corresponding to the client version number interval are determined from the massive application objects;
If the application pushing condition is the product version number interval, M target objects corresponding to the product version number interval are determined from the mass application objects;
And if the application pushing condition is the combination of the client version number interval and the product version number interval, determining M target objects corresponding to the client version number interval and the product version number interval from the mass application objects.
5. The method of claim 1, wherein said parsing and installing the file compression data into a formal directory of the client to update the application to be upgraded comprises:
The client performs security check on the file compressed data to obtain a security check result;
And if the security check result is that the check is abnormal, analyzing the file compression data and installing the file compression data to a formal catalog of the client so as to update the application to be upgraded.
6. The method of claim 5, wherein the performing the security check on the file compressed data to obtain a security check result comprises:
creating a main installation component according to the command mode;
performing security verification on the file compressed data according to hash operation to obtain a security verification result;
if the security check result is that the check is abnormal, analyzing the file compression data and installing the file compression data to a formal catalog of the client to update the application to be upgraded, wherein the method comprises the following steps:
If the security verification result is that verification is abnormal, analyzing the file compression data to a temporary directory to obtain an application installation file;
And authenticating the application installation file, and if the authentication result is that the authentication is successful, transferring the application installation file from the temporary directory to the formal directory for installation so as to update the application to be upgraded.
7. The method of claim 1, wherein when the client receives the application issuing instruction issued by the server, the client obtains attribute data corresponding to the application to be upgraded according to the application issuing instruction, including:
creating a cloud instruction processing center, and creating a client socket port connected with a server in the cloud instruction processing center according to a socket function;
Based on the connection between the client socket port and the server socket port of the server, receiving an application issuing instruction issued by the server through the client socket port;
And receiving attribute data corresponding to the application to be upgraded according to the access address of the application issuing instruction.
8. The method of claim 7, wherein after parsing and installing the file compression data to the formal catalog of the client to update the application to be upgraded, the method further comprises:
the cloud instruction processing center detects the updated function call of the application to be upgraded in real time to obtain function call state data;
if the function call state data has abnormal parameters or error callback information, the abnormal parameters or the error callback information is sent to the server through the client socket port as updated callback data corresponding to the application to be upgraded.
9. The method according to claim 8, wherein if the exception parameter or the error callback information exists in the function call state data, after sending the exception parameter or the error callback information as updated callback data corresponding to the application to be upgraded to the server through the client socket port, the method further comprises:
The server receives callback data about the updated application to be upgraded returned by each target object according to the server socket port;
And if the callback data has abnormal parameters or error callback information, the attribute data is pushed to a target object corresponding to the callback data with the abnormal parameters or the error callback information.
10. The method according to claim 1, wherein when the server obtains application package data corresponding to an application to be upgraded, before the server creates an application release order corresponding to the application to be upgraded based on the application package data, the method further comprises:
the server creates a control console module according to the concurrent component model, and embeds the control console module into the server, wherein the control console module comprises the concurrent component model object;
creating the server socket port in the console module according to a socket function.
11. The method of claim 1, wherein the performing data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data includes:
performing format conversion operation on the attribute data to obtain standard data;
Extracting stream buffering, stream size and data holding from the standard data according to the attribute names;
And performing compression operation on the stream buffer, the stream size and the data holding to obtain the file compression data.
12. An apparatus for client application publishing, comprising:
the system comprises an acquisition unit, a server and a control unit, wherein the acquisition unit is used for creating an application release order corresponding to an application to be upgraded based on application package data when the server acquires the application package data corresponding to the application to be upgraded;
the processing unit is used for issuing the application release order to concurrent component model objects, wherein one concurrent component model object can hold one application release order;
The processing unit is further used for extracting attribute data corresponding to the attribute names from the application release order based on the attribute names in the concurrent component model objects, and matching the attribute data to the attributes of the concurrent component model objects;
the sending unit is used for pushing the attribute data to the client corresponding to the target object through a server socket port according to the concurrent component model object;
the obtaining unit is further configured to, when the client receives an application issuing instruction issued by the server, obtain attribute data corresponding to an application to be upgraded according to the application issuing instruction;
The processing unit is also used for carrying out data extraction and assembly processing on the attribute data to obtain file compression data corresponding to the attribute data;
The processing unit is further configured to parse and install the file compression data to a formal directory of the client, so as to update the application to be upgraded.
13. A computer device comprising a memory, a processor and a bus system, the memory storing a computer program, characterized in that the processor implements the steps of the method of any of claims 1 to 11 when executing the computer program;
the bus system is used for connecting the memory and the processor so as to enable the memory and the processor to communicate.
14. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 11.
15. A computer program product comprising a computer program, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any one of claims 1 to 11.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211288920.9A CN117955962A (en) | 2022-10-20 | 2022-10-20 | Method, device, equipment and storage medium for releasing client application |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211288920.9A CN117955962A (en) | 2022-10-20 | 2022-10-20 | Method, device, equipment and storage medium for releasing client application |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117955962A true CN117955962A (en) | 2024-04-30 |
Family
ID=90793160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211288920.9A Pending CN117955962A (en) | 2022-10-20 | 2022-10-20 | Method, device, equipment and storage medium for releasing client application |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117955962A (en) |
-
2022
- 2022-10-20 CN CN202211288920.9A patent/CN117955962A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6774499B2 (en) | Providing access to hybrid applications offline | |
US11032140B2 (en) | Using a template to update a stack of resources | |
CN108111331B (en) | Method, device, storage medium, processor and system for acquiring update data packet | |
TWI712956B (en) | Method and device for updating mobile terminal application program | |
WO2019201039A1 (en) | Method and system for updating application and application server | |
JP2021518619A (en) | Systems and methods for connector development and integrated channel deployment | |
US10440106B2 (en) | Hosted file sync with stateless sync nodes | |
CN109639819B (en) | File transmission method, client, server and system | |
US20210096884A1 (en) | On-demand indexing of data in input path of object storage service | |
CN114586020A (en) | On-demand code obfuscation of data in an input path of an object storage service | |
EP3313041B1 (en) | Application download method and device | |
EP2603867B1 (en) | Sharing data on mobile devices | |
CN111598575A (en) | Business process control method and device, electronic equipment and readable storage medium | |
CN113986835B (en) | FastDFS distributed file management method, fastDFS distributed file management device, fastDFS distributed file management equipment and storage medium | |
CN111460394A (en) | Copyright file verification method and device and computer readable storage medium | |
US20230308290A1 (en) | Data sharing method and electronic device | |
CN110806935B (en) | Application program construction method, device and system | |
CN113077260A (en) | Data access method and device based on block chain and electronic equipment | |
CN111444542A (en) | Data processing method, device and storage medium for copyright file | |
CN110138774A (en) | A kind of hold-up interception method of the general CC attack of dynamic configuration | |
CN117955962A (en) | Method, device, equipment and storage medium for releasing client application | |
CN113420288B (en) | Container mirror image sensitive information detection system and method | |
US8862544B2 (en) | Grid based replication | |
CN114675872B (en) | Data processing method, device, equipment and storage medium for application program | |
CN105610908B (en) | A kind of samba service implementing method and system based on Android device |
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 |