Directional application silent updating method and system based on user group characteristics

By conducting multi-dimensional clustering analysis of user groups and formulating a silent update strategy for targeted applications, problems such as single update strategy and high user intervention in traditional application update methods are solved, efficient and personalized application updates are achieved, and user experience and system resource utilization are improved.

CN120122973AActive Publication Date: 2025-06-10BOSHILIAN (SUZHOU) INFORMATION TECH CO LTD

Patent Information

Application Number
CN202510625803.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-15
Publication Date
2025-06-10
Estimated Expiration
2045-05-15

AI Technical Summary

Technical Problem

Traditional application update methods have problems such as single update strategy, high user intervention, unreasonable resource occupation, solidified strategy, poor adaptability to the network environment, lack of personalization and insufficient evaluation of update effect.

Method used

By obtaining user group information for multi-dimensional clustering analysis, a directed application silent update strategy based on user characteristics is formulated, a personalized update task is generated using silent update and resource monitoring mechanisms, and the update strategy is optimized through reinforcement learning algorithms.

Benefits of technology

It improves update efficiency and user experience, optimizes system resource utilization, realizes adaptive optimization of update strategies, and adapts to the changes in the needs of different user groups.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120122973A_ABST
    Figure CN120122973A_ABST
Patent Text Reader

Abstract

The invention provides a directional application silent updating method and system based on user group characteristics, and relates to the technical field of application updating, and the method comprises the steps: obtaining user group information, carrying out multi-dimensional clustering analysis to obtain a user characteristic group, formulating a corresponding application updating strategy, and storing the strategy in a strategy database. And after receiving an update request of user equipment, matching the equipment to the feature group, generating a personalized update task and sending the personalized update task to the equipment. And the equipment silently executes updating operation in the background, monitors resource occupation and automatically adjusts an updating process. And after updating is completed, the equipment sends result feedback, and the server dynamically adjusts the group division and updating strategy according to the result feedback, so that self-optimization and iteration are realized. According to the method, differentiation and intelligent application updating aiming at different user groups are realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to application update technology, and in particular to a method and system for silent update of directional applications based on user group characteristics. Background Art

[0002] With the rapid development of mobile Internet, smartphone applications have become an indispensable part of people's daily lives. In order to maintain the novelty, security and stability of application functions, developers need to push application updates frequently. However, there are many problems with traditional application update methods: Single update method: Most applications adopt a unified update strategy, without considering the characteristics and needs of different user groups, resulting in uneven update experience. High user intervention: Traditional updates usually require manual operation by users, which not only interrupts the user experience, but may also cause the application version to be dispersed due to user delays or refusal to update, increasing the difficulty of maintenance.

[0003] Unreasonable resource usage: The update process may occupy a large amount of system resources, affecting device performance and user experience, especially for devices with lower configurations. Fixed update strategy: There is a lack of a mechanism to dynamically adjust the update strategy based on user feedback and update results, making it difficult to adapt to the changing needs of different user groups.

[0004] Poor adaptability to network environments: Failure to fully consider differences in user network environments may result in update failures or high traffic consumption when network conditions are poor. Lack of personalization: Failure to provide differentiated update content for different user groups, making it difficult to meet diverse user needs. Insufficient update effect evaluation: Lack of a systematic update effect evaluation mechanism makes it difficult to accurately measure the actual impact of updates on user experience and application performance.

[0005] Therefore, there is an urgent need for an intelligent, personalized, low-interference silent update method for applications based on user group characteristics to improve update efficiency, optimize user experience, and continuously optimize update strategies based on actual results. The present invention proposes an innovative solution to the above problems. Summary of the invention

[0006] The embodiments of the present invention provide a method and system for silently updating directional applications based on user group characteristics, which can solve the problems in the prior art.

[0007] According to a first aspect of the embodiments of the present invention, Provides a targeted application silent update method based on user group characteristics, including: Obtain the user group information of the target application, perform multi-dimensional clustering analysis on the user group information to obtain multiple user feature groups; formulate corresponding application update strategies according to the characteristics of each user feature group, and store the user feature groups and the corresponding application update strategies in the policy database; Receive an application update request sent by the user device, match the user device to a certain user feature group according to the user device identifier and the current device status information; retrieve the application update strategy corresponding to the user feature group from the policy database; generate a personalized update task for the user device according to the application update strategy, and send the personalized update task to the user device; After receiving the personalized update task, the user device silently executes the update operation in the background, including downloading the update package within a specified time window, verifying the integrity of the update package, and performing an incremental update installation; during the update process, continuously monitor the device resource occupancy situation. When it is detected that the resource occupancy exceeds the preset threshold, automatically pause the update process and release resources, and automatically resume the update after the resource occupancy decreases; after the update is completed, the user device sends a feedback on the update result to the server, and the server dynamically adjusts the division of the user feature groups and the application update strategy according to the feedback result to achieve the self-optimization and iteration of the update strategy.

[0008] In an alternative embodiment, The multi-dimensional clustering analysis includes the following sub-steps: Perform data preprocessing on the user group information, including data cleaning, outlier detection, and feature standardization; Use a hybrid clustering algorithm to cluster the preprocessed data, and the hybrid clustering algorithm includes the combination of the K-means algorithm and the hierarchical clustering algorithm; Use the silhouette coefficient and the Davies-Bouldin index to evaluate the clustering effect, and determine the optimal number of clusters through iterative optimization; Based on the clustering results, extract the core features of each user feature group and generate descriptive labels for the user feature groups.

[0009] In an alternative embodiment, The process of formulating the application update strategy includes: Based on historical update data, construct a machine learning model for predicting the optimal update time window and network resource occupancy limit for different user feature groups; According to the division of the functional modules of the application, customize differentiated update content for each user feature group, including core function updates, performance optimization, and personalized functions; Set an update priority scoring system, and dynamically adjust the update order of the user feature groups by comprehensively considering user activity, device performance, and network conditions; Develop an update rollback mechanism that automatically triggers a rollback operation to restore to the previous stable version when it is detected that the update causes a decline in application performance or an increase in the crash rate.

[0010] In an alternative implementation, The process of generating personalized update tasks includes: Dynamically calculate the most suitable update package size and the number of shards based on the hardware configuration and storage space of the user device; Predict the user's inactive period based on the user's historical usage behavior and schedule the update time within that period; Set multi-level resource usage limits, including CPU usage rate, memory occupancy, network bandwidth, and battery consumption, and dynamically adjust these limits according to the current state of the device; Generate a unique identifier for the update task to track the update progress and record the update log.

[0011] In an alternative implementation, The silent update execution process also includes: Before downloading the update package, verify the network connection status and type of the user device, preferentially use the Wi-Fi network, and ask the user for permission to update under the mobile data network; Use incremental update technology to only download and install the changed parts, reducing the update package size and installation time; During the update installation process, create a temporary backup of the application data for quick recovery in case the update fails; After the update is completed, perform automated tests to verify the availability of key functions, and trigger the rollback mechanism if the test fails.

[0012] In an alternative implementation, The update result feedback also includes: Record the detailed log during the update process, including the start and end times of each update step, resource occupancy, and exceptions encountered; Collect the performance metrics when the user first uses the application after the update, including startup time, memory occupancy, and response speed; Through a lightweight user survey, collect the user's subjective evaluation and functional suggestions for the application after the update; Compare the application crash rate and error logs before and after the update to evaluate the impact of the update on the application stability.

[0013] In an alternative implementation, It also includes the following steps: Based on user feedback and update effects, continuously optimize the update strategy using a reinforcement learning algorithm, including adjusting the update time window, update content, and resource usage limits; Establish a quick response mechanism for user feedback. When a large number of negative feedbacks are detected, automatically pause the update push for this user group and initiate an emergency repair process; Build an update effect evaluation model, comprehensively consider the update success rate, user satisfaction, and application performance improvement, and score each update strategy adjustment; Conduct A / B tests regularly, compare the effects of different update strategies, and promote the best strategy to similar user groups.

[0014] In the second aspect of the embodiments of the present invention, a targeted application silent update system based on user group characteristics is provided, including: A first unit for obtaining user group information of a target application, performing multi-dimensional clustering analysis on the user group information to obtain multiple user feature groups; formulating corresponding application update strategies according to the characteristics of each user feature group, and storing the user feature groups and the corresponding application update strategies in a policy database; A second unit for receiving an application update request sent by a user device, matching the user device to a certain user feature group according to the user device identifier and the current device status information; retrieving the application update strategy corresponding to the user feature group from the policy database; generating a personalized update task for the user device according to the application update strategy, and sending the personalized update task to the user device; A third unit for, after the user device receives the personalized update task, silently performing an update operation in the background, including downloading an update package within a specified time window, verifying the integrity of the update package, and performing an incremental update installation; during the update process, continuously monitoring the device resource occupancy situation, automatically pausing the update process and releasing resources when it is detected that the resource occupancy exceeds a preset threshold, and automatically resuming the update after the resource occupancy decreases; after the update is completed, the user device sends a feedback on the update result to the server, and the server dynamically adjusts the division of the user feature groups and the application update strategies according to the feedback result to achieve self-optimization and iteration of the update strategies.

[0015] In the third aspect of the embodiments of the present invention, an electronic device is provided, including: A processor; A memory for storing instructions executable by the processor; Wherein, the processor is configured to call the instructions stored in the memory to execute the method described above.

[0016] In the fourth aspect of the embodiments of the present invention, a computer-readable storage medium is provided, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the method described above is implemented.

[0017] The beneficial effects of this application are as follows: Improve update efficiency and user experience: By analyzing and clustering the characteristics of the user group, targeted update strategies are formulated to make the update process more in line with user habits and device characteristics, thereby improving the update success rate and user satisfaction.

[0018] Optimize system resource utilization: Adopt silent update and resource monitoring mechanisms to complete the update without the user's awareness, and automatically adjust the update process according to the device resource occupancy situation to avoid affecting the user's normal use of the device.

[0019] Achieve adaptive optimization of update strategies: By collecting and analyzing the feedback of update results, dynamically adjust the division of user feature groups and update strategies, enabling the system to continuously learn and improve, adapt to the changing needs of different user groups, and improve the long-term operation effect. Brief Description of the Drawings

[0020] Figure 1 It is a flowchart of the method for targeted application silent update based on user group characteristics in an embodiment of the present invention; Figure 2 It is a structural diagram of the system for targeted application silent update based on user group characteristics in an embodiment of the present invention. Detailed Embodiments

[0021] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0022] The technical solutions of the present invention will be described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments.

[0023] Figure 1 It is a flowchart of the method for targeted application silent update based on user group characteristics in an embodiment of the present invention, as Figure 1 shown, the method includes: Obtain the user group information of the target application, perform multi-dimensional clustering analysis on the user group information to obtain multiple user feature groups; formulate corresponding application update strategies according to the characteristics of each user feature group, and store the user feature groups and the corresponding application update strategies in the policy database; Receive the application update request sent by the user device, match the user device to a certain user feature group according to the user device identifier and the current device status information; retrieve the application update policy corresponding to the user feature group from the policy database; generate a personalized update task for the user device according to the application update policy, and send the personalized update task to the user device; After receiving the personalized update task, the user device silently executes the update operation in the background, including downloading the update package within the specified time window, verifying the integrity of the update package, and performing incremental update installation; during the update process, continuously monitor the device resource occupancy situation, and when it is detected that the resource occupancy exceeds the preset threshold, automatically pause the update process and release resources, and automatically resume the update after the resource occupancy decreases; after the update is completed, the user device sends a feedback on the update result to the server, and the server dynamically adjusts the division of the user feature group and the application update policy according to the feedback result to achieve self-optimization and iteration of the update policy.

[0024] The specific implementation method of the targeted application silent update method based on user group characteristics is as follows: First, obtain the user group information of the target application. This step can be achieved through the following methods: 1) Extract basic information such as the user device model and operating system version from the user database of the application server.

[0025] 2) Statistically analyze the usage frequency and usage time period of users through in-app buried points. For example, count the number of times a user opens the application within a week, and the time period distribution of using the application every day.

[0026] 3) Obtain the geographical location information of the user by using IP address positioning or GPS positioning.

[0027] 4) Obtain the network environment information of the user through network detection, such as network type (Wi-Fi / 4G / 5G, etc.), network speed, etc.

[0028] For example, the following user information can be obtained: User A: {Device: iPhone 13, System: iOS 15.0, Network: 5G, Usage Frequency: 3 times a day, Usage Time Period: 20:00 - 22:00, Location: Beijing}; User B: {Device: Huawei Mate 40, System: Android 11, Network: 4G, Usage Frequency: 1 time a day, Usage Time Period: 12:00 - 13:00, Location: Shanghai}; Next, perform multi-dimensional clustering analysis on the obtained user group information to obtain multiple user feature groups. The K-means clustering algorithm can be used to group users according to similarity. The clustering dimensions include device model, system version, network environment, usage frequency, usage time period, and geographical location.

[0029] After clustering, the following user groups can be formed: Group 1: High-end iOS devices, 5G network, high-frequency night usage, first-tier cities; Group 2: Mid-range Android devices, 4G network, low-frequency noon usage, second- and third-tier cities.

[0030] Then, formulate corresponding application update strategies according to the characteristics of each user feature group. The update strategies include: 1) Update time window: Select the time period when users are inactive according to the usage time period characteristics of the group. For example, select 2-6 am for Group 1 and 8 pm - 8 am the next day for Group 2.

[0031] 2) Update priority: High-frequency user groups are updated first. For example, the priority of Group 1 is higher than that of Group 2.

[0032] 3) Update content differentiation: Provide differentiated update packages for different devices and system versions. For example, update iOS and Android versions separately, and differentiate functions for high- and low-end devices.

[0033] 4) Network resource occupancy limit: Set different resource limits according to the network environment. For example, 5G network can occupy 50% of the bandwidth, and 4G network is limited within 30%.

[0034] The formulated strategies are stored in the strategy database to form a mapping relationship between user groups and update strategies.

[0035] When an application update request is received from a user device, first parse the user device identifier and current status information included in the request. Then, based on this information, match the user device to the most similar feature group.

[0036] Next, retrieve the corresponding application update strategy for this group from the strategy database and generate a targeted personalized update task according to the strategy. The update task includes: 1) Update package download address: Provide the download link for the corresponding version according to the device type 2) Installation time arrangement: Set to execute within the time window specified by the strategy 3) Resource usage limit: Such as CPU usage rate not exceeding 30% and memory occupancy not exceeding 100MB, etc. After the generated personalized update tasks are sent to the user device, the device will silently execute the update operation in the background. The specific steps are as follows: 1) Start downloading the update package within the specified time window. During the download process, monitor the network resource occupancy to ensure that it does not exceed the limit.

[0037] 2) After the download is complete, verify the integrity and signature of the update package.

[0038] 3) Perform an incremental update installation, only updating the changed parts to save time and resources.

[0039] 4) Continuously monitor the resource occupancy such as CPU and memory during the update process. When it is detected that the preset threshold is exceeded, automatically pause the update and release resources. Resume the update automatically after the resource occupancy decreases.

[0040] 5) After the update is complete, send feedback to the server, including whether the update is successful, the time consumed, the resource occupancy, etc.

[0041] Finally, the server dynamically adjusts the division of user feature groups and the application update strategy according to the feedback results of the user device. For example: - If the update success rate of a certain group is relatively low, the time window or resource limit of this group can be adjusted - If the update of a certain type of device takes a long time, a more refined update strategy can be formulated for it separately - Optimize the update priority of each group according to the experience score feedback by the user In this way, the self-optimization and iteration of the update strategy are realized, and the efficiency of silent update and the user experience are continuously improved.

[0042] In an optional implementation manner, the multi-dimensional clustering analysis includes the following sub-steps: Perform data preprocessing on the user group information, including data cleaning, outlier detection, and feature standardization; Use a hybrid clustering algorithm to cluster the preprocessed data, and the hybrid clustering algorithm includes the combination of the K-means algorithm and the hierarchical clustering algorithm; Use the silhouette coefficient and the Davies-Bouldin index to evaluate the clustering effect, and determine the optimal number of clusters through iterative optimization; Based on the clustering results, extract the core features of each user feature group and generate descriptive labels for the user feature groups.

[0043] In the specific implementation manner, the multi-dimensional clustering analysis includes the following detailed steps: First, perform data preprocessing on the user group information. This step includes data cleaning, outlier detection, and feature standardization. Data cleaning mainly deals with missing values and duplicate values. For missing values, methods such as mean filling, median filling, or filling based on similar users can be used. For example, for the feature of age, if the age information of a certain user is missing, it can be filled with the average age of the city where the user is located. For duplicate values, deduplication needs to be performed based on unique identifiers such as user IDs. Outlier detection can use the 3σ principle, that is, data outside the range of plus or minus 3 standard deviations from the mean is regarded as an outlier. For example, if a user's monthly consumption amount exceeds 100,000 yuan, which is much higher than the average level, it may be an outlier. For the detected outliers, they can be selected to be deleted or replaced with the maximum / minimum value within the normal range. Feature standardization is to eliminate the influence of the dimension of different features. Commonly used methods include Z-score standardization and Min-Max standardization. Z-score standardization is to subtract the mean from the feature value and then divide by the standard deviation, and Min-Max standardization is to map the feature value to the interval [0, 1]. For example, for the two features of user age and monthly income, Min-Max standardization can be used to make the numerical ranges of these two features both between 0 and 1, which is convenient for subsequent clustering analysis.

[0044] Next, use a hybrid clustering algorithm to cluster the preprocessed data. This hybrid clustering algorithm combines the advantages of the K-means algorithm and the hierarchical clustering algorithm. First, use the K-means algorithm for preliminary clustering to obtain K clustering centers. The steps of the K-means algorithm include: randomly selecting K initial clustering centers; assigning each sample point to the nearest clustering center; recalculating the center point of each cluster; repeating the above two steps until the clustering centers no longer change significantly. For example, assume that we initially choose K = 5 and perform K-means clustering on features such as user age, monthly income, and consumption habits, and we may get 5 preliminary user groups. Then, apply the hierarchical clustering algorithm to these K clustering centers to further optimize the clustering results. The steps of the hierarchical clustering algorithm include: regarding each clustering center as an independent class; calculating the distance between classes; merging the two closest classes; repeating the above two steps until the preset number of clusters is reached. In this way, a hierarchical clustering structure can be obtained, which not only retains the efficiency of the K-means algorithm but also utilizes the advantage of the hierarchical clustering algorithm to discover the internal structure of the data.

[0045] To evaluate the clustering effect and determine the optimal number of clusters, two evaluation metrics are used: the silhouette coefficient and the Davies-Bouldin index. The silhouette coefficient measures the difference between the similarity of a sample to its own cluster and the similarity to other clusters. The value range of the silhouette coefficient is [-1, 1], and the larger the value, the better the clustering effect. The Davies-Bouldin index measures the ratio of within-cluster similarity to between-cluster similarity, and the smaller this index, the better the clustering effect. In specific operations, different numbers of clusters can be tried (for example, from 2 to 10), these two metrics are calculated for each clustering result, and then the number of clusters with the best overall performance is selected. For example, assume that when the number of clusters is 4, the silhouette coefficient reaches the maximum value of 0.68 and the Davies-Bouldin index reaches the minimum value of 1.25, then 4 can be considered the optimal number of clusters. In addition, the clustering effect can be further improved through iterative optimization. For example, the K-means algorithm can be run multiple times, with different initial cluster centers each time, and then the result with the highest silhouette coefficient is selected as the final clustering result.

[0046] Finally, based on the clustering results, the core features of each user feature group are extracted, and descriptive labels for the user feature groups are generated. The extraction of core features can be achieved by calculating statistics such as the mean, median, and mode of each feature within the group. For example, for a certain clustering group, if it is found that the average age of the group is 25 years old, the average monthly income is 8000 yuan, and the main consumption categories are digital products and clothing, then this information can be used as the core features of the group. When generating descriptive labels, these core features and business knowledge can be combined. For example, the above group can be labeled as "young white-collar group". To make the labels more accurate and meaningful, some additional analysis methods can be introduced, such as feature importance analysis. By calculating the contribution degree of each feature to the group division, the features that best represent the group can be found, thus generating more accurate descriptive labels. For example, if it is found that the consumption category feature contributes the most to the group division, then the label can be refined to "digital trendy young white-collar group".

[0047] Through the above steps, multi-dimensional clustering analysis of the user group can be achieved, obtaining user groups with clear features and labels, providing data support for subsequent precision marketing and personalized services.

[0048] In an alternative implementation, the process of formulating an application update strategy includes: Based on historical update data, a machine learning model is constructed to predict the optimal update time window and network resource occupancy limit for different user feature groups; According to the division of functional modules of the application, customize differentiated update content for each user feature group, including core function updates, performance optimization, and personalized functions; Set up an update priority scoring system, comprehensively consider user activity, device performance, and network conditions, and dynamically adjust the update order of user feature groups; Formulate an update rollback mechanism. When it is detected that the update causes a decline in application performance or an increase in the crash rate, automatically trigger the rollback operation to restore to the previous stable version.

[0049] In the process of formulating the application update strategy, first build a machine learning model based on historical update data to predict the best update time window and network resource occupancy limit for different user feature groups. When specifically implementing, user feature data including user device type, operating system version, network environment, usage frequency, etc., as well as information such as the time, content, and success rate of historical updates can be collected. Use these data to train a random forest model, which can output the predicted best update time period (such as 8 pm - 10 pm on weekends) and the recommended upper limit of network resource occupancy (such as no more than 50MB / s) according to the input user features.

[0050] Next, according to the division of functional modules of the application, customize differentiated update content for each user feature group. For example, for the high-end device user group, a graphics engine update containing high-resolution textures and complex rendering effects can be pushed; for the low-end device user group, updates related to performance optimization are emphasized. At the same time, according to the usage habits of users, customize personalized function updates for different groups. For example, for the user group that often uses social functions, new features of the social module are pushed first.

[0051] Set up an update priority scoring system in the update strategy, comprehensively consider user activity, device performance, and network conditions, and dynamically adjust the update order of user feature groups. A weighted scoring method can be adopted. For example: the weight of user activity is 0.4, the weight of device performance is 0.3, and the weight of network conditions is 0.3. For each user, calculate the activity score (0 - 100 points) according to the average daily usage duration in the recent 7 days, calculate the performance score (0 - 100 points) according to the hardware parameters such as the device CPU and memory, and calculate the network condition score (0 - 100 points) according to the network bandwidth and stability. Add these three scores according to the weights to obtain the final priority score. The user group with a higher score will receive the update push first.

[0052] Finally, establish an update rollback mechanism. When it is detected that the update causes a decline in application performance or an increase in the crash rate, the rollback operation is automatically triggered to restore to the previous stable version. During specific implementation, the application performance metrics after the update, such as page load time, CPU usage, memory occupancy, etc., can be monitored in real time on the server side. At the same time, monitor the application crash rate. When it is detected that these metrics deteriorate by more than a preset threshold compared to before the update (such as a 20% decline in performance or a 5% increase in the crash rate), the rollback process is automatically triggered. During rollback, first suspend the push of the new version, and then push a rollback patch to the updated users to restore their application version to the previous stable version.

[0053] In practical applications, the execution process of this update strategy is as follows: First, use the constructed machine learning model to predict the update time and resource limits for the target user group. Suppose there is a group of users who use mid-range Android devices and mainly use the application in a mobile network environment. The model may predict that their best update time is during the lunch break on weekdays (12:00 - 13:00), and the recommended network resource occupancy limit is 30 MB / s.

[0054] Then, customize the differentiated update content according to the characteristics of this group of users. For example, prepare a performance update package optimized for the Android system for them, including code refactoring to reduce memory occupancy, optimizing the network request strategy, etc. At the same time, according to the news reading function that this group of users often use in the application, incorporate the newly developed personalized news recommendation algorithm into the update content.

[0055] Next, use a priority scoring system to evaluate the update priority of this group of users. Suppose the average activity score of this group of users is 80 points (the daily usage duration is about 2 hours), the device performance score is 60 points (mid-range device), and the network condition score is 70 points (mainly 4G network). According to the previously set weights, the calculated final priority score is: 80 * 0.4 + 60 * 0.3 + 70 * 0.3 = 71 points. This score will determine their update order among all user groups.

[0056] Finally, while pushing the update, continuously monitor the application performance and stability. Suppose it is detected that the average page load time of the application for this group of users increases from the original 2 seconds to 2.8 seconds after the update, exceeding the preset 20% deterioration threshold. The system will automatically trigger the rollback mechanism, push a rollback patch to this group of users to restore their application version to the stable version before the update, and at the same time suspend pushing the problematic update version to other users.

[0057] Through this set of strategies, precise and personalized application updates for different user groups can be achieved, improving the success rate of updates and user satisfaction. At the same time, in case of problems, a quick response can be made to minimize the negative impact on the user experience.

[0058] In an optional implementation manner, the process of generating a personalized update task includes: Dynamically calculate the most suitable update package size and the number of shards based on the hardware configuration and storage space of the user device; Predict the inactive period of the user according to the user's historical usage behavior, and schedule the update time within this period; Set multi-level resource usage limits, including CPU usage rate, memory occupancy, network bandwidth, and battery consumption, and dynamically adjust these limits according to the current state of the device; Generate a unique identifier for the update task to track the update progress and record the update log.

[0059] To achieve the generation of personalized software update tasks, it is first necessary to obtain the hardware configuration information and available storage space of the user device. This can be achieved by calling system APIs, such as obtaining parameters such as CPU model, memory size, and storage capacity. Based on this information, the system will dynamically calculate the most suitable update package size and the number of shards for the current device. For example, for a device with less memory, the update package can be split into more small shards to reduce memory occupancy; while for a device with sufficient storage space, a larger shard size can be selected to reduce the number of shards and improve the update efficiency.

[0060] Next, the system will analyze the user's historical usage behavior data, including application usage duration, usage frequency, usage period, etc. Through these data, the inactive period of the user can be predicted, such as late at night or working hours. The system will preferentially schedule the update task to be executed during these periods to minimize the impact on the user's daily use. Specifically, the average activity level of the user in each hour period in the past 30 days can be counted, and the consecutive time period with the lowest activity level can be selected as the update time.

[0061] Then, the system will set multi-level resource usage limits, including CPU usage rate, memory occupancy, network bandwidth, and battery consumption. These limits will be dynamically adjusted according to the current state of the device. For example, when it is detected that the device is in a charging state, the limit on battery consumption can be appropriately relaxed; when it is detected that the user is using the device, the CPU and memory usage limits will be reduced to ensure that the user experience is not affected. The specific limit values can be set according to the device performance level. For example, the upper limit of the CPU usage rate for an entry-level device can be set to 20%, while for a high-end device, it can be set to 40%.

[0062] To accurately track the update progress and record logs, the system generates a unique identifier for each update task. This identifier can be composed of information such as a timestamp, device ID, update version number, etc., to ensure its uniqueness. For example, the format "device ID_update version number_timestamp" can be adopted, such as "DEVICE001_V2.0_20230515120000". The system uses this identifier to associate all relevant update operations and log records.

[0063] When actually executing the update task, the system first downloads the update package according to the pre-computed sharding scheme. During the download process, the network bandwidth usage is monitored in real time. If it detects that the user is performing a large-traffic operation (such as video playback), the download speed will be automatically reduced or the download will be paused. After the download is completed, the system gradually installs the update shards in the background while strictly controlling the CPU and memory usage to ensure that the set limits are not exceeded.

[0064] During the update installation process, the system regularly checks the device status. If it finds that the device battery level is below 20% and not connected to a charger, the update task will be automatically paused and wait for the device to be recharged before continuing. At the same time, the system also monitors the change in storage space. If it finds that the available space is insufficient, it will try to clear the cache or prompt the user to free up space.

[0065] Throughout the update process, the system records various metrics in real time, including download speed, installation progress, resource usage, etc., and associates these logs with the previously generated unique identifier. These data will be used for subsequent update optimization and problem diagnosis.

[0066] After the update is completed, the system performs a self-check to verify whether the update is successfully installed and the functions are normal. If problems are found, it will automatically roll back to the previous version and report the error information to the server. If the update is successful, it will non-intrusively prompt the user that the update is completed the next time the user uses it and briefly introduce the main improvements of the new version.

[0067] Through this personalized update scheme, the update efficiency and user experience can be effectively balanced, ensuring that the software always remains up-to-date while minimizing the impact on the user's daily use.

[0068] In an alternative implementation, the silent update execution process further includes: Before downloading the update package, verify the network connection status and type of the user's device, preferentially use the Wi-Fi network, and ask the user whether to allow the update under the mobile data network; Use incremental update technology to only download and install the changed parts, reducing the update package size and installation time; During the update installation process, a temporary backup of the application data is created to enable quick recovery in case the update fails. After the update is completed, automated tests are executed to verify the availability of critical functions. If a test fails, a rollback mechanism is triggered.

[0069] During the silent update process, it is first necessary to verify the network connection status and type of the user's device. The system detects the current network environment and preferentially selects the Wi-Fi network for the update. If it detects that the device is using a mobile data network, a prompt box will pop up asking the user if they allow the update over the mobile network. This can prevent unexpected data charges for the user.

[0070] After confirming the network environment, the system uses incremental update technology to download and install the update package. The specific approach is to compare the new version with the current version and only download the parts that have changed. For example, if an application is updated from version 1.0 to 1.1, perhaps only a small amount of code has changed, then the size of the incremental update package may be only a few hundred KB instead of dozens of MB for the full installation package. This method can significantly reduce the size of the update package, shorten the download and installation time, and improve the update efficiency.

[0071] Before starting to install the update, the system creates a temporary backup of the application data. This includes key information such as the application's configuration files and user data. The backup is stored in a secure partition of the device. If an unexpected interruption or failure occurs during the update, the system can use this backup to quickly restore the application to its state before the update and avoid data loss.

[0072] After the update installation is completed, the system automatically executes a series of automated tests to verify whether the critical functions of the application are normal. The test cases may include: starting the application, logging in to the account, accessing the main interface, performing basic operations, etc. If a certain test fails, such as the application cannot be started normally, the system will immediately trigger the rollback mechanism. The rollback process will use the previously created backup to restore the application to the version and state before the update.

[0073] To ensure the stability and reliability of the update process, the system also implements multiple protection mechanisms. For example, an MD5 check is performed when downloading the update package to ensure that the downloaded file is intact. During the installation process, the system monitors the CPU usage rate and memory occupancy. If any abnormalities are found, the installation will be paused and retried. In addition, there is a timeout protection for the entire update process. If a certain step takes too long to execute, the system will automatically abort the update and perform a rollback.

[0074] After the update is completed, the system will collect relevant logs and statistical data, including information such as the update duration, success rate, and reasons for failure. These data will be encrypted and uploaded to the server for subsequent analysis and optimization. The development team can use these data to improve the update algorithm, increase the success rate, and optimize the user experience.

[0075] Through the above series of carefully designed steps and mechanisms, silent updates can efficiently complete the upgrade of applications while ensuring security and stability, minimizing interference to users, and providing a smooth usage experience.

[0076] In an alternative implementation, the update result feedback also includes: Recording detailed logs during the update process, including the start and end times of each update step, resource occupancy, and exceptions encountered; Collecting performance metrics when the user first uses the application after the update, including startup time, memory occupancy, and response speed; Collecting subjective evaluations and functional suggestions from users through lightweight user surveys regarding the application after the update; Comparing the application crash rates and error logs before and after the update to evaluate the impact of the update on application stability.

[0077] In the specific implementation, the detailed steps of the update result feedback are as follows: First, the system will record detailed log information in real time during the update process. The log content includes the start time and end time of each update step, recorded with millisecond precision. For example, the start time of "Step 1: Download the update package" is "2023-05-01 10:00:00.123" and the end time is "2023-05-01 10:00:05.456". At the same time, resource conditions such as CPU usage rate and memory occupancy will also be recorded, such as "CPU usage rate: 25%, memory occupancy: 100MB". If an exception is encountered, the exception type and detailed information will be recorded, such as "Network connection failed, error code: 404". These log information will be saved in a local file for subsequent analysis.

[0078] Second, the system will automatically collect a series of performance metrics when the user completes the update and first opens the application. This includes the cold startup time of the application, that is, the time from clicking the icon to the application being fully available, usually measured in milliseconds. For example, the startup time before the update was 2000ms and after the update it was 1800ms. The memory occupancy during the application's operation will also be recorded, such as the average occupancy before the update was 200MB and after the update it dropped to 180MB. In addition, the response speed of the user interface will be measured, such as the time interval from clicking a button to the response. The average before the update was 100ms and after the update it dropped to 80ms. These data will be sent to the server for analysis.

[0079] Next, after the user has used the updated application for a period of time (such as 3 days), the system will initiate a short user survey in the form of an in-app pop-up window. The survey content includes the user's overall satisfaction with the updated application (on a scale of 1 - 5), whether they noticed performance improvements, and their evaluation of the new features. At the same time, an open-ended question will be provided for users to put forward improvement suggestions. For example, "What other aspects do you think need improvement?". These feedbacks will be collated and sent to the development team.

[0080] Finally, the system will compare the application crash rate and error logs within a week before and after the update. The crash rate is calculated by (number of crashes / number of launches). For example, it was 0.5% before the update and dropped to 0.3% after the update. The error logs will be classified and statistically analyzed by type, such as "network error", "data parsing error", etc., to analyze the changes in the occurrence frequency of various types of errors. For example, "network error" accounted for 30% of the total errors before the update and dropped to 20% after the update. These data will be used to evaluate the impact of the update on the application stability.

[0081] Through the above steps, the system can comprehensively collect and analyze the update results, including objective data at the technical level and users' subjective feelings. This information will provide an important basis for subsequent optimization, helping the development team continuously improve the application quality and user experience. At the same time, this continuous monitoring and feedback mechanism can also promptly detect potential problems and ensure the stability and reliability of the application.

[0082] In an alternative implementation, the following steps are also included: Based on user feedback and update effects, use reinforcement learning algorithms to continuously optimize the update strategy, including adjusting the update time window, update content, and resource usage limits; Establish a rapid response mechanism for user feedback. When a large number of negative feedbacks are detected, automatically pause the update push for this user group and initiate an emergency repair process; Build an update effect evaluation model, comprehensively considering the update success rate, user satisfaction, and application performance improvement, to score each update strategy adjustment; Conduct A / B tests regularly, compare the effects of different update strategies, and promote the best strategy to similar user groups.

[0083] To optimize the application update strategy and improve user satisfaction, this implementation provides a continuous optimization method based on user feedback and update effects. The method includes the following steps: First, build an initial update policy model based on historical update data and user feedback. The model includes key parameters such as update time window, update content, and resource usage restrictions. For example, the update time window can be set to 22:00-6:00 the next day, the update content includes security patches and new features, and the resource usage limit is no more than 50% of the network bandwidth.

[0084] Then, the update strategy is continuously optimized using a reinforcement learning algorithm. Specifically, each update is regarded as an "action", and user feedback and update effects are regarded as "rewards". The policy parameters are adjusted through multiple iterations. For example, if it is detected that the update at night causes the user to experience lag the next day, the update time may be adjusted to the weekend. For another example, if the update of a new function leads to an increase in negative feedback, the update frequency of the new function may be reduced, and the proportion of security patches may be increased.

[0085] Next, establish a quick response mechanism for user feedback. The system monitors user feedback in real time. When it detects that the negative feedback of a user group exceeds the threshold in a short period of time (such as more than 100 in 30 minutes), it automatically suspends the update push for the group. At the same time, the emergency repair process is initiated, including rolling back to the previous stable version, analyzing the cause of the failure, and fixing bugs. For example, if a large number of crash feedback is detected in the Android 11 user group, the update of the group will be suspended immediately, and the repair version will be pushed to it first.

[0086] In order to comprehensively evaluate the update effect, an update effect evaluation model is constructed. This model comprehensively considers multiple dimensions such as update success rate, user satisfaction, and application performance improvement. The update success rate can be measured by the proportion of users who successfully installed the app; user satisfaction can be quantified by changes in App Store ratings and sentiment analysis of user feedback; and application performance improvement can be evaluated by the degree of improvement in indicators such as startup time and memory usage. These indicators are weighted and summed to obtain a comprehensive score for each update. For example, if the success rate of an update is 98%, user satisfaction increases by 2%, and performance increases by 5%, the comprehensive score may be 8.5 points (out of 10 points).

[0087] Finally, conduct A / B tests regularly to compare the effects of different update strategies. For example, users can be randomly divided into two groups, one using the current optimal strategy and the other using a new strategy to be verified. By comparing the update effect scores of the two groups of users over a period of time (such as 2 weeks), the better strategy can be determined. If the score of the new strategy is significantly higher than the current strategy (such as more than 10% higher), the new strategy will be promoted to all similar user groups.

[0088] Through the above steps, the continuous optimization of the update strategy can be achieved, improving user satisfaction and reducing negative impacts. This method can dynamically adjust the strategy according to the actual effects, quickly respond to user feedback, comprehensively evaluate the update effects, and verify the strategy improvements through rigorous A / B tests. This can not only improve the stability and user experience of the application, but also reduce the operation costs and enhance the product competitiveness.

[0089] Figure 2 FIG. is a schematic structural diagram of a targeted application silent update system based on user group characteristics according to an embodiment of the present invention, as Figure 2 shown, the system includes: A first unit, configured to obtain user group information of a target application, perform multi-dimensional clustering analysis on the user group information to obtain a plurality of user feature groups; formulate corresponding application update strategies according to the features of each user feature group, and store the user feature groups and the corresponding application update strategies in a policy database; A second unit, configured to receive an application update request sent by a user device, match the user device to a certain user feature group according to the user device identifier and the current device status information; retrieve the application update strategy corresponding to the user feature group from the policy database; generate a personalized update task for the user device according to the application update strategy, and send the personalized update task to the user device; A third unit, configured to, after the user device receives the personalized update task, silently execute an update operation in the background, including downloading an update package within a specified time window, verifying the integrity of the update package, and performing an incremental update installation; during the update process, continuously monitor the device resource occupancy situation, and when it is detected that the resource occupancy exceeds a preset threshold, automatically pause the update process and release resources, and automatically resume the update after the resource occupancy decreases; after the update is completed, the user device sends an update result feedback to the server, and the server dynamically adjusts the division of the user feature groups and the application update strategies according to the feedback result, so as to realize the self-optimization and iteration of the update strategy.

[0090] In a third aspect of the embodiments of the present invention, an electronic device is provided, including: A processor; A memory for storing executable instructions of the processor; Wherein, the processor is configured to call the instructions stored in the memory to execute the method described above.

[0091] In a fourth aspect of the embodiments of the present invention, a computer-readable storage medium is provided, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the method described above is implemented.

[0092] The present invention may be a method, apparatus, system, and / or computer program product. The computer program product may include a computer-readable storage medium having thereon computer-readable program instructions for performing various aspects of the present invention.

[0093] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some or all of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the various embodiments of the present invention.

Claims

1. A method for silent updating of directional applications based on user group characteristics, characterized in that: include: Acquire user group information of the target application, perform multi-dimensional cluster analysis on the user group information, and obtain multiple user feature groups; Formulate corresponding application update strategies according to the characteristics of each user characteristic group, and store the user characteristic groups and corresponding application update strategies in a strategy database; Receiving an application update request sent by a user device, and matching the user device to a certain user feature group according to the user device identifier and the current state information of the device; Retrieving an application update policy corresponding to the user feature group from a policy database; generating a personalized update task for the user device according to the application update policy, and sending the personalized update task to the user device; After the user device receives the personalized update task, it silently performs the update operation in the background, including downloading the update package within the specified time window, verifying the integrity of the update package, and performing incremental update installation; during the update process, the device resource usage is continuously monitored. When it is detected that the resource usage exceeds the preset threshold, the update process is automatically paused and resources are released. The update is automatically resumed after the resource usage is reduced; after the update is completed, the user device sends update result feedback to the server. Based on the feedback results, the server dynamically adjusts the division of user feature groups and application update strategies to achieve self-optimization and iteration of the update strategy.

2. The method according to claim 1, characterized in that Multidimensional cluster analysis includes the following sub-steps: Perform data preprocessing on user group information, including data cleaning, outlier detection, and feature standardization; The preprocessed data is clustered using a hybrid clustering algorithm, wherein the hybrid clustering algorithm includes a combination of a K-means algorithm and a hierarchical clustering algorithm; The silhouette coefficient and Davies-Bouldin index were used to evaluate the clustering effect, and the optimal number of clusters was determined through iterative optimization. Based on the clustering results, the core features of each user feature group are extracted, and descriptive labels of the user feature groups are generated.

3. The method according to claim 1, characterized in that The process of developing an app update strategy includes: Based on historical update data, a machine learning model is built to predict the optimal update time window and network resource usage limit for different user feature groups; Based on the functional modules of the application, differentiated update content is customized for each user feature group, including core function updates, performance optimization and personalized functions; Set up an update priority scoring system to dynamically adjust the update order of user feature groups by comprehensively considering user activity, device performance, and network conditions; Establish an update rollback mechanism. When it is detected that an update causes application performance to degrade or the crash rate to increase, the rollback operation is automatically triggered to restore to the previous stable version.

4. The method according to claim 1, characterized in that: The process of generating a personalized update task includes: Dynamically calculate the most suitable update package size and number of shards based on the hardware configuration and storage space of the user's device; Based on the user's historical usage behavior, predict the user's inactive period and schedule the update time within this period; Set multiple levels of resource usage limits, including CPU usage, memory usage, network bandwidth, and battery consumption, and dynamically adjust these limits based on the current state of the device; Generates a unique identifier for the update task, which is used to track the update progress and record the update log.

5. The method according to claim 1, characterized in that The silent update execution process also includes: Before downloading the update package, verify the network connection status and type of the user's device, give priority to using the Wi-Fi network, and ask the user whether to allow the update under the mobile data network; Use incremental update technology to download and install only the changed parts, reducing the update package size and installation time; During the update installation process, create a temporary backup of the application data to quickly restore in case of update failure; After the update is completed, automated testing is performed to verify the availability of key functions. If the test fails, the rollback mechanism is triggered.

6. The method according to claim 1, characterized in that Updated feedback also includes: Record detailed logs during the update process, including the start and end time of each update step, resource usage, and exceptions encountered; Collect performance metrics when users use the app for the first time after an update, including startup time, memory usage, and response speed; Through lightweight user surveys, collect users' subjective evaluations and feature suggestions on updated apps; Compare the app crash rate and error logs before and after the update to evaluate the impact of the update on the app stability.

7. The method according to claim 1, characterized in that The following steps are also included: Based on user feedback and update results, we use reinforcement learning algorithms to continuously optimize update strategies, including adjusting update time windows, update content, and resource usage limits. Establish a quick response mechanism for user feedback. When a large amount of negative feedback is detected, the update push for the user group will be automatically suspended and the emergency repair process will be initiated; Build an update effect evaluation model that comprehensively considers update success rate, user satisfaction, and application performance improvement, and adjusts the score for each update strategy; Run A / B tests regularly to compare the effectiveness of different update strategies and roll out the best strategy to similar groups of users.

8. A directional application silent update system based on user group characteristics, used to implement the method according to any one of claims 1 to 7, characterized in that: include: The first unit is used to obtain user group information of a target application, and perform multi-dimensional cluster analysis on the user group information to obtain multiple user feature groups; Formulate corresponding application update strategies according to the characteristics of each user characteristic group, and store the user characteristic groups and corresponding application update strategies in a strategy database; The second unit is used to receive an application update request sent by a user device, and match the user device to a certain user feature group according to the user device identifier and the current state information of the device; Retrieving an application update policy corresponding to the user feature group from a policy database; generating a personalized update task for the user device according to the application update policy, and sending the personalized update task to the user device; The third unit is used to silently perform update operations in the background after the user device receives the personalized update task, including downloading the update package within the specified time window, verifying the integrity of the update package, and performing incremental update installation; during the update process, the device resource usage is continuously monitored. When it is detected that the resource usage exceeds the preset threshold, the update process is automatically paused and the resources are released, and the update is automatically resumed after the resource usage is reduced; after the update is completed, the user device sends update result feedback to the server, and the server dynamically adjusts the division of user feature groups and application update strategies based on the feedback results to achieve self-optimization and iteration of the update strategy.

9. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to call the instructions stored in the memory to execute the method described in any one of claims 1 to 7.

10. A computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Power customer portrait generation management method and system

    CN116226293A

  • Resource dynamic scheduling technology of distributed cloud computing system

    CN117762644A

  • Medical gas equipment operation system updating method based on data calculation

    CN118349267A

  • Data updating method, device and system, computer equipment and readable storage medium

    CN119356711A

  • Internet of Things equipment updating method and device, electronic equipment and storage medium

    CN119676080A

Cited By

  • System updating method, product, equipment and medium

    CN120653280A