A grayscale release method and device for application, server, and client
Through silent push technology, sending grayscale test notifications to the client of characteristic users, obtaining and applying grayscale configuration files, solving the problem of poor user experience in existing APP grayscale release technology, and achieving efficient grayscale release and version management .
Patent Information
- Application Number
- CN202011326480.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-11-24
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2040-11-24
AI Technical Summary
The existing APP grayscale release technology requires users to download new grayscale release versions, resulting in poor user experience and high trial and error costs, making it impossible to efficiently realize grayscale release.
Through silent push technology, send grayscale test notifications to the client of the characteristic user, obtain the target configuration file of the grayscale version of the target application, and switch to the grayscale version without the user's perception, reducing the number of times the user downloads and installs repeatedly.
Improves user experience, reduces the number of repeated downloads and installations for users, simplifies the grayscale release and version rollback process, and reduces the development and operation costs of the backend.
Smart Images

Figure CN112433749B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present specification relate to the field of computer technology, and in particular to a method and device, a server, and a client for grayscale publishing of an application. Background Art
[0002] With the rapid development of the Internet, the APPs on the current application market, combined with the C / S (client-side, server-side) approach, have gradually gotten rid of the traditional static content and started to move towards operationalization. They can update modules and display content anytime and anywhere to achieve a dynamic layout of the APP and realize the operability of the APP.
[0003] At present, the update and iteration speed of application APP products is very fast. New versions are generally released in grayscale before they are launched. Market feedback is obtained through a small number of user samples. The product team can promptly improve product-related functions based on user feedback. The existing APP grayscale release technology requires users to download a new grayscale release version, resulting in a low reach rate of the grayscale release version. If there is a problem with the grayscale release version, users need to re-download the previous version, which results in a poor user experience and a high trial and error cost. Therefore, it is impossible to efficiently achieve grayscale release using the technical solutions in the existing technology.
[0004] To address the above problems, no effective solution has been proposed yet. Summary of the invention
[0005] The embodiments of this specification provide a method and device, a server, and a client for grayscale release of an application to solve the problem that grayscale release cannot be efficiently implemented in the prior art.
[0006] An embodiment of the present specification provides a method for grayscale release of an application, comprising: upon determining that a target application releases a grayscale version, obtaining a characteristic user data set of the target application; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; using silent push technology to send a grayscale test notification to a client of each characteristic user in the characteristic user data set; the client of each characteristic user obtains a target configuration file of the grayscale version of the target application in response to the grayscale test notification; and according to the target configuration file, switching the target application in the client of the characteristic user from the currently used version to the grayscale version.
[0007] The embodiments of the present specification also provide a grayscale release device for an application, comprising: a first acquisition module, for acquiring a characteristic user data set of the target application when it is determined that the target application releases a grayscale version; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; a sending module, for sending a grayscale test notification to the client of each characteristic user in the characteristic user data set using a silent push technology; a second acquisition module, for the client of each characteristic user to obtain a target configuration file of the grayscale version of the target application in response to the grayscale test notification; and a version switching module, for switching the target application in the client of the characteristic user from the currently used version to the grayscale version according to the target configuration file.
[0008] The embodiments of this specification also provide a grayscale release method for an application, which is applied to a server, comprising: when the server of the target application determines that the target application releases a grayscale version, obtaining a characteristic user data set of the target application; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; and using silent push technology to send a grayscale test notification to the client of each characteristic user in the characteristic user data set.
[0009] The embodiment of the present specification also provides a server, including: an acquisition module, which is used for the server of the target application to acquire a characteristic user data set of the target application when it is determined that the target application has released a grayscale version; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; and a sending module, which is used to send a grayscale test notification to the client of each characteristic user in the characteristic user data set by using silent push technology.
[0010] An embodiment of the present specification also provides a method for grayscale release of an application, which is applied to a client, comprising: a client of a characteristic user of a target application obtains a target configuration file of a grayscale version of the target application in response to a grayscale test notification; wherein the grayscale test notification is sent by the server of the target application to the characteristic user of the target application using a silent push technology when it is determined that the target application has released a grayscale version; and according to the target configuration file, the target application in the client of the characteristic user is switched from a currently used version to the grayscale version.
[0011] The embodiments of the present specification also provide a client, including: an acquisition module, used for the client of a characteristic user of a target application to obtain a target configuration file of a grayscale version of the target application in response to a grayscale test notification; wherein the grayscale test notification is sent to the characteristic user of the target application by the server of the target application using a silent push technology when it is determined that the target application has released a grayscale version; and a version switching module, used to switch the target application in the client of the characteristic user from a currently used version to the grayscale version according to the target configuration file.
[0012] The embodiments of this specification provide a grayscale release method for an application, which can obtain a characteristic user data set of a target application when it is determined that the target application releases a grayscale version, wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data can be used to characterize the characteristic user. Furthermore, a grayscale test notification can be sent to the client of each characteristic user in the characteristic user data set using silent push technology, and the client that receives the grayscale test notification can start a background download service to obtain a target configuration file of the grayscale version of the target application. Since the silent notification content does not include any sound reminders and corner mark settings, background content updates can be performed without disturbing the user at all. Therefore, based on the obtained target configuration file, the target application in the characteristic user's client can be switched from the currently used version to the grayscale version without the user's perception, effectively reducing the number of times the user repeatedly downloads and installs, and improving the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] The drawings described herein are used to provide a further understanding of the embodiments of this specification, constitute a part of the embodiments of this specification, and do not constitute a limitation of the embodiments of this specification. In the drawings:
[0014] Figure 1 It is a structural diagram of a grayscale release system for an application provided in an embodiment of this specification;
[0015] Figure 2 It is a schematic diagram of the steps of a grayscale release method of an application provided in an embodiment of this specification;
[0016] Figure 3 It is a structural diagram of a grayscale publishing device for an application provided in an embodiment of this specification;
[0017] Figure 4 It is a schematic diagram of the steps of a grayscale release method of an application provided in an embodiment of this specification;
[0018] Figure 5 is a schematic diagram of the structure of a server provided according to an embodiment of this specification;
[0019] Figure 6 It is a schematic diagram of the steps of a grayscale release method of an application provided in an embodiment of this specification;
[0020] Figure 7 is a schematic diagram of the structure of a client provided according to an embodiment of this specification;
[0021] Figure 8 It is a structural diagram of a grayscale release device for an application provided in an embodiment of this specification. DETAILED DESCRIPTION
[0022] The principles and spirit of the embodiments of this specification will be described below with reference to several exemplary embodiments. It should be understood that these embodiments are provided only to enable those skilled in the art to better understand and implement the embodiments of this specification, and are not intended to limit the scope of the embodiments of this specification in any way. On the contrary, these embodiments are provided to make the disclosure of the embodiments of this specification more thorough and complete, and to fully convey the scope of the disclosure to those skilled in the art.
[0023] It should be noted that the user-related information and data involved in the embodiments of this specification are all information and data authorized by the user or fully authorized by relevant parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users or relevant parties to choose to authorize or refuse.
[0024] Those skilled in the art know that the implementation of the embodiments of this specification can be implemented as a system, device, method or computer program product. Therefore, the embodiments disclosed in this specification can be specifically implemented in the following forms, namely: complete hardware, complete software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.
[0025] Although the processes described below include multiple operations that occur in a particular order, it should be clear that these processes may include more or fewer operations, which may be performed sequentially or in parallel (eg, using parallel processors or a multi-threaded environment).
[0026] In a scenario example of the present application, a grayscale release system for an application is provided, such as Figure 1As shown, it may include: client 101 and server 102. When determining that the target application has released a grayscale version, server 102 may send a grayscale test notification to client 101 of each characteristic user in the characteristic user data set by using silent push technology. Client 101 may respond to the grayscale test notification, obtain a target configuration file of the grayscale version of the target application, and switch the target application in client 101 from the currently used version to the grayscale version according to the target configuration file.
[0027] The client 101 may be a terminal device or software used by a user. Specifically, the terminal device may be a terminal device such as a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart watch or other wearable device, or a robot device. Of course, the client 101 may also be software that can run in the above terminal device. For example: system applications, payment applications, browsers, WeChat applets and other application software.
[0028] The server 102 can be a single server or a server cluster. Of course, the server function can also be realized through cloud computing technology. The server 102 can be connected to multiple terminal devices, or it can be a server with a powerful information set library. When it is determined that the target application releases a gray version, it can use silent push technology to send gray test notifications to the client of each feature user, so that the client of each feature user can switch the current version of the target application to the gray version without the user's perception, thereby effectively improving the gray version reach rate.
[0029] See also Figure 2 This embodiment can provide a grayscale release method for an application. The grayscale release method for the application can be used to send a grayscale test notification to the client of each characteristic user using silent push technology when it is determined that the target application releases a grayscale version, so that the client of each characteristic user switches the version currently used by the target application to the grayscale version without the user's perception, thereby effectively improving the grayscale version reach rate. The grayscale release method for the above application can include the following steps.
[0030] S201: When it is determined that a target application has released a grayscale version, a characteristic user data set of the target application is obtained; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user.
[0031] In this embodiment, when it is determined that the target application is to be released in a grayscale version, a characteristic user data set of the target application can be obtained. The characteristic user data set may include attribute data of at least one characteristic user, and the attribute data may be used to characterize the characteristic user, so that a characteristic user can be uniquely identified by one attribute data. Among them, the target application may be an application to be released in grayscale, and the specific application name may be determined according to the actual situation, and this embodiment of the specification does not limit this.
[0032] In some embodiments, the attribute data may be a user ID (Identity), which may include at least one of the following: user name, user account, ID number, etc. Of course, the attribute data is not limited to the above examples, and those skilled in the art may make other changes based on the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to those of the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.
[0033] In this embodiment, since the number of users of the target application may be relatively large, and considering that some of the users use lower versions or use the target application less frequently, the users of the target application may be screened to determine users suitable for grayscale release of the target application. Furthermore, the screened users suitable for grayscale release of the target application may be used as characteristic users of the target application.
[0034] In this embodiment, the method of obtaining the characteristic user data set of the target application may include: reading it from a preset location of the server of the target application. Of course, it is understandable that other possible methods may be used to obtain the above sample data set, for example, searching for the characteristic users of the target application in a preset database according to certain search conditions, which may be determined according to actual conditions, and the embodiments of this specification do not limit this.
[0035] S202: Sending a grayscale test notification to the client of each characteristic user in the characteristic user dataset by using the silent push technology.
[0036] In this embodiment, when it is determined that the target application has released a grayscale version, the server of the target application can use silent push technology to send a grayscale test notification to the client of each characteristic user in the characteristic user data set. Among them, the grayscale test notification can be used to notify each client that the target application has released a grayscale version and can perform version switching. The grayscale test notification may include at least one of the following: the name of the target application, the IP address of the server of the target application, the version number of the grayscale version, etc. The specific one can be determined according to the actual situation, and this embodiment of the specification does not limit this.
[0037] In this embodiment, usually after starting an APP (Application), it will enter the foreground, for example, clicking the application icon or clicking the push notification to start the application, and the application silent push technology can start the application in the background when the application receives a silent push. The above-mentioned silent push technology (Silent Push) is a background remote push technology. Under the premise of executing remote notifications in the background, the silent notification content does not include any sound reminders and corner mark settings, and background content updates can be performed without disturbing the user at all. After receiving the notification in the target application in the client, it can directly run a piece of code in the background state without the user clicking, which can be used to obtain content updates from the server.
[0038] In this embodiment, in order to ensure that the user can receive silent push in time, a process keep alive strategy can be adopted. Specifically, dual process protection can be used, which is that two processes monitor each other. When one process is terminated, the other process will immediately resume it, thereby ensuring that the user can receive silent push in time.
[0039] S203: The client of each characteristic user obtains a target configuration file of a grayscale version of a target application in response to the grayscale test notification.
[0040] In this embodiment, when receiving the grayscale test notification, the client of each feature user can obtain the target configuration file of the grayscale version of the target application from the server of the target application. The above target configuration file can include specific settings of the grayscale version of the target application, and the target configuration file can include configuration settings read by the common language runtime (such as assembly binding policy, remote processing objects, etc.), as well as settings that can be read by the target application.
[0041] In this embodiment, after the developer of the target application writes the gray version of the target configuration file, he can manage and maintain it through the code repository. Each application can have a corresponding code repository for storing all the code and its submission history under the application service. At the same time, each code repository also supports developers to continuously push and pull code here to achieve agile development and continuous delivery. Among them, the code repository of the above-mentioned target application can be stored in a preset location of the server of the target application, so that the client can pull the target configuration file from the remote end (server).
[0042] In the prior art, it is necessary to load configuration files through the back-end API (Application Programming Interface) to achieve dynamic layout, and it is necessary to develop additional visual operation configuration pages for the back-end for use by operators, which increases development costs and learning costs for operators. In this implementation, dynamic layout can be achieved by loading remote configuration files, thereby effectively reducing the development workload of operation-related functions of the management background, and the configuration files can be maintained by the front-end developers themselves, effectively reducing operating costs.
[0043] In one embodiment, a target configuration file of a grayscale version of the target application can be constructed based on Flutter technology, so that a complete page can be combined by wrapping, nesting, and assembling custom components, and the style can be set through the interfaces of different components. Pages of various styles can be assembled through the basic custom component library. Among them, the above-mentioned Flutter is Google's mobile UI (User Interface) framework, which can quickly build high-quality native user interfaces on iOS (a proprietary mobile operating system developed by Apple for its mobile devices) and Android (Android). Flutter components are built using a modern responsive framework. The central idea is to build your UI with widgets, which describe how they appear given their current configuration and state. When the state of a component changes, the component will reconstruct its description, and Flutter will compare the previous description to determine the minimum change required for the underlying rendering tree to transition from the current state to the next state.
[0044] In this embodiment, a custom widget library can be established based on the design concept of Flutter. The custom widget library includes but is not limited to the following main types of components: 1) Custom basic components: such as images, texts, buttons, and other basic components with single functions and clear uses; 2) Custom layout style components: such as containers, rows, columns, lists, etc., which can be used for typesetting layout, describing placeholders, position relationships, and arrangement methods; 3) Custom combination components: according to their own business needs, basic components and layout style components are assembled and used in combination.
[0045] In this implementation, a custom property setting interface can be reserved for a custom component. For example, interfaces such as width, height, rounded angle, outer spacing, inner spacing, layout, alignment, background image, text content, icon style, image style, button click effect, and click event monitoring can be reserved. By changing the interface parameters, the display effect and business processing logic of the custom component can be flexibly adjusted.
[0046] In one embodiment, the target configuration file may be in XML (Extensible Markup Language). XML can meet the description of layout and the setting of custom attributes. It has a natural advantage in describing Flutter, which requires a large number of components to wrap each other and nested and combined to implement pages. It is easy to read, simple to maintain, and efficient to parse. In the XML configuration file, you can describe the wrapping, nesting, and combination relationships of custom components; set custom attributes of components; add relevant parameters of components; business logic processing methods, etc.
[0047] In this embodiment, developers can directly update and maintain the target configuration file through the code repository, and upload the configuration file to the preset location of the server when the business changes, goes into production, or is released in grayscale.
[0048] S204: According to the target configuration file, the target application in the client of the characteristic user is switched from the currently used version to the grayscale version.
[0049] In this embodiment, the target application in the client of the characteristic user can be switched from the currently used version to the grayscale version according to the target configuration file. The currently used version of the target application can be the version of the target application currently used by the client of the characteristic user.
[0050] In this embodiment, the target application can be switched to the grayscale version without the user's awareness. Even if the user is using the application, after the target configuration file is downloaded, the grayscale version of the target configuration file can be loaded when the user browses and switches pages, and the next new page can be naturally and seamlessly switched to the grayscale version.
[0051] Compared with the grayscale release solution in the prior art, the embodiments of this specification are more lightweight, have low construction costs, and are simpler to operate and maintain. More workload is placed on the front-end project. The back-end only needs to determine the characteristic user data set of the target application and push grayscale notifications. Other work is completed by the front-end. The configuration file itself is also written by the front-end developers, which effectively reduces the cost and complexity of back-end construction.
[0052] In one embodiment, before obtaining the characteristic user data set of the target application, the method may further include: obtaining historical behavior data of multiple users of the target application, and determining at least one characteristic user according to the historical behavior data of the multiple users and the preset screening conditions. Further, obtaining attribute data of at least one characteristic user, and generating the characteristic user data set of the target application according to the attribute data of at least one characteristic user.
[0053] In this embodiment, the target application may have multiple users. Considering that some of the users use a lower version or use the target application less frequently, the users of the target application may be screened to determine the users suitable for grayscale release of the target application. Therefore, the historical behavior data of multiple users of the target application may be obtained. The historical behavior data may be the behavior data recorded by the user's historical use of the target application. The historical behavior data of the multiple users may be stored in a preset database of the server of the target application so that they can be obtained in a timely manner. Among them, the historical behavior data may at least include: the time when the user last updated the version, the version information used by the user, the frequency of the user using the target application, the user's preference habits, the average daily length of time the user uses the target application, etc. Of course, the historical behavior data is not limited to the above examples. The technicians in the relevant field may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.
[0054] In this embodiment, since the user's historical behavior data can characterize the user's activity and participation in using the target application, at least one characteristic user can be determined according to the historical behavior data of multiple users and the preset screening conditions. The above preset screening conditions can be set in advance according to the business requirements of the gray version of the target application, for example: (1) the version baseline is determined, and only users at or above the set application version baseline can be identified as characteristic users; (2) based on users who meet the version baseline requirements, a secondary identification is performed based on activity, and users with higher activity are prioritized to be screened as characteristic users; (3) based on users who meet the activity requirements, a third identification is performed based on user participation, and users with higher participation are prioritized to be screened as characteristic users.
[0055] In this embodiment, it is also possible to add screening conditions for characteristic users according to the specific business needs of the grayscale version of the target application, and further define a more refined group of characteristic users. For example, the function page of the grayscale version is an operation and promotion activity page for a costume TV series, and the preset screening conditions can be set to: users who prefer costume dramas. In some embodiments, multiple screening conditions can also be set and different weights can be given to each screening condition, and characteristic users can be screened out by weighted operations on each screening condition. Of course, the preset screening conditions are not limited to the above examples, and technical personnel in the relevant field may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.
[0056] In one embodiment, obtaining a grayscale version of a target configuration file of a target application may include: loading the target configuration file from a server of the target application, and parsing the target configuration file when it is determined that the target configuration file is loaded successfully; and reloading the target configuration file from the server of the target application when it is determined that the target configuration file is loaded unsuccessfully.
[0057] In this embodiment, dynamic layout can be achieved by loading a remote configuration file. After receiving a silent notification, the client of the feature user can directly start the background download service of the client to download the target configuration file corresponding to the gray version from the server of the target application. In this way, the client can parse the configuration file and render the page, and switch to the gray version of the target application without the user's awareness.
[0058] In this embodiment, it can be determined whether the client successfully loads the target configuration file. If successful, the loaded target configuration file can be directly parsed. If failed, the target configuration file needs to be reloaded until the loading is successful. Of course, it is understandable that if the number of loading failures exceeds the preset number (for example, 8 times, 9 times, etc.), the situation can be fed back to the corresponding maintenance personnel for processing. The specific can be determined according to the actual situation, and the embodiments of this specification are not limited to this.
[0059] In one embodiment, after switching the target application in the client of the characteristic user from the currently used version to the grayscale version, the process may further include: obtaining feedback information of the grayscale version of the target application, and determining the quality level of the grayscale version of the target application based on the feedback information of the grayscale version of the target application. If it is determined that the quality level of the grayscale version of the target application is lower than a preset threshold, the target application in the client of the characteristic user may be switched from the grayscale version to the currently used version.
[0060] In this embodiment, after switching the target application in the client of the characteristic user from the currently used version to the gray version, feedback information of the gray version of the target application can be further obtained so that the developer can improve and improve the gray version based on the feedback information. The feedback information may include at least one of the following: opinions and public opinion on the satisfaction of the characteristic user using the gray version, and technical issues such as online crashes, white screens, freezes, etc. of the gray version collected by the probe, such as application performance compatibility and stability.
[0061] In this embodiment, the method for collecting feedback information may include: (1) setting a "Feedback" module in the grayscale version of the target application, and users can fill in and submit their opinions on problems encountered during use in the "Feedback" module; (2) collecting public opinions on problems through online customer service (including: robots, manual customer service, etc.); (3) collecting error stacks and operation logs during application operation by implanting monitoring probes.
[0062] In this embodiment, the quality level of the grayscale version of the target application can be determined based on the feedback information based on the grayscale version of the target application. The above quality level can be divided into three levels: high, medium, and low. Of course, it can also be set to level one, level two, level three, etc. Of course, it can be understood that any other possible way can be used to set the quality level. The specific method can be determined according to the actual situation, and this specification embodiment does not limit this.
[0063] In this embodiment, the above-mentioned quality level can be determined based on the number of user complaints about bugs (vulnerabilities, failures) in the grayscale version and the number of technical problems in the grayscale version collected by the probe. If the above-mentioned quality level is lower than the preset threshold, that is, the public opinion discussion on the grayscale version is negative, it means that the user acceptance of the grayscale version is not high, the quality of the grayscale version does not meet expectations, and the grayscale version cannot be fully released as a formal version at present. Developers still need to improve and perfect the grayscale version. Therefore, when it is determined that the quality level of the grayscale version of the target application is lower than the preset threshold, the target application in the client of the characteristic user can be switched from the grayscale version to the currently used version.
[0064] In this embodiment, the preset threshold can be determined according to the setting method of the quality level, for example: the quality level is divided into three levels: high, medium and low, then the preset threshold is "high"; the quality level is set to level 1, level 2, level 3 and level 4, then the preset threshold is "level 1". Of course, the preset threshold is not limited to the above examples, and technicians in the relevant field may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.
[0065] In this embodiment, when it is determined that the quality level of the gray version of the target application is not lower than the preset threshold, it means that the user acceptance of the gray version is high and the quality of the gray version meets expectations, and there is no need to perform a version rollback operation. At this time, the gray version can be fully released as a formal version, for example, it can be officially listed in the application store. The specific details can be determined according to actual conditions, and this embodiment of the specification does not limit this.
[0066] In one embodiment, when it is determined that the quality level of the grayscale version of the target application is lower than a preset threshold, switching the target application in the client of the characteristic user from the grayscale version to the currently used version may include: when it is determined that the quality level of the grayscale version of the target application is lower than the preset threshold, a version rollback notification may be sent to the client of each characteristic user in the characteristic user data set using silent push technology. Further, in response to the version rollback notification, the client of each characteristic user obtains the configuration file of the currently used version, and switches the target application in the client of the characteristic user from the grayscale version to the currently used version according to the configuration file of the currently used version.
[0067] In this embodiment, when the server of the target application determines that the quality level of the grayscale version of the target application is lower than the preset threshold, it means that the user acceptance of the grayscale version is not high and the quality of the grayscale version does not meet expectations. At this time, the silent push technology can be used to send a version rollback notification to the client of each feature user in the feature user data set. When the client of each feature user receives the version rollback notification, it can start the background download service of the client to download the configuration file corresponding to the current version from the server of the target application. In this way, the client can parse the configuration file corresponding to the current version, and then render the page, switching from the grayscale version to the current version used by each feature user without the user's perception.
[0068] In this embodiment, the version rollback of the grayscale release can be triggered by silent push. Its operating principle is the same as that of the grayscale release, and the same operating logic can be reused, which effectively reduces the difficulty and implementation cost of version rollback, improves the fault tolerance of grayscale release, and reduces the number of times users repeatedly download and install, thereby improving the user experience.
[0069] In one embodiment, before obtaining the grayscale version of the target configuration file of the target application, the process may further include: constructing the grayscale version of the target configuration file of the target application based on the Flutter technology; and uploading the target configuration file to a preset location of the server of the target application.
[0070] In this embodiment, the developer of the target application can build a grayscale version of the target configuration file of the target application based on the Flutter technology, and can upload the target configuration file to the preset location of the server of the target application so that the client can load the remote configuration file. Among them, the above-mentioned Flutter is a cross-platform front-end framework, and a set of codes can be applied to both Android and iOS, which effectively reduces the development cost and increases the scope of application of the platform.
[0071] From the above description, it can be seen that the embodiments of this specification achieve the following technical effects: when it is determined that the target application has released a grayscale version, a characteristic user data set of the target application can be obtained, wherein the above-mentioned characteristic user data set includes attribute data of at least one characteristic user, and the above-mentioned attribute data can be used to characterize the characteristic user. Furthermore, a grayscale test notification can be sent to the client of each characteristic user in the characteristic user data set using silent push technology, and the client that receives the grayscale test notification can start the background download service to obtain the target configuration file of the grayscale version of the target application. Therefore, according to the obtained target configuration file, the target application in the client of the characteristic user can be switched from the currently used version to the grayscale version without the user's perception, which effectively reduces the number of times the user repeatedly downloads and installs, and improves the user experience.
[0072] Based on the same inventive concept, the embodiments of this specification also provide a grayscale release device for an application, such as the following embodiments. Since the principle of solving the problem by the grayscale release device for an application is similar to that of the grayscale release method for an application, the implementation of the grayscale release device for an application can refer to the implementation of the grayscale release method for an application, and the repeated parts will not be repeated. As used below, the term "unit" or "module" can be a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceived. Figure 3 This is a structural block diagram of a grayscale publishing device used in the embodiments of this specification, such as Figure 3 As shown, it may include: a first acquisition module 301, a sending module 302, a second acquisition module 303, and a version switching module 304. The structure is described below.
[0073] The first acquisition module 301 may be used to acquire a characteristic user data set of the target application when it is determined that the target application has released a gray version; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user;
[0074] The sending module 302 may be used to send a grayscale test notification to a client of each characteristic user in the characteristic user data set by using a silent push technology;
[0075] The second acquisition module 303 may be used for the client of each characteristic user to respond to the grayscale test notification and acquire the target configuration file of the grayscale version of the target application;
[0076] The version switching module 304 may be used to switch the target application in the client of the characteristic user from the currently used version to the grayscale version according to the target configuration file.
[0077] See also Figure 4 The embodiment of this specification provides a grayscale release method for an application. The grayscale release method for an application can be applied to a server. The grayscale release method for an application can include the following steps.
[0078] Step S401: When determining that the target application has released a gray version, the server of the target application obtains a characteristic user data set of the target application; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user.
[0079] In this embodiment, when it is determined that the target application is to be released in a grayscale version, a characteristic user data set of the target application can be obtained. The characteristic user data set may include attribute data of at least one characteristic user, and the attribute data may be used to characterize the characteristic user, so that a characteristic user can be uniquely identified by one attribute data. Among them, the target application may be an application to be released in grayscale, and the specific application name may be determined according to the actual situation, and this embodiment of the specification does not limit this.
[0080] In some embodiments, the attribute data may be a user ID (Identity), which may include at least one of the following: user name, user account, ID number, etc. Of course, the attribute data is not limited to the above examples, and those skilled in the art may make other changes based on the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to those of the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.
[0081] In this embodiment, since the number of users of the target application may be relatively large, and considering that some of the users use lower versions or use the target application less frequently, the users of the target application may be screened to determine users suitable for grayscale release of the target application. Furthermore, the screened users suitable for grayscale release of the target application may be used as characteristic users of the target application.
[0082] In this embodiment, the method of obtaining the characteristic user data set of the target application may include: reading it from a preset location of the server of the target application. Of course, it is understandable that other possible methods may be used to obtain the above sample data set, for example, searching for the characteristic users of the target application in a preset database according to certain search conditions, which may be determined according to actual conditions, and the embodiments of this specification do not limit this.
[0083] Step S402: Send a grayscale test notification to the client of each characteristic user in the characteristic user data set by using the silent push technology.
[0084] In this embodiment, when it is determined that the target application has released a grayscale version, the server of the target application can use silent push technology to send a grayscale test notification to the client of each characteristic user in the characteristic user data set. Among them, the grayscale test notification can be used to notify each client that the target application has released a grayscale version and can perform version switching. The grayscale test notification may include at least one of the following: the name of the target application, the IP address of the server of the target application, the version number of the grayscale version, etc. The specific one can be determined according to the actual situation, and this embodiment of the specification does not limit this.
[0085] In this embodiment, usually after starting an APP (Application), it will enter the foreground, for example, clicking the application icon or clicking the push notification to start the application, and the application silent push technology can start the application in the background when the application receives a silent push. The above-mentioned silent push technology (Silent Push) is a background remote push technology. Under the premise of executing remote notifications in the background, the silent notification content does not include any sound reminders and corner mark settings, and background content updates can be performed without disturbing the user at all. After receiving the notification in the target application in the client, it can directly run a piece of code in the background state without the user clicking, which can be used to obtain content updates from the server.
[0086] In one embodiment, after sending a grayscale test notification to the client of each characteristic user in the characteristic user data set using the silent push technology, it may also include: obtaining feedback information of the grayscale version of the target application, and determining the quality level of the grayscale version of the target application based on the feedback information of the grayscale version of the target application. When it is determined that the quality level of the grayscale version of the target application is less than a preset threshold, a version rollback notification may be sent to the client of each characteristic user in the characteristic user data set using the silent push technology.
[0087] In this embodiment, after switching the target application in the client of the characteristic user from the currently used version to the gray version, feedback information of the gray version of the target application can be further obtained so that the developer can improve and improve the gray version based on the feedback information. The feedback information may include at least one of the following: opinions and public opinion on the satisfaction of the characteristic user using the gray version, and technical issues such as online crashes, white screens, freezes, etc. of the gray version collected by the probe, such as application performance compatibility and stability.
[0088] In this embodiment, the quality level of the grayscale version of the target application can be determined based on the feedback information based on the grayscale version of the target application. The above quality level can be divided into three levels: high, medium, and low. Of course, it can also be set to level one, level two, level three, etc. Of course, it can be understood that any other possible way can be used to set the quality level. The specific method can be determined according to the actual situation, and this specification embodiment does not limit this.
[0089] In this embodiment, the above-mentioned quality level can be determined based on the number of user complaints about bugs (vulnerabilities, failures) in the grayscale version and the number of technical problems in the grayscale version collected by the probe. If the above-mentioned quality level is lower than the preset threshold, that is, the public opinion discussion on the grayscale version is negative, it means that the user acceptance of the grayscale version is not high, the quality of the grayscale version does not meet expectations, and the grayscale version cannot be fully released at present. Developers still need to improve and perfect the grayscale version. Therefore, silent push technology can be used to send version rollback notifications to the client of each feature user in the feature user dataset.
[0090] In this embodiment, the preset threshold can be determined according to the setting method of the quality level, for example: the quality level is divided into three levels: high, medium and low, then the preset threshold is "high"; the quality level is set to level 1, level 2, level 3 and level 4, then the preset threshold is "level 1". Of course, the preset threshold is not limited to the above examples, and technicians in the relevant field may make other changes under the inspiration of the technical essence of the embodiments of this specification, but as long as the functions and effects achieved are the same or similar to the embodiments of this specification, they should be covered within the protection scope of the embodiments of this specification.
[0091] See also Figure 5 The embodiment of this specification also provides a server, including: an acquisition module 501 and a sending module 502.
[0092] The acquisition module 501 may be used by the server of the target application to acquire a characteristic user data set of the target application when determining that the target application releases a gray version; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user;
[0093] The sending module 502 may be configured to send a grayscale test notification to a client of each characteristic user in the characteristic user data set by using a silent push technology.
[0094] The functions and effects achieved by the server provided in this embodiment can be explained by referring to other embodiments.
[0095] See also Figure 6 The embodiment of this specification provides a grayscale release method for an application. The grayscale release method for an application can be applied to a client. The grayscale release method for an application can include the following steps.
[0096] Step S601: The client of the characteristic user of the target application responds to the grayscale test notification and obtains the target configuration file of the grayscale version of the target application; wherein the grayscale test notification is sent to the characteristic user of the target application by the server of the target application using the silent push technology when it is determined that the target application has released a grayscale version.
[0097] In this embodiment, when receiving the grayscale test notification, the client of each feature user can obtain the target configuration file of the grayscale version of the target application from the server of the target application. The above target configuration file can include specific settings of the grayscale version of the target application, and the target configuration file can include configuration settings read by the common language runtime (such as assembly binding policy, remote processing objects, etc.), as well as settings that can be read by the target application.
[0098] In this embodiment, after the developer of the target application writes the gray version of the target configuration file, he can manage and maintain it through the code repository. Each application can have a corresponding code repository for storing all the code and its submission history under the application service. At the same time, each code repository also supports developers to continuously push and pull code here to achieve agile development and continuous delivery. Among them, the code repository of the above-mentioned target application can be stored in a preset location of the server of the target application, so that the client can pull the target configuration file from the remote end (server).
[0099] In the prior art, it is necessary to load configuration files through the back-end API (Application Programming Interface) to achieve dynamic layout, and it is necessary to develop additional visual operation configuration pages for the back-end for use by operators, which increases development costs and learning costs for operators. In this implementation, dynamic layout can be achieved by loading remote configuration files, thereby effectively reducing the development workload of operation-related functions of the management background, and the configuration files can be maintained by the front-end developers themselves, effectively reducing operating costs.
[0100] In one embodiment, a target configuration file of a grayscale version of the target application can be constructed based on Flutter technology, so that a complete page can be combined by wrapping, nesting, and assembling custom components, and the style can be set through the interfaces of different components. Pages of various styles can be assembled through the basic custom component library. Among them, the above-mentioned Flutter is Google's mobile UI (User Interface) framework, which can quickly build high-quality native user interfaces on iOS (a proprietary mobile operating system developed by Apple for its mobile devices) and Android (Android). Flutter components are built using a modern responsive framework. The central idea is to build your UI with widgets, which describe how they appear given their current configuration and state. When the state of a component changes, the component will reconstruct its description, and Flutter will compare the previous description to determine the minimum change required for the underlying rendering tree to transition from the current state to the next state.
[0101] In this embodiment, a custom widget library can be established based on the design concept of Flutter. The custom widget library includes but is not limited to the following main types of components: 1) Custom basic components: such as images, texts, buttons, and other basic components with single functions and clear uses; 2) Custom layout style components: such as containers, rows, columns, lists, etc., which can be used for typesetting layout, describing placeholders, position relationships, and arrangement methods; 3) Custom combination components: according to their own business needs, basic components and layout style components are assembled and used in combination.
[0102] In this implementation, a custom property setting interface can be reserved for a custom component. For example, interfaces such as width, height, rounded angle, outer spacing, inner spacing, layout, alignment, background image, text content, icon style, image style, button click effect, and click event monitoring can be reserved. By changing the interface parameters, the display effect and business processing logic of the custom component can be flexibly adjusted.
[0103] In one embodiment, the target configuration file may be in XML (Extensible Markup Language). XML can meet the description of layout and the setting of custom attributes. It has a natural advantage in describing Flutter, which requires a large number of components to wrap each other and nested and combined to implement pages. It is easy to read, simple to maintain, and efficient to parse. In the XML configuration file, you can describe the wrapping, nesting, and combination relationships of custom components; set custom attributes of components; add relevant parameters of components; business logic processing methods, etc.
[0104] In this embodiment, developers can directly update and maintain the target configuration file through the code repository, and upload the configuration file to the preset location of the server when the business changes, goes into production, or is released in grayscale.
[0105] In this embodiment, when it is determined that the target application has released a grayscale version, the server of the target application can use silent push technology to send a grayscale test notification to the client of each characteristic user in the characteristic user data set. Among them, the grayscale test notification can be used to notify each client that the target application has released a grayscale version and can perform version switching. The grayscale test notification may include at least one of the following: the name of the target application, the IP address of the server of the target application, the version number of the grayscale version, etc. The specific one can be determined according to the actual situation, and this embodiment of the specification does not limit this.
[0106] Step S602: According to the target configuration file, the target application in the client of the characteristic user is switched from the currently used version to the grayscale version.
[0107] In this embodiment, the target application in the client of the characteristic user can be switched from the currently used version to the grayscale version according to the target configuration file. The currently used version of the target application can be the version of the target application currently used by the client of the characteristic user.
[0108] In this embodiment, the target application can be switched to the grayscale version without the user's awareness. Even if the user is using the application, after the target configuration file is downloaded, the grayscale version of the target configuration file can be loaded when the user browses and switches pages, and the next new page can be naturally and seamlessly switched to the grayscale version.
[0109] Compared with the grayscale release solution in the prior art, the embodiments of this specification are more lightweight, have low construction costs, and are simpler to operate and maintain. More workload is placed on the front-end project. The back-end only needs to determine the characteristic user data set of the target application and push grayscale notifications. Other work is completed by the front-end. The configuration file itself is also written by the front-end developers, which effectively reduces the cost and complexity of back-end construction.
[0110] In one embodiment, after the target application in the client of the characteristic user is switched from the currently used version to the gray version, the following may also be included: the client of the characteristic user obtains the configuration file of the currently used version when receiving the version rollback notification sent by the server of the target application. Furthermore, the target application in the client of the characteristic user may be switched from the gray version to the currently used version according to the configuration file of the currently used version.
[0111] In this embodiment, when the server of the target application determines that the quality level of the grayscale version of the target application is lower than the preset threshold, it means that the user acceptance of the grayscale version is not high and the quality of the grayscale version does not meet expectations. At this time, the silent push technology can be used to send a version rollback notification to the client of each feature user in the feature user data set. When the client of each feature user receives the version rollback notification, it can start the background download service of the client to download the configuration file corresponding to the current version from the server of the target application. In this way, the client can parse the configuration file corresponding to the current version, and then render the page, switching from the grayscale version to the current version used by each feature user without the user's perception.
[0112] In this embodiment, the version rollback of the grayscale release can be triggered by silent push. Its operating principle is the same as that of the grayscale release, and the same operating logic can be reused, which effectively reduces the difficulty and implementation cost of version rollback, improves the fault tolerance of grayscale release, and reduces the number of times users repeatedly download and install, thereby improving the user experience.
[0113] See also Figure 7 The embodiment of the present specification also provides a client, including: an acquisition module 701 and a version switching module 702.
[0114] The acquisition module 701 can be used for the client of the characteristic user of the target application to respond to the grayscale test notification to obtain the target configuration file of the grayscale version of the target application; wherein the grayscale test notification is sent to the characteristic user of the target application by the server of the target application using the silent push technology when it is determined that the target application releases the grayscale version;
[0115] The version switching module 702 may be used to switch the target application in the client of the characteristic user from the currently used version to the grayscale version according to the target configuration file.
[0116] The functions and effects achieved by the client provided in this embodiment can be explained by referring to other embodiments.
[0117] The embodiments of this specification also provide an electronic device, which can be specifically referred to in Figure 8 The electronic device composition structure diagram of the grayscale release method of the application provided in the embodiment of this specification is shown, and the electronic device may specifically include an input device 81, a processor 82, and a memory 83. Among them, the input device 81 can be specifically used to input a characteristic user data set of the target application. The processor 82 can be specifically used to obtain a characteristic user data set of the target application when it is determined that the target application releases a grayscale version; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; a grayscale test notification is sent to the client of each characteristic user in the characteristic user data set using silent push technology; the client of each characteristic user responds to the grayscale test notification and obtains a target configuration file of the grayscale version of the target application; according to the target configuration file, the target application in the client of the characteristic user is switched from the currently used version to the grayscale version. The memory 83 can be specifically used to store parameters such as the target configuration file.
[0118] In this embodiment, the input device can specifically be one of the main devices for information exchange between the user and the computer system. The input device can include a keyboard, a mouse, a camera, a scanner, a light pen, a handwriting input board, a voice input device, etc.; the input device is used to input the original data and the program for processing these numbers into the computer. The input device can also obtain and receive data transmitted from other modules, units, and devices. The processor can be implemented in any appropriate manner. For example, the processor can take the form of a computer-readable medium, a logic gate, a switch, an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a programmable logic controller, and an embedded microcontroller, etc., such as a microprocessor or a processor and a computer-readable program code (such as software or firmware) that can be executed by the (micro) processor. The memory can specifically be a memory device used to store information in modern information technology. The memory can include multiple levels. In a digital system, anything that can store binary data can be a memory; in an integrated circuit, a circuit with a storage function without a physical form is also called a memory, such as a RAM, a FIFO, etc.; in a system, a storage device with a physical form is also called a memory, such as a memory stick, a TF card, etc.
[0119] In this embodiment, the functions and effects specifically realized by the electronic device can be explained in comparison with other embodiments and will not be described in detail here.
[0120] The embodiments of the present specification also provide a computer storage medium based on the grayscale release method of an application, the computer storage medium stores computer program instructions, and when the computer program instructions are executed, the following can be achieved: when it is determined that the target application releases a grayscale version, a characteristic user data set of the target application is obtained; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; a grayscale test notification is sent to the client of each characteristic user in the characteristic user data set by using silent push technology; the client of each characteristic user obtains a target configuration file of the grayscale version of the target application in response to the grayscale test notification; and according to the target configuration file, the target application in the client of the characteristic user is switched from the currently used version to the grayscale version.
[0121] In this embodiment, the storage medium includes, but is not limited to, a random access memory (RAM), a read-only memory (ROM), a cache, a hard disk (HDD), or a memory card. The memory may be used to store computer program instructions. The network communication unit may be an interface for network connection communication set in accordance with the standard specified by the communication protocol.
[0122] In this embodiment, the functions and effects specifically implemented by the program instructions stored in the computer storage medium can be explained in comparison with other embodiments and will not be repeated here.
[0123] Obviously, those skilled in the art should understand that the modules or steps of the above-mentioned embodiments of this specification can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, and optionally, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that here, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. In this way, the embodiments of this specification are not limited to any specific combination of hardware and software.
[0124] Although the embodiments of this specification provide method operation steps as described in the above embodiments or flowcharts, more or fewer operation steps may be included in the method based on routine or no creative labor. In the steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided by the embodiments of this specification. When the device or terminal product of the method described in practice is executed, it can be executed in sequence or in parallel according to the method shown in the embodiments or drawings (for example, a parallel processor or a multi-threaded processing environment).
[0125] It should be understood that the above description is for illustration and not for limitation. By reading the above description, many embodiments and many applications beyond the examples provided will be apparent to those skilled in the art. Therefore, the scope of the embodiments of this specification should not be determined with reference to the above description, but should be determined with reference to the full scope of the aforementioned claims and the equivalents possessed by these claims.
[0126] The above is only a preferred embodiment of the embodiment of this specification, and is not intended to limit the embodiment of this specification. For those skilled in the art, the embodiment of this specification may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the embodiment of this specification shall be included in the protection scope of the embodiment of this specification.
Claims
1. A method for grayscale release of an application, characterized in that: include: When it is determined that the target application has released a gray version, a characteristic user data set of the target application is obtained; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; Using silent push technology to send a grayscale test notification to the client of each characteristic user in the characteristic user data set; The client of each characteristic user obtains a target configuration file of the grayscale version of the target application in response to the grayscale test notification; the target configuration file includes specific settings of the grayscale version of the target application, configuration settings read by the common language runtime, and settings that can be read by the target application; According to the target configuration file, switching the target application in the client of the characteristic user from the currently used version to the grayscale version; According to the target configuration file, switching the target application in the client of the characteristic user from the currently used version to the grayscale version includes: The client of each characteristic user parses the target configuration file, renders the interface, and switches the target application in the client of the characteristic user from the currently used version to the grayscale version.
2. The method according to claim 1, characterized in that Before obtaining the characteristic user data set of the target application, the method further includes: Obtaining historical behavior data of multiple users of the target application; Determine at least one characteristic user according to the historical behavior data of the multiple users and preset screening conditions; Acquiring attribute data of the at least one characteristic user; A characteristic user data set of the target application is generated according to the attribute data of the at least one characteristic user.
3. The method according to claim 1, characterized in that Obtaining a target configuration file of a grayscale version of the target application, including: Loading the target configuration file from a server of the target application; If it is determined that the target configuration file is loaded successfully, parsing the target configuration file; When it is determined that the target configuration file fails to be loaded, the target configuration file is reloaded from the server of the target application.
4. The method according to claim 1, characterized in that After switching the target application in the client of the characteristic user from the currently used version to the grayscale version, the method further includes: Obtaining feedback information of the grayscale version of the target application; Determining a quality level of the grayscale version of the target application based on feedback information of the grayscale version of the target application; When it is determined that the quality level of the grayscale version of the target application is lower than a preset threshold, the target application in the client of the characteristic user is switched from the grayscale version to the currently used version.
5. The method according to claim 4, characterized in that When it is determined that the quality level of the grayscale version of the target application is lower than a preset threshold, switching the target application in the client of the characteristic user from the grayscale version to the currently used version includes: When it is determined that the quality level of the grayscale version of the target application is lower than a preset threshold, a version rollback notification is sent to a client of each characteristic user in the characteristic user data set by using a silent push technology; The client of each characteristic user obtains the configuration file of the currently used version in response to the version rollback notification; According to the configuration file of the currently used version, the target application in the client of the characteristic user is switched from the grayscale version to the currently used version.
6. The method according to claim 1, characterized in that Before obtaining the grayscale version of the target configuration file of the target application, the method further includes: Building a grayscale version of the target configuration file of the target application based on Flutter technology; The target configuration file is uploaded to a preset location of a server of the target application.
7. The method according to claim 1, characterized in that The target configuration file is a file written in extensible markup language.
8. The method according to claim 1, characterized in that The attribute data includes: the ID of the characteristic user.
9. A grayscale release device for an application, characterized in that: include: A first acquisition module is used to acquire a characteristic user data set of the target application when it is determined that the target application releases a gray version; wherein the characteristic user data set includes attribute data of at least one characteristic user, and the attribute data is used to characterize the characteristic user; A sending module, used for sending a grayscale test notification to a client of each characteristic user in the characteristic user data set by using a silent push technology; A second acquisition module, for the client of each characteristic user to obtain a target configuration file of the grayscale version of the target application in response to the grayscale test notification; the target configuration file includes specific settings of the grayscale version of the target application, configuration settings read by the common language runtime, and settings that can be read by the target application; A version switching module, configured to switch the target application in the client of the characteristic user from the currently used version to the grayscale version according to the target configuration file; The version switching module is specifically used for: The client of each characteristic user parses the target configuration file, renders the interface, and switches the target application in the client of the characteristic user from the currently used version to the grayscale version.
10. A method for grayscale release of an application, characterized in that: Applied to the client, including: The client of the characteristic user of the target application obtains the target configuration file of the grayscale version of the target application in response to the grayscale test notification; wherein the grayscale test notification is sent to the characteristic user of the target application by the server of the target application using the silent push technology when it is determined that the target application releases a grayscale version; the target configuration file includes specific settings of the grayscale version of the target application, configuration settings read by the common language runtime, and settings that can be read by the target application; According to the target configuration file, switching the target application in the client of the characteristic user from the currently used version to the grayscale version; According to the target configuration file, switching the target application in the client of the characteristic user from the currently used version to the grayscale version includes: The client of each characteristic user parses the target configuration file, renders the interface, and switches the target application in the client of the characteristic user from the currently used version to the grayscale version.
11. The method according to claim 10, characterized in that After switching the target application in the client of the characteristic user from the currently used version to the grayscale version, the method further includes: The client of the feature user obtains the configuration file of the currently used version when receiving the version rollback notification sent by the server of the target application; According to the configuration file of the currently used version, the target application in the client of the characteristic user is switched from the grayscale version to the currently used version.
12. A client, characterized in that: include: an acquisition module, for a client of a characteristic user of a target application to acquire a target configuration file of a grayscale version of the target application in response to a grayscale test notification; wherein the grayscale test notification is sent by the server of the target application to the characteristic user of the target application using a silent push technology when determining that the target application has released a grayscale version; the target configuration file includes specific settings of the grayscale version of the target application, configuration settings read by a common language runtime, and settings that can be read by the target application; A version switching module, configured to switch the target application in the client of the characteristic user from the currently used version to the grayscale version according to the target configuration file; The version switching module is specifically used for: The client of each characteristic user parses the target configuration file, renders the interface, and switches the target application in the client of the characteristic user from the currently used version to the grayscale version.
Citation Information
Patent Citations
Method and device for realizing service gated launch, plug-in equipment and proxy server
CN108494876A
Grayscale publishing method and device, electronic device and computer readable medium
CN110569057A
