An automatic upgrading method, device and equipment

By analyzing the application usage, sleep time, and screen operation time of wearable devices, the system automatically selects idle time periods for upgrades, solving the problem of manual user operation required for wearable device upgrades and improving the user experience.

CN122195461APending Publication Date: 2026-06-12HANGZHOU EZVIZ SOFTWARE CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HANGZHOU EZVIZ SOFTWARE CO LTD
Filing Date
2024-12-11
Publication Date
2026-06-12

AI Technical Summary

Technical Problem

Upgrading wearable devices requires manual operation by users, which increases the operational cost for users and affects the user experience during the upgrade process.

Method used

By analyzing the application runtime, sleep time, and screen operation time of wearable devices, idle periods are identified, and upgrades are automatically performed during these periods, avoiding upgrades during user operation or sleep.

Benefits of technology

It enables automatic upgrades for wearable devices, reduces user operating costs, improves user experience, and does not affect normal use.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122195461A_ABST
    Figure CN122195461A_ABST
Patent Text Reader

Abstract

The application provides an automatic upgrading method, device and equipment. The method comprises the following steps: counting the application running time of a wearable device in a historical time interval, counting the sleep time of the user wearing the wearable device in the historical time interval; for each time period, determining the target cumulative proportion value of the time period based on the application running time and the sleep time; the target cumulative proportion value is greater if the application running time indicates that the time period is occupied by the application more times; and / or, the target cumulative proportion value is greater if the sleep time indicates that the time period is occupied by sleep more times; selecting a time period with a smaller target cumulative proportion value from the multiple time periods in a unit time period as an idle time period based on the target cumulative proportion value of each time period; and automatically upgrading the wearable device based on the idle time period. Through the technical solution of the application, the automatic upgrading of the wearable device can be realized, and the wearable device can be automatically upgraded in the idle time period.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of wearable device technology, and in particular to an automatic upgrade method, apparatus and device. Background Technology

[0002] Wearable devices are portable devices worn directly on the user's body, or integrated into clothing or accessories. They are not merely hardware devices, but rather devices that achieve powerful functions through software support, data interaction, and cloud interaction. Wearable devices exist as portable accessories with some computing capabilities, capable of connecting to mobile phones and various terminals. Product forms of wearable devices include wrist-supported devices (such as watches and wristbands), foot-supported devices (such as shoes, socks, or leg-mounted products), and head-supported devices (such as glasses, helmets, and headbands). Wearable device product forms can also include smart clothing, backpacks, canes, and accessories.

[0003] To ensure the normal operation of wearable devices, they require frequent upgrades. To upgrade, users need to click the upgrade button on the wearable device to download and complete the software package upgrade. However, this manual clicking increases the user's operational burden. Furthermore, during the upgrade process, users are unable to operate the wearable device, negatively impacting the user experience. Summary of the Invention

[0004] This application provides an automatic upgrade method applied to wearable devices, the method comprising:

[0005] The application running time of the wearable device in the historical time interval is statistically analyzed, and the sleep time of the user wearing the wearable device in the historical time interval is statistically analyzed; wherein, the historical time interval includes K unit time periods, K is a positive integer, and each unit time period includes multiple time periods;

[0006] For each time period, a target cumulative weight value is determined based on the application runtime and the sleep time; wherein, if the application runtime indicates that the application occupies the time period more often, the target cumulative weight value is larger; and / or, if the sleep time indicates that the sleep time occupies the time period more often, the target cumulative weight value is larger.

[0007] Based on the target cumulative weight value for each time period, the time period with the smaller target cumulative weight value is selected from the multiple time periods of the unit time period as the idle time period;

[0008] The wearable device is automatically upgraded based on the idle time period.

[0009] This application provides an automatic upgrade device for wearable devices, the device comprising:

[0010] The statistics module is used to count the application running time of the wearable device in a historical time interval and to count the sleep time of the user wearing the wearable device in the historical time interval; wherein, the historical time interval includes K unit time periods, K is a positive integer, and each unit time period includes multiple time periods;

[0011] The determination module is used to determine a target cumulative proportion value for each time period based on the application runtime and the sleep time; wherein, if the application runtime indicates that the application occupies the time period more often, the target cumulative proportion value is larger; and / or, if the sleep time indicates that the sleep time occupies the time period more often, the target cumulative proportion value is larger.

[0012] The selection module is used to select the time period with the smaller target cumulative weight value from the multiple time periods of the unit time period as the idle time period based on the target cumulative weight value of each time period.

[0013] An upgrade module is used to automatically upgrade the wearable device based on the idle time period.

[0014] This application provides an electronic device, including: a processor and a machine-readable storage medium, the machine-readable storage medium storing machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the automatic upgrade method of the above example.

[0015] This application provides a computer program product, which may include a computer program that, when executed by a processor, implements the automatic upgrade method described above.

[0016] This application provides a machine-readable storage medium storing machine-executable instructions that can be executed by a processor; wherein the processor is configured to execute the machine-executable instructions to implement the automatic upgrade method of the example described above when the machine-executable instructions are executed.

[0017] As can be seen from the above technical solutions, in this embodiment, automatic upgrades of wearable devices are achieved without requiring users to manually click the upgrade button, thus reducing user operating costs and automatically completing the upgrade without the user's awareness. Idle time periods are selected based on application running time and sleep time, and the wearable device is automatically upgraded during these periods. This avoids automatic upgrades while the user is operating the application or sleeping, ensuring that the upgrade is completed automatically without affecting user operation and improving the user experience. Furthermore, the device can learn from user scenarios to determine idle time periods and automatically upgrade during these periods. Attached Figure Description

[0018] Figure 1 This is a flowchart illustrating an automatic upgrade method in one embodiment of this application;

[0019] Figure 2 This is a flowchart illustrating an automatic upgrade method in one embodiment of this application;

[0020] Figure 3A and Figure 3B This is a schematic diagram of the target cumulative weight value in one embodiment of this application;

[0021] Figure 4 This is a flowchart illustrating an automatic upgrade method in one embodiment of this application;

[0022] Figure 5 This is a schematic diagram of the structure of an automatic upgrade device in one embodiment of this application;

[0023] Figure 6 This is a hardware structure diagram of an electronic device according to one embodiment of this application. Detailed Implementation

[0024] This application proposes an automatic upgrade method, which can be applied to wearable devices. See [link to relevant documentation]. Figure 1 The diagram shown illustrates the flowchart of this automatic upgrade method, which may include:

[0025] Step 101: Calculate the application running time of wearable devices in the historical time interval and the sleep time of users wearing wearable devices in the historical time interval; wherein, the historical time interval may include K unit time periods, where K is a positive integer, and each unit time period may include multiple time periods.

[0026] Step 102: For each time period, determine the target cumulative weight value for that time period based on the application's runtime and the sleep time; wherein, if the application's runtime indicates that the time period is occupied by the application more often, the target cumulative weight value can be larger; and / or, if the sleep time indicates that the time period is occupied by sleep more often, the target cumulative weight value can be larger.

[0027] Step 103: Based on the target cumulative weight value of each time period, select the time period with the smaller target cumulative weight value from multiple time periods within the unit time period as the idle time period.

[0028] Step 104: Automatically upgrade the wearable device based on the idle time period.

[0029] For example, before determining the target cumulative weight value for a time period based on the application runtime and sleep time, the screen operation time of the wearable device within a historical time interval can also be statistically analyzed. Based on this, determining the target cumulative weight value for a time period based on the application runtime and sleep time can include, but is not limited to, determining the target cumulative weight value for a time period based on the application runtime, sleep time, and screen operation time; wherein, if the screen operation time indicates the number of times the time period is occupied by screen operations, then the target cumulative weight value can be larger. For example, screen operations can represent operations performed when not in the application, and these screen operations can include, but are not limited to, click operations and swipe operations.

[0030] For example, determining the target cumulative weight value for a time period based on the application's runtime and the sleep time may include, but is not limited to: determining an initial weight value for each unit time period; wherein, if the application runtime indicates that the time period of the unit time period is occupied by the application, the initial weight value is a first weight value; or, if the sleep time indicates that the time period of the unit time period is occupied by sleep, the initial weight value is a second weight value; if the time period of the unit time period is neither occupied by the application nor by sleep, the initial weight value is a fixed weight value; wherein, the fixed weight value may be less than the second weight value, and the fixed weight value may be less than the first weight value. The target cumulative weight value is determined based on the initial weight value corresponding to each unit time period.

[0031] For example, determining the target cumulative weight value for a time period based on the application runtime, the sleep time, and the screen operation time may include, but is not limited to: determining an initial weight value for each unit time period; wherein, if the application runtime indicates that the time period of the unit time period is occupied by the application, the initial weight value is a first weight value; or, if the sleep time indicates that the time period of the unit time period is occupied by sleep, the initial weight value is a second weight value; or, if the screen operation time indicates that the time period of the unit time period is occupied by screen operation, the initial weight value is a third weight value; if the time period of the unit time period is not occupied by the application, not occupied by sleep, and not occupied by screen operation, the initial weight value is a fixed weight value; wherein, the fixed weight value is less than the third weight value, the third weight value is less than the first weight value, and the third weight value is less than the second weight value; and determining the target cumulative weight value based on the initial weight value corresponding to each unit time period.

[0032] For example, if the application runtime indicates that the application occupies a certain time period within a unit time cycle, the behavior level corresponding to the application occupying that time period can be determined, and a first adjustment coefficient corresponding to the behavior level can be determined, wherein the first adjustment coefficient is a value greater than 0; based on the first adjustment coefficient, the weight coefficient corresponding to the unit time cycle, and the configured baseline weight value, a first weight value is determined; wherein, the smaller the interval between the unit time cycle and the current moment, the larger the weight coefficient. If the sleep time indicates that the sleep period within a unit time cycle is occupied by sleep, a second weight value is determined based on the configured second adjustment coefficient corresponding to sleep, the weight coefficient, and the baseline weight value; the second adjustment coefficient can be greater than the first adjustment coefficient. If the screen operation time indicates that the screen operation period within a unit time cycle is occupied by screen operation, a third weight value is determined based on the configured third adjustment coefficient corresponding to screen operation, the weight coefficient, and the baseline weight value; the third adjustment coefficient can be less than the first adjustment coefficient.

[0033] For example, if the wearable device has already undergone an automatic upgrade during this time period, then: if the application runtime indicates that this time period of the unit time cycle is occupied by the application, then the first weight value is determined based on the first adjustment coefficient, the weight coefficient, the baseline weight value, and the configured attenuation coefficient; if the sleep time indicates that this time period of the unit time cycle is occupied by sleep, then the second weight value is determined based on the second adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient; if the screen operation time indicates that this time period of the unit time cycle is occupied by screen operation, then the third weight value is determined based on the third adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient; wherein, the attenuation coefficient is greater than 0 and less than 1.

[0034] For example, the statistical analysis of application runtime of wearable devices over a historical time interval may include, but is not limited to: for applications opened through a user interface, the start time and end time of the application are statistically analyzed, and the time interval between the start time and end time is taken as the application runtime;

[0035] Statistics on the sleep time of users wearing wearable devices within a historical time interval may include, but are not limited to: the start time of falling asleep and the end time of waking up when users wear wearable devices to sleep, and the time interval between the start time of falling asleep and the end time of waking up as the sleep time.

[0036] The statistics of screen operation time of wearable devices within a historical time interval may include, but are not limited to: when the screen is on, the start time and end time of screen operation when no application is entered, and the time interval between the start time and end time of operation is taken as the screen operation time.

[0037] For example, based on the target cumulative weight value of each time period, the time period with the smaller target cumulative weight value is selected as the idle time period from multiple time periods in a unit time period. This may include, but is not limited to: for each time period, if the target cumulative weight value of the time period is less than a preset threshold, then the time period is selected as a candidate time period; if the target cumulative weight value of the time period is not less than the preset threshold, then the time period is selected as a non-candidate time period; the number M is determined based on the upgrade duration of the wearable device and the duration of the time period; if M consecutive time periods are all candidate time periods, then the M time periods are selected as idle time periods.

[0038] For example, automatically upgrading wearable devices based on idle time periods may include, but is not limited to: if an upgrade package for the wearable device exists, then if there is no application activity, no sleep activity, and no screen operation activity at the current idle time period, then the wearable device will be automatically upgraded based on the upgrade package at the current time; if there is application activity, sleep activity, or screen operation activity at the current time, then wait for the next idle time period.

[0039] As can be seen from the above technical solutions, in this embodiment, automatic upgrades of wearable devices are achieved without requiring users to manually click the upgrade button, thus reducing user operating costs and automatically completing the upgrade without the user's awareness. Idle time periods are selected based on application running time and sleep time, and the wearable device is automatically upgraded during these periods. This avoids automatic upgrades while the user is operating the application or sleeping, ensuring that the upgrade is completed automatically without affecting user operation and improving the user experience. Furthermore, the device can learn from user scenarios to determine idle time periods and automatically upgrade during these periods.

[0040] The technical solutions of the embodiments of this application will be described below in conjunction with specific application scenarios.

[0041] To upgrade a wearable device, users need to click the upgrade button on the device to download and complete the software package upgrade. However, this manual clicking increases the user's operational burden. Furthermore, the wearable device is unusable during the upgrade process, impacting the user experience.

[0042] Furthermore, wearable devices can be upgraded at fixed times, such as midnight. However, if users need to operate the wearable device's applications at a fixed time, upgrading at that time can also render the wearable device unusable, impacting the user experience. Alternatively, wearable devices are typically used to monitor a user's sleep patterns, and upgrading at midnight could result in the loss of sleep data.

[0043] In response to the above findings, this application proposes an automatic upgrade method for wearable devices. Automatic upgrade refers to automatically detecting the differences between the currently installed version and the latest version, automatically downloading, installing, and configuring the latest software version. This automatic upgrade function allows users to more easily keep their system up-to-date and reduces their burden. To align with users' expectations for the intelligent use of wearable devices, automatic upgrades can be achieved without affecting user operation. Upgrades can be completed automatically without the user's awareness, improving the user's product experience.

[0044] For example, idle time periods of wearable devices can be periodically counted, such as every 24 hours or every 12 hours, without limitation. In this way, when an upgrade is needed, the wearable device can be automatically upgraded based on the idle time periods.

[0045] When analyzing the idle time periods of wearable devices, the corresponding historical time interval for that day can be determined. For example, the consecutive N days preceding that day can be used as the historical time interval, where N can be a positive integer. For instance, the consecutive 30 days preceding that day can be used as the historical time interval, the consecutive 20 days preceding that day can be used as the historical time interval, and so on. In this embodiment, the length N of this historical time interval is not limited.

[0046] The unit time period can be pre-configured. The unit time period can be 1 day, 2 days, 12 hours, 6 hours, etc. There is no restriction on the unit time period. Taking a unit time period of 1 day as an example.

[0047] A historical time interval can include K unit time periods, where K is a positive integer. For example, if the preceding 30 days are used as the historical time interval and the unit time period is 1 day, the historical time interval can include 30 unit time periods. If the preceding 30 days are used as the historical time interval and the unit time period is 12 hours, the historical time interval can include 60 unit time periods.

[0048] The duration of the time period can be pre-configured, such as 1 minute, 5 minutes, 10 minutes, etc., or it can be determined based on the upgrade duration of the wearable device. For example, if the upgrade duration is 30 minutes, the time period can be greater than or equal to 30 minutes to ensure that the upgrade of the wearable device can be completed within a time period.

[0049] For each unit time period, the unit time period can include multiple time segments. Taking a unit time period of 1 day as an example, if the time segment is 10 minutes, the unit time period can include 144 time segments. If the time segment is 5 minutes, the unit time period can include 288 time segments.

[0050] This application proposes an automatic upgrade method, which may involve an idle time period statistics process and an automatic upgrade process. For the idle time period statistics process, the idle time periods of wearable devices can be periodically counted. For the automatic upgrade process, when an upgrade is needed, the wearable device can be automatically upgraded based on the idle time periods. The idle time period statistics process and the automatic upgrade process are described below.

[0051] Regarding the statistics process during idle time periods, this application proposes an automatic upgrade method. This method can be applied to wearable devices, including wrist-supported devices such as watches (e.g., wristwatches and wristbands), foot-supported devices such as shoes (e.g., shoes, socks, or leg-wearing products), and head-supported devices such as glasses, helmets, and headbands. There are no restrictions on the type of wearable device.

[0052] See Figure 2The diagram shown illustrates the flowchart of an automatic upgrade method, which may include:

[0053] Step 201: Calculate the application runtime of wearable devices within a historical time interval.

[0054] For example, for an application opened through the user interface, the start and end times of use are recorded. The time interval between the start and end times is taken as the application runtime, which is the time the user spends using the application on the wearable device. For instance, when a user is using an application, they may not want it to be interrupted by an update, such as for fitness apps, stopwatches, or music apps. Therefore, the application opened through the user interface is considered the currently used application, and the time interval between its start and end times can be used as the application runtime. For example, see Table 1 for an example of application runtime on a wearable device within a historical time interval.

[0055] Table 1

[0056]

[0057]

[0058] As shown in Table 1, data needs to be collected within a one-day interval (or 2-30 days) from the current day. Within that day, if the wearable device runs application A (opened through the user interface) from 0:00 to 0:15, then the time interval between the start time of application A (0:00) and the end time of application A (0:15) is considered the application's running time. If the wearable device runs application B from 0:30 to 0:55, then the time interval between the start time of application B (0:30) and the end time of application B (0:55) is considered the application's running time. This process continues, and based on the application usage patterns for that day, the application running times shown in Table 1 can be calculated.

[0059] Obviously, for each day of the historical time interval, the application running time can be calculated based on the application running status of that day, thus obtaining the application running time of the historical time interval, as shown in Table 1.

[0060] Step 202: Calculate the sleep time of users wearing wearable devices within a historical time interval.

[0061] For example, the sleep onset time and sleep end time when a user wears a wearable device to sleep can be statistically analyzed, and the time interval between these two times can be considered as the sleep time. For instance, when a user falls asleep wearing a wearable device (such as a watch), they may not want the device to update during sleep, as this would interrupt sleep monitoring and prevent the acquisition of accurate sleep data. Furthermore, the vibrations from the device's motor during updates could negatively impact sleep quality. Therefore, when a user wears a wearable device to sleep, the time interval between the sleep onset time and sleep end time can be considered as the sleep time. The sleep onset time and sleep end time can be determined based on the user's physical characteristics, or other methods can be used; there are no restrictions on the determination method. For example, see Table 2 for examples of sleep time when a user wears a wearable device within a historical time interval.

[0062] Table 2

[0063]

[0064]

[0065] As shown in Table 2, data needs to be collected within a one-day interval (or 2-30 days) from the current day. Within that day, if the user wears the wearable device and sleeps between 1:00 AM and 8:15 AM, then the time interval between 1:00 AM (when the user falls asleep) and 8:15 AM (when the user falls asleep) can be considered the sleep time. If the user wears the wearable device and sleeps between 12:30 PM and 12:55 AM, then the time interval between 12:30 PM (when the user falls asleep) and 12:55 AM (when the user falls asleep) can be considered the sleep time. And so on. Based on the sleep patterns of that day, the sleep time shown in Table 2 can be calculated. Clearly, for each day within the historical time interval, the sleep time can be calculated based on the sleep patterns of that day, thus obtaining the sleep time for the historical time interval, as shown in Table 2.

[0066] Step 203: Calculate the screen operation time of wearable devices within the historical time interval.

[0067] For example, when the wearable device screen is on, the start and end times of screen operations when not in an application are recorded, and the time interval between the start and end times is taken as the screen operation time. For instance, screen operations can represent actions performed when not in an application, and these operations can include, but are not limited to, clicks and swipes.

[0068] For example, when the wearable device screen is on, users may tap or swipe the screen, but they haven't entered an application yet (application runtime is recorded when an application is entered). We don't want these tapping and swiping operations to be interrupted by an upgrade. Therefore, the time interval between the start and end times of a screen operation can be defined as the screen operation time (i.e., the time spent on touch taps, swipes, etc., while the screen is on). For example, see Table 3 for examples of screen operation times for wearable devices within historical time intervals.

[0069] Table 3

[0070]

[0071] As shown in Table 3, it is necessary to collect data within a 1-day (or 2-30-day) interval from the current day. Within this day, if a user operates the screen between 0:16 and 0:18, then the time interval between the start time (0:16) and end time (0:18) of the screen operation is considered the screen operation time. Similarly, based on the screen operation data for this day, the screen operation times shown in Table 3 can be calculated.

[0072] Obviously, for each day of the historical time interval, the screen operation time can be calculated based on the screen operation situation on that day, thus obtaining the screen operation time of the historical time interval, as shown in Table 3.

[0073] Step 204: For each time period, determine the initial weight value of that time period in each unit time cycle based on application runtime, sleep time, and screen operation time.

[0074] For example, three key characteristic values ​​are defined according to the actual user scenarios of wearable devices: application runtime, sleep time, and screen operation time. Based on this, idle time periods can be determined based on application runtime, sleep time, and screen operation time. To determine idle time periods, the initial proportion of each time period in each unit time cycle is first determined based on application runtime, sleep time, and screen operation time.

[0075] For example, assuming the preceding 30 days are considered a historical time interval, with each unit time period being 1 day, then the historical time interval can include 30 unit time periods. That is, each time period (hereinafter, taking time period t1 as an example) corresponds to 30 unit time periods. For instance, time period 1, which is 1 day from the current day, includes time period t1; time period 2, which is 2 days from the current day, includes time period t1; and so on, with time period 30, which is 30 days from the current day, including time period t1.

[0076] For example, the initial weight of time period t1 within unit time period 1 can be determined based on the application runtime, sleep time, and screen operation time within unit time period 1. Similarly, the initial weight of time period t1 within unit time period 2 can be determined based on the same data. This process can be repeated to obtain the initial weight of time period t1 in each unit time period. For ease of description, taking the initial weight of time period t1 within a specific unit time period 1 as an example, the initial weight can be determined as follows.

[0077] Case 1: If the application runtime indicates that the application occupies this time period within the unit time period 1, then the initial weight value of this time period corresponding to the unit time period 1 is determined to be the first weight value.

[0078] For example, as shown in Table 1, if the application running time corresponding to day 1 includes this time period (i.e., the application running time completely includes this time period or the application running time partially includes this time period), it means that this time period of unit time cycle 1 is occupied by the application (i.e., the application runs during this time period). Therefore, the initial weight value of this time period corresponding to unit time cycle 1 can be the first weight value.

[0079] In one possible implementation, the first weight value can be determined as follows: determine the behavior level corresponding to the application occupying the time period, determine the first adjustment coefficient corresponding to the behavior level (the adjustment coefficient corresponding to the behavior level is called the first adjustment coefficient), and determine the first weight value based on the first adjustment coefficient, the weight coefficient corresponding to the unit time period, and the configured benchmark weight value.

[0080] For example, a mapping relationship between applications and behavior levels can be pre-configured. For an application that occupies a given time period, the corresponding behavior level can be obtained by querying this mapping relationship. For instance, applications involving occasional behaviors correspond to lower behavior levels, such as checking the weather or making phone calls; these applications have a behavior level of 1. Applications involving frequently occurring habits correspond to higher behavior levels, such as walking, yoga, using a treadmill, or listening to music; these applications have a behavior level of 2. Of course, applications can also be divided into more behavior levels; for example, checking the weather might have a behavior level of 1, making phone calls might have a behavior level of 2, walking, yoga, and treadmills might have a behavior level of 3, and listening to music might have a behavior level of 4.

[0081] Regarding the mapping relationship between applications and behavior levels, this embodiment does not impose any restrictions; the mapping relationship can be pre-configured. Furthermore, for each application, regarding how to determine whether it belongs to an application of occasional behavior or a common habitual behavior, it can be pre-configured as either an application of occasional behavior or an application of common habitual behavior. Alternatively, it can count the number of times the application has been run over a period of time; if the number of runs exceeds a preset threshold, the application belongs to a common habitual behavior application; if the number of runs does not exceed the preset threshold, the application belongs to an application of occasional behavior.

[0082] For example, a mapping relationship between behavior levels and adjustment coefficients can be pre-configured. After obtaining the behavior level corresponding to the application, the first adjustment coefficient corresponding to that behavior level can be obtained by querying the mapping relationship. For instance, when pre-configuring the mapping relationship between behavior levels and adjustment coefficients, the higher the behavior level, the larger the corresponding adjustment coefficient, and the adjustment coefficient is a value greater than 0. The adjustment coefficient can be greater than 1, or less than or equal to 1; taking an adjustment coefficient less than or equal to 1 as an example.

[0083] For example, behavior level 1 can correspond to an adjustment factor of 0.5, and behavior level 2 can correspond to an adjustment factor of 0.8. Another example is behavior level 1, which can correspond to an adjustment factor of 0.4, behavior level 2, which can correspond to an adjustment factor of 0.6, behavior level 3, which can correspond to an adjustment factor of 0.8, and behavior level 4, which can correspond to an adjustment factor of 1.0.

[0084] For example, a baseline weight value can be pre-configured. The baseline weight value can be configured based on experience, indicating that the initial weight value is obtained by adjusting based on the baseline weight value, such as 1, 2, etc.

[0085] For example, a weighting coefficient can also be determined for each unit of time period. For instance, the smaller the interval between the unit of time period and the current moment (the day), the larger the weighting coefficient. For example, unit time period 1 has the smallest interval with the day, so its weighting coefficient is the largest, such as 1. Unit time period 30 has the largest interval with the day, so its weighting coefficient is the smallest, such as 0.2. The weighting coefficients for other unit of time periods can be between 0.2 and 1, as long as the smaller the interval, the larger the weighting coefficient. This will not be elaborated further.

[0086] When determining the weight coefficient corresponding to a unit time period, the decay coefficient of the weight coefficient can also be determined based on the application running time, sleep time and screen operation time of the previous unit time period. The decay coefficient can be 1 or a value less than 1 (such as 0.6, 0.8, etc.).

[0087] For example, the initial weight coefficient for unit time period 1 is 1. Based on the application running time, sleep time, and screen operation time of the previous unit time period 2, if it is known that the time period is occupied by an application, sleep, or screen operation, then the decay coefficient of this weight coefficient is 1. Therefore, the weight coefficient for unit time period 1 is 1 (1*1). If it is known that the time period is not occupied by an application, sleep, or screen operation, then the decay coefficient of this weight coefficient is 0.6. Therefore, the weight coefficient for unit time period 1 is 0.6 (1*0.6).

[0088] For example, the first weight value can be determined based on the first adjustment coefficient, the weight coefficient, and the benchmark weight value, such as using the product of the first adjustment coefficient, the weight coefficient, and the benchmark weight value as the first weight value. For instance, assuming the first adjustment coefficient corresponding to the behavior level is 0.8, the weight coefficient corresponding to a unit time period of 1 is 1, and the benchmark weight value is 1, then the first weight value can be 0.8 (0.8*1*1).

[0089] Scenario 2: If sleep time indicates that this period of time within a unit of time cycle 1 is occupied by sleep, then the initial weight value corresponding to this period of time within that unit of time cycle 1 is determined to be the second weight value. For example, the second weight value can be greater than, equal to, or less than the first weight value.

[0090] For example, as shown in Table 2, if the sleep time corresponding to day 1 includes this time period, it means that this time period of unit time cycle 1 is occupied by sleep (i.e., the user sleeps during this time period). Therefore, the initial weight value of this time period corresponding to unit time cycle 1 can be the second weight value.

[0091] In one possible implementation, the second weight value can be determined as follows: based on the configured second adjustment coefficient corresponding to sleep (the adjustment coefficient corresponding to sleep is referred to as the second adjustment coefficient), the weight coefficient corresponding to the unit time period, and the configured benchmark weight value, the second weight value is determined.

[0092] For example, a second adjustment coefficient corresponding to sleep can be pre-configured. This second adjustment coefficient can be greater than or equal to the adjustment coefficient corresponding to the highest behavior level; there is no restriction on this. Obviously, this second adjustment coefficient can be greater than or equal to the first adjustment coefficient. For instance, the second adjustment coefficient can be 1, 0.95, 0.9, etc.; there is no restriction on this second adjustment coefficient.

[0093] For example, a baseline weight value can be pre-configured and the weight coefficient corresponding to a unit time period can be determined. The contents of the baseline weight value and the weight coefficient can be found in Case 1, and will not be repeated here.

[0094] For example, the second weight value can be determined based on the second adjustment coefficient, the weight coefficient, and the benchmark weight value, such as using the product of the second adjustment coefficient, the weight coefficient, and the benchmark weight value as the second weight value. For instance, assuming the second adjustment coefficient corresponding to sleep is 1, the weight coefficient corresponding to a unit time period of 1 is 1, and the benchmark weight value is 1, then the second weight value could be 1.0 (1*1*1).

[0095] Scenario 3: If the screen operation time indicates that this time period within the unit time cycle 1 is occupied by screen operations, then the initial weight value of this time period corresponding to the unit time cycle 1 is determined to be the third weight value. For example, the third weight value can be greater than, equal to, or less than the first weight value.

[0096] The third specific gravity value can be greater than, equal to, or less than the second specific gravity value.

[0097] For example, as shown in Table 3, if the screen operation time corresponding to Day 1 includes this time period, it means that this time period of unit time cycle 1 is occupied by screen operation (i.e., there is screen operation in this time period). Therefore, the initial weight value of this time period corresponding to unit time cycle 1 can be the third weight value.

[0098] In one possible implementation, the third weight value can be determined as follows: based on the third adjustment coefficient corresponding to the configured screen operation (the adjustment coefficient corresponding to the screen operation is referred to as the third adjustment coefficient), the weight coefficient corresponding to the unit time period, and the benchmark weight value, the third weight value is determined.

[0099] For example, a third adjustment factor corresponding to the screen operation can be pre-configured. This third adjustment factor can be less than or equal to the adjustment factor corresponding to the lowest behavior level; there is no restriction on this. Obviously, this third adjustment factor can be less than or equal to the first adjustment factor. For example, the third adjustment factor can be 0.4, 0.35, 0.3, etc.; there is no restriction on this third adjustment factor.

[0100] For example, a baseline weight value can be pre-configured and the weight coefficient corresponding to a unit time period can be determined. The contents of the baseline weight value and the weight coefficient can be found in Case 1, and will not be repeated here.

[0101] For example, the third weight value can be determined based on the third adjustment coefficient, the weight coefficient, and the benchmark weight value, such as using the product of the third adjustment coefficient, the weight coefficient, and the benchmark weight value as the third weight value. For instance, assuming the third adjustment coefficient corresponding to screen operation is 0.3, the weight coefficient corresponding to unit time period 1 is 1, and the benchmark weight value is 1, then the third weight value can be 0.3 (0.3*1*1).

[0102] Scenario 4: If application runtime indicates that this time period within unit time cycle 1 is not occupied by applications, sleep time indicates that this time period within unit time cycle 1 is not occupied by sleep, and screen operation time indicates that this time period within unit time cycle 1 is not occupied by screen operations, then the initial weight value corresponding to this time period within unit time cycle 1 is determined to be a fixed weight value. This fixed weight value can be less than the second weight value, less than the first weight value, and less than the third weight value.

[0103] For example, if the application runtime for Day 1 does not include this time period, it means that this time period within unit time cycle 1 is not occupied by applications. If the sleep time for Day 1 does not include this time period, it means that this time period within unit time cycle 1 is not occupied by sleep. If the screen operation time for Day 1 does not include this time period, it means that this time period within unit time cycle 1 is not occupied by screen operations. In this case, the initial weight value is a fixed weight value, which is a pre-configured empirical value, such as 0, 0.1, etc.

[0104] This completes step 204, obtaining the initial weight value for each unit time period corresponding to this time period.

[0105] Step 205: For each time period, determine the target cumulative weight value for that time period based on the initial weight value corresponding to each unit time cycle. For example, the sum of the initial weight values ​​corresponding to each unit time cycle for that time period can be used as the target cumulative weight value for that time period.

[0106] For example, if time period t1 corresponds to the initial weight value p1 in unit time period 1, the initial weight value p2 in unit time period 2, and so on, the initial weight value p30 in unit time period 30, then the target cumulative weight value p of time period t1 can be expressed as: p = p1 + p2 + ... + p30.

[0107] For example, if the application runtime represents the number of times the application occupies the time period t1, that is, the more times the application occupies the time period t1 in 30 unit time periods, the more the first weight value among the 30 initial weight values ​​will be. And when the first weight value is more, the fourth weight value will be less. Since the first weight value is much greater than the fourth weight value, the target cumulative weight value of the time period t1 will be greater.

[0108] Similarly, if sleep time represents the number of times that time period t1 is occupied by sleep, then there will be more second weight values ​​among the 30 initial weight values. And when there are more second weight values, there will be fewer fourth weight values. Since the second weight value is much larger than the fourth weight value, the target cumulative weight value of that time period t1 will be larger.

[0109] If screen operation time represents the number of times screen operations occupy the time period t1, then the third weight value among the 30 initial weight values ​​will be more. And when the third weight value is more, the fourth weight value will be less. Since the third weight value is much greater than the fourth weight value, the target cumulative weight value of the time period t1 will be greater.

[0110] If the application runtime represents the number of times the application occupies the time period t1, the sleep time represents the number of times the sleep occupies the time period t1, and the screen operation time represents the number of times the screen operation occupies the time period t1, then there will be more fourth weight values ​​among the 30 initial weight values. When there are more fourth weight values, since the fourth weight value is 0 or close to 0, the target cumulative weight value of the time period t1 will be smaller.

[0111] For example, the target cumulative weight value for each time segment within a unit time period can be obtained using the above method. For instance, assuming a time segment is 10 minutes and the unit time period includes 144 time segments, the target cumulative weight value corresponding to each of the 144 time segments can be obtained.

[0112] In one possible implementation, see Figure 3A The diagram shows the target cumulative weight value for each time period. The horizontal axis represents the unit time period (e.g., 0-24 hours), which can be divided into multiple time periods. The vertical axis represents the target cumulative weight value for the historical time interval (e.g., the target cumulative weight value for 30 days, which is obtained by summing the initial weight values ​​for 30 days).

[0113] See Figure 3AAs shown, user behavior can be continuously accumulated, and the time periods (i.e., application running behavior, sleep behavior, and screen operation behavior) that generate characteristic behaviors (i.e., application running time, sleep time, and screen operation time) can be statistically analyzed on a daily basis. The wearable device automatically records and calculates the proportion of each time period, and accumulates overlapping time periods. The statistical time range is N days (e.g., 30 days). When calculating the target cumulative proportion value, the further away from the current day, the lower the influence proportion. A time period with a target cumulative proportion value of 0 indicates that the user did not perform any of the three characteristic behaviors, and the wearable device is in an idle state.

[0114] In one possible implementation, see Figure 3B The diagram illustrates the target cumulative weight for each time period. The horizontal axis represents a unit time period (e.g., 0-24 hours), which can be divided into multiple time periods. The vertical axis represents the target cumulative weight for a historical time interval (e.g., the target cumulative weight for 30 days, obtained by summing the initial weights over 30 days). For each time period, steps 201-205 can be used to obtain the target cumulative weight for that time period.

[0115] Step 206: Based on the target cumulative weight value of each time period, select the time period with the smaller target cumulative weight value from multiple time periods (i.e. all time periods) within the unit time period as the idle time period.

[0116] For example, for each time period, if the target cumulative weight value of that time period is less than a preset threshold (which can be configured based on experience), then that time period is considered a candidate time period; that is, the time period with the smaller target cumulative weight value is considered a candidate time period. If the target cumulative weight value of that time period is not less than the preset threshold, then that time period is considered a non-candidate time period; that is, that time period is not considered a candidate time period. Obviously, see [link to relevant documentation]. Figure 3A and Figure 3B As shown, a horizontal line can be drawn, which is the target cumulative weight value of a preset threshold. In this way, the time period corresponding to the target cumulative weight value below the horizontal line is used as the candidate time period, while the time period corresponding to the target cumulative weight value above the horizontal line is used as the non-candidate time period.

[0117] The quantity M can be determined based on the upgrade duration of the wearable device and the duration of the time period. For example, the upgrade duration can be divided by the duration of the time period and rounded up to obtain the quantity M. The upgrade duration of the wearable device represents the time required for an automatic upgrade. This upgrade duration can be estimated based on the upgrade package size, the historical upgrade duration of the wearable device, or the upgrade duration of other wearable devices (such as the actual time consumed by other wearable devices when using the same upgrade package for automatic upgrades). There are no restrictions on this. For example, the duration of the time period could be 10 minutes, etc.

[0118] If M consecutive time periods are all candidate time periods, then those M time periods are designated as idle time periods. For example, if M is 3, and time periods 1 through 3 are all candidate time periods, then time periods 1 through 3 are designated as idle time periods. If time period 6 is a candidate time period, but time period 7 is not, then time period 6 is not designated as an idle time period (the upgrade cannot be completed in time period 6). If time periods 11 through 13 are all candidate time periods, then time periods 11 through 13 are designated as idle time periods, and so on.

[0119] This completes the idle time period statistics process, yielding the idle time periods. Since the idle time periods of wearable devices can be periodically calculated, they need to be updated after each calculation; that is, the wearable device stores the last statistically calculated idle time period. As time changes, the calculated idle time periods can dynamically change according to changes in user behavior, ensuring accurate and effective acquisition of idle time periods and automatic updates based on the latest user behavior.

[0120] Regarding the automatic upgrade process, this application proposes an automatic upgrade method, which can be applied to wearable devices. See [link to relevant documentation]. Figure 4 The diagram shown illustrates the flowchart of the automatic upgrade method, which includes:

[0121] Step 401: Determine if there is an upgrade package for wearable devices. This upgrade package is used to automatically upgrade wearable devices, and it is a new upgrade package that has not yet been used for upgrades.

[0122] If so, it indicates a need for upgrades to wearable devices, proceed to step 402.

[0123] If not, it means there is no need for an upgrade for wearable devices. In the next processing cycle, we will continue to determine whether there is an upgrade package for wearable devices, and so on.

[0124] Step 402: If the current time period is idle, check if at least one of the following exists: application behavior, sleep behavior, and screen operation behavior. If yes, that is, if application behavior, sleep behavior, or screen operation behavior exists at the current time, proceed to step 403. If no, that is, if no application behavior, sleep behavior, or screen operation behavior exists at the current time, proceed to step 404.

[0125] For example, if the current time is in a non-idle period, that is, the current time is not in an idle period, then continue to wait until the current time is in an idle period, and then execute step 402.

[0126] When the current time period is idle, it can query whether there is application behavior at the current time, that is, whether the user is using an application. If yes, there is application behavior at the current time; otherwise, there is no application behavior. It can also query whether there is sleep behavior at the current time, that is, whether the user is sleeping with a wearable device. If yes, there is sleep behavior at the current time; otherwise, there is no sleep behavior. Finally, it can query whether there is screen operation behavior at the current time, that is, whether there are clicks and swipes while the screen is on but the application is not in use. If yes, there is screen operation behavior at the current time; otherwise, there is no screen operation behavior.

[0127] Step 403: If there is application activity, sleep activity, or screen operation activity at the current moment, wait for the next idle time period and do not automatically upgrade the wearable device during the current idle time period.

[0128] Step 404: If there is no application activity, no sleep activity, and no screen operation activity at the current moment, then the wearable device will be automatically upgraded based on the upgrade package at the current moment. This embodiment does not restrict this automatic upgrade process. The automatic upgrade of the wearable device is now complete.

[0129] In one possible implementation, after the wearable device is automatically upgraded during this time period, if the automatic upgrade is successful, the proportion of this time period can be reduced to a certain extent. By reducing the proportion of the time period, the target cumulative proportion value of this time period is reduced, which increases the possibility that this time period will become an idle time period next time, and then the wearable device can continue to be automatically upgraded during this time period.

[0130] In summary, for a certain time period (i.e., the aforementioned idle time period), if the wearable device has already undergone an automatic upgrade during that time period (i.e., the time period was previously an idle time period, and the wearable device underwent an automatic upgrade during that idle time period), then: In step 204, for case 1, if the application runtime indicates that the time period within that unit time cycle is occupied by the application, then the initial weight value corresponding to that time period within that unit time cycle is determined to be the first weight value. Based on the first adjustment coefficient, weight coefficient, baseline weight value, and configured attenuation coefficient, the first weight value is determined, for example, by using the product of the first adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient as the first weight value. The first adjustment coefficient, the weight coefficient, and the baseline weight value will not be elaborated upon here. The attenuation coefficient can be configured empirically, and it should be greater than 0 and less than 1, thereby reducing the value of the first weight value and subsequently reducing the value of the target cumulative weight value, increasing the likelihood that this time period will become an idle time period next time.

[0131] For scenario 2, if sleep time indicates that this period within a unit time cycle is occupied by sleep, then the initial weight value corresponding to this period within that unit time cycle is determined to be the second weight value. This second weight value is determined based on the second adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient. For example, the product of the second adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient can be used as the second weight value. For scenario 3, if screen operation time indicates that this period within a unit time cycle is occupied by screen operation, then the initial weight value corresponding to this period within that unit time cycle is determined to be the third weight value. This third weight value is determined based on the third adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient. For example, the product of the third adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient can be used as the third weight value.

[0132] As can be seen from the above technical solutions, automatic upgrades for wearable devices do not require users to manually click the upgrade button, reducing user operational costs and completing the upgrade automatically without the user's awareness. By selecting idle time periods based on application runtime and sleep time, and automatically upgrading the wearable device during these idle periods, the system avoids automatic upgrades while the user is using the application or sleeping. This ensures that the wearable device upgrades automatically without affecting user operation, improving the user experience. Furthermore, the system can learn from user usage scenarios to identify idle time periods for automatic upgrades.

[0133] Based on the same concept as the methods described above, this application proposes an automatic upgrade device for wearable devices. See [link to relevant documentation]. Figure 5 The diagram shown is a structural schematic of the device, which includes:

[0134] The statistics module 51 is used to count the application running time of the wearable device in a historical time interval and the sleep time of the user wearing the wearable device in the historical time interval; wherein, the historical time interval includes K unit time periods, K is a positive integer, and each unit time period includes multiple time periods;

[0135] The determining module 52 is used to determine a target cumulative proportion value for each time period based on the application running time and the sleep time; wherein, if the application running time indicates that the time period is occupied by the application more times, the target cumulative proportion value is larger; and / or, if the sleep time indicates that the time period is occupied by sleep more times, the target cumulative proportion value is larger.

[0136] The selection module 53 is used to select the time period with the smaller target cumulative weight value from the multiple time periods of the unit time period as the idle time period based on the target cumulative weight value of each time period.

[0137] The upgrade module 54 is used to automatically upgrade the wearable device based on the idle time period.

[0138] For example, the statistics module 51 is further used to count the screen operation time of the wearable device within a historical time interval; when the determination module 52 determines the target cumulative proportion value of the time period based on the application running time and the sleep time, it is specifically used to: determine the target cumulative proportion value of the time period based on the application running time, the sleep time and the screen operation time; wherein, if the screen operation time indicates that the time period is occupied by screen operations more often, the target cumulative proportion value is larger; wherein, the screen operation refers to the operation without entering the application, and the screen operation includes click operation and swipe operation.

[0139] For example, when determining the target cumulative weight value of the time period based on the application running time, the sleep time, and the screen operation time, the determining module 52 is specifically used to: determine the initial weight value corresponding to each unit time period; wherein, if the application running time indicates that the time period of the unit time period is occupied by the application, the initial weight value is a first weight value; or, if the sleep time indicates that the time period of the unit time period is occupied by sleep, the initial weight value is a second weight value; or, if the screen operation time indicates that the time period of the unit time period is occupied by screen operation, the initial weight value is a third weight value; if the time period of the unit time period is not occupied by the application, not occupied by sleep, and not occupied by screen operation, the initial weight value is a fixed weight value; wherein, the fixed weight value is less than the third weight value, the third weight value is less than the first weight value, and the third weight value is less than the second weight value; and determine the target cumulative weight value based on the initial weight value corresponding to each unit time period.

[0140] For example, the determining module 52 is further configured to: if the application running time indicates that the time period of the unit time cycle is occupied by the application, determine the behavior level corresponding to the application occupying the time period, determine a first adjustment coefficient corresponding to the behavior level, and the first adjustment coefficient is a value greater than 0; determine a first weight value based on the first adjustment coefficient, the weight coefficient corresponding to the unit time cycle, and the configured baseline weight value; wherein, the smaller the interval between the unit time cycle and the current moment, the larger the weight coefficient; if the sleep time indicates that the time period of the unit time cycle is occupied by sleep, determine a second weight value based on the configured second adjustment coefficient corresponding to sleep, the weight coefficient, and the baseline weight value; the second adjustment coefficient is greater than the first adjustment coefficient; if the screen operation time indicates that the time period of the unit time cycle is occupied by screen operation, determine a third weight value based on the configured third adjustment coefficient corresponding to screen operation, the weight coefficient, and the baseline weight value; the third adjustment coefficient is less than the first adjustment coefficient.

[0141] For example, if the wearable device has undergone an automatic upgrade during this time period, the determining module 52 is further configured to: if the application running time indicates that the time period of this unit time cycle is occupied by the application, determine the first proportion value based on the first adjustment coefficient, the weight coefficient, the baseline proportion value, and the configured attenuation coefficient; if the sleep time indicates that the time period of this unit time cycle is occupied by sleep, determine the second proportion value based on the second adjustment coefficient, the weight coefficient, the baseline proportion value, and the attenuation coefficient; if the screen operation time indicates that the time period of this unit time cycle is occupied by screen operation, determine the third proportion value based on the third adjustment coefficient, the weight coefficient, the baseline proportion value, and the attenuation coefficient; wherein the attenuation coefficient is greater than 0 and less than 1.

[0142] For example, when the statistics module 51 calculates the application running time of the wearable device within a historical time interval, it is specifically used to: for applications opened through the user interface, calculate the start time and end time of the application, and take the time interval between the start time and the end time as the application running time; when the statistics module 51 calculates the sleep time of the user wearing the wearable device within a historical time interval, it is specifically used to: calculate the start time of falling asleep and the end time of waking up while the user is wearing the wearable device, and take the time interval between the start time of falling asleep and the end time of waking up as the sleep time; when the statistics module 51 calculates the screen operation time of the wearable device within a historical time interval, it is specifically used to: when the screen of the wearable device is on, calculate the start time and end time of screen operations when no application is entered, and take the time interval between the start time and the end time as the screen operation time.

[0143] For example, when the selection module 53 selects a time period with a smaller target cumulative weight value from multiple time periods within a unit time period as an idle time period based on the target cumulative weight value of each time period, it specifically performs the following: for each time period, if the target cumulative weight value of the time period is less than a preset threshold, then the time period is regarded as a candidate time period; if the target cumulative weight value of the time period is not less than the preset threshold, then the time period is regarded as a non-candidate time period; the number M is determined based on the upgrade duration of the wearable device and the duration of the time period; if M consecutive time periods are all candidate time periods, then the M time periods are regarded as idle time periods.

[0144] For example, when the upgrade module 54 automatically upgrades the wearable device based on the idle time period, it is specifically used to: if there is an upgrade package for the wearable device, and if there is no application behavior, no sleep behavior, and no screen operation behavior at the current time during the idle time period, then automatically upgrade the wearable device based on the upgrade package at the current time; if there is application behavior, sleep behavior, or screen operation behavior at the current time, then wait for the next idle time period.

[0145] Based on the same application concept as the above method, this application proposes an electronic device (i.e., a wearable device), see [link to relevant documentation]. Figure 6 As shown, it includes: a processor 61 and a machine-readable storage medium 62, the machine-readable storage medium 62 storing machine-executable instructions that can be executed by the processor 61; the processor 61 is used to execute the machine-executable instructions to implement the automatic upgrade method disclosed in the above example of this application.

[0146] Based on the same concept as the above method, this application also provides a machine-readable storage medium storing a plurality of computer instructions, which, when executed by a processor, can implement the automatic upgrade method disclosed in the above examples of this application.

[0147] The aforementioned machine-readable storage medium can be any electronic, magnetic, optical, or other physical storage device that can contain or store information, such as executable instructions, data, etc. For example, machine-readable storage media can be: RAM (Random Access Memory), volatile memory, non-volatile memory, flash memory, storage drives (such as hard disk drives), solid-state drives, any type of storage disk (such as optical discs, DVDs, etc.), or similar storage media, or combinations thereof.

[0148] Based on the same concept as the methods described above, this application also provides a computer program product, which may include a computer program. When executed by a processor, the computer program implements the automatic upgrade method disclosed in the examples above.

[0149] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, embodiments of this application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0150] The above description is merely an embodiment of this application and is not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. An automatic upgrade method, characterized in that, Applied to wearable devices, the method includes: The application running time of the wearable device in the historical time interval is statistically analyzed, and the sleep time of the user wearing the wearable device in the historical time interval is statistically analyzed; wherein, the historical time interval includes K unit time periods, K is a positive integer, and each unit time period includes multiple time periods; For each time period, a target cumulative weight value is determined based on the application runtime and the sleep time; wherein, if the application runtime indicates that the application occupies the time period more often, the target cumulative weight value is larger; and / or, if the sleep time indicates that the sleep time occupies the time period more often, the target cumulative weight value is larger. Based on the target cumulative weight value for each time period, the time period with the smaller target cumulative weight value is selected from the multiple time periods of the unit time period as the idle time period; The wearable device is automatically upgraded based on the idle time period.

2. The method according to claim 1, characterized in that, Before determining the target cumulative weight value of the time period based on the application running time and the sleep time, the method further includes: counting the screen operation time of the wearable device in a historical time interval; The step of determining the target cumulative weight value for the time period based on the application running time and the sleep time includes: determining the target cumulative weight value for the time period based on the application running time, the sleep time, and the screen operation time; wherein, if the screen operation time indicates that the time period is occupied by screen operations more often, the target cumulative weight value is larger; wherein, screen operation refers to operations that are not performed in the application, and the screen operation includes click operations and swipe operations.

3. The method according to claim 2, characterized in that, Determining the target cumulative weight value for the time period based on the application runtime, the sleep time, and the screen operation time includes: For each unit time period, an initial weight value is determined; wherein, if the application running time indicates that the time period of the unit time period is occupied by the application, the initial weight value is a first weight value; or, if the sleep time indicates that the time period of the unit time period is occupied by sleep, the initial weight value is a second weight value; or, if the screen operation time indicates that the time period of the unit time period is occupied by screen operation, the initial weight value is a third weight value; if the time period of the unit time period is not occupied by the application, not occupied by sleep, and not occupied by screen operation, the initial weight value is a fixed weight value; wherein, the fixed weight value is less than the third weight value, the third weight value is less than the first weight value, and the third weight value is less than the second weight value; The target cumulative weight value is determined based on the initial weight value corresponding to each unit time period.

4. The method according to claim 3, characterized in that, The method further includes: If the application runtime indicates that the application occupies a certain time period within a unit time cycle, then the behavior level corresponding to the application occupying that time period is determined, and a first adjustment coefficient corresponding to the behavior level is determined, wherein the first adjustment coefficient is a value greater than 0; based on the first adjustment coefficient, the weight coefficient corresponding to the unit time cycle, and the configured baseline weight value, the first weight value is determined; wherein, the smaller the interval between the unit time cycle and the current moment, the larger the weight coefficient is. If the sleep time represents that a certain period of time within a unit time cycle is occupied by sleep, then the second weight value is determined based on the configured second adjustment coefficient corresponding to sleep, the weight coefficient, and the benchmark weight value; the second adjustment coefficient is greater than the first adjustment coefficient. If the screen operation time indicates that the time period of the unit time cycle is occupied by screen operation, then the third proportion value is determined based on the third adjustment coefficient corresponding to the configured screen operation, the weight coefficient, and the benchmark proportion value; the third adjustment coefficient is less than the first adjustment coefficient.

5. The method according to claim 4, characterized in that, If the wearable device has undergone an automatic upgrade during this time period, the method further includes: If the application runtime indicates that the application occupies that time period within the unit time cycle, then the first weight value is determined based on the first adjustment coefficient, the weight coefficient, the baseline weight value, and the configured attenuation coefficient; if the sleep time indicates that sleep occupies that time period within the unit time cycle, then the second weight value is determined based on the second adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient; if the screen operation time indicates that screen operation occupies that time period within the unit time cycle, then the third weight value is determined based on the third adjustment coefficient, the weight coefficient, the baseline weight value, and the attenuation coefficient; wherein the attenuation coefficient is greater than 0 and less than 1.

6. The method according to any one of claims 1-5, characterized in that, The step of statistically analyzing the application runtime of the wearable device over a historical time interval includes: for applications opened through the user interface, calculating the start time and end time of the application, and using the time interval between the start time and the end time as the application runtime; The method of statistically analyzing the sleep time of users wearing the wearable device within a historical time interval includes: statistically analyzing the start time of falling asleep and the end time of waking up when users wear the wearable device to sleep, and taking the time interval between the start time of falling asleep and the end time of waking up as the sleep time; The method of statistically analyzing the screen operation time of the wearable device within a historical time interval includes: when the screen is on, calculating the start time and end time of the screen operation when no application is entered, and taking the time interval between the start time and the end time as the screen operation time.

7. The method according to any one of claims 1-5, characterized in that, The step of selecting a time period with a smaller target cumulative weight value from the multiple time periods within the unit time period as an idle time period based on the target cumulative weight value of each time period includes: for each time period, if the target cumulative weight value of the time period is less than a preset threshold, then the time period is designated as a candidate time period; if the target cumulative weight value of the time period is not less than the preset threshold, then the time period is designated as a non-candidate time period; determining a quantity M based on the upgrade duration of the wearable device and the duration of the time period; if M consecutive time periods are all candidate time periods, then the M time periods are designated as idle time periods; The automatic upgrade of the wearable device based on the idle time period includes: if an upgrade package for the wearable device exists, and if there is no application behavior, no sleep behavior, and no screen operation behavior at the current time during the idle time period, then the wearable device is automatically upgraded based on the upgrade package at the current time; if there is application behavior, sleep behavior, or screen operation behavior at the current time, then the user waits for the next idle time period.

8. An automatic upgrading device, characterized in that, For use in wearable devices, the device includes: The statistics module is used to count the application running time of the wearable device in a historical time interval and to count the sleep time of the user wearing the wearable device in the historical time interval; wherein, the historical time interval includes K unit time periods, K is a positive integer, and each unit time period includes multiple time periods; The determination module is used to determine a target cumulative proportion value for each time period based on the application runtime and the sleep time; wherein, if the application runtime indicates that the application occupies the time period more often, the target cumulative proportion value is larger; and / or, if the sleep time indicates that the sleep time occupies the time period more often, the target cumulative proportion value is larger. The selection module is used to select the time period with the smaller target cumulative weight value from the multiple time periods of the unit time period as the idle time period based on the target cumulative weight value of each time period. An upgrade module is used to automatically upgrade the wearable device based on the idle time period.

9. The apparatus according to claim 8, Its features are, in, The statistics module is further used to count the screen operation time of the wearable device within a historical time interval; when the determination module determines the target cumulative weight value of the time period based on the application running time and the sleep time, it is specifically used to: determine the target cumulative weight value of the time period based on the application running time, the sleep time, and the screen operation time; wherein, if the screen operation time represents the number of times the time period is occupied by screen operations, the larger the target cumulative weight value is; wherein, the screen operation refers to the operation without entering the application, and the screen operation includes click operation and swipe operation; Specifically, when the determining module determines the target cumulative weight value for a time period based on the application running time, the sleep time, and the screen operation time, it is used to: determine an initial weight value corresponding to each unit time period; wherein, if the application running time indicates that the time period of the unit time period is occupied by the application, the initial weight value is a first weight value; or, if the sleep time indicates that the time period of the unit time period is occupied by sleep, the initial weight value is a second weight value; or, if the screen operation time indicates that the time period of the unit time period is occupied by screen operation, the initial weight value is a third weight value; if the time period of the unit time period is not occupied by the application, not occupied by sleep, and not occupied by screen operation, the initial weight value is a fixed weight value; wherein, the fixed weight value is less than the third weight value, the third weight value is less than the first weight value, and the third weight value is less than the second weight value; and determine the target cumulative weight value based on the initial weight value corresponding to each unit time period. The determining module is further configured to: if the application running time indicates that the application occupies the time period within the unit time cycle, determine the behavior level corresponding to the application occupying the time period, determine a first adjustment coefficient corresponding to the behavior level, and the first adjustment coefficient is a value greater than 0; determine a first weight value based on the first adjustment coefficient, the weight coefficient corresponding to the unit time cycle, and the configured baseline weight value; wherein, the smaller the interval between the unit time cycle and the current moment, the larger the weight coefficient; if the sleep time indicates that the time period within the unit time cycle is occupied by sleep, determine a second weight value based on the configured second adjustment coefficient corresponding to sleep, the weight coefficient, and the baseline weight value; the second adjustment coefficient is greater than the first adjustment coefficient; if the screen operation time indicates that the time period within the unit time cycle is occupied by screen operation, determine a third weight value based on the configured third adjustment coefficient corresponding to screen operation, the weight coefficient, and the baseline weight value; the third adjustment coefficient is less than the first adjustment coefficient. Wherein, if the wearable device has already undergone an automatic upgrade during the time period, the determining module is further configured to: if the application running time indicates that the time period of the unit time cycle is occupied by the application, determine the first proportion value based on the first adjustment coefficient, the weight coefficient, the baseline proportion value, and the configured attenuation coefficient; if the sleep time indicates that the time period of the unit time cycle is occupied by sleep, determine the second proportion value based on the second adjustment coefficient, the weight coefficient, the baseline proportion value, and the attenuation coefficient; if the screen operation time indicates that the time period of the unit time cycle is occupied by screen operation, determine the third proportion value based on the third adjustment coefficient, the weight coefficient, the baseline proportion value, and the attenuation coefficient; wherein, the attenuation coefficient is greater than 0 and less than 1; Specifically, when the statistics module calculates the application runtime of the wearable device within a historical time interval, it is used to: for applications opened through the user interface, calculate the start time and end time of the application, and take the time interval between the start time and the end time as the application runtime; when the statistics module calculates the sleep time of the user wearing the wearable device within a historical time interval, it is used to: calculate the start time of falling asleep and the end time of waking up while the user is wearing the wearable device, and take the time interval between the start time of falling asleep and the end time of waking up as the sleep time; when the statistics module calculates the screen operation time of the wearable device within a historical time interval, it is used to: when the screen of the wearable device is on, calculate the start time and end time of screen operations when no application is entered, and take the time interval between the start time and the end time as the screen operation time; Specifically, the selection module, based on the target cumulative weight value of each time period, selects the time period with the smaller target cumulative weight value from multiple time periods within a unit time period as the idle time period. This is done as follows: for each time period, if the target cumulative weight value of that time period is less than a preset threshold, then that time period is considered a candidate time period; if the target cumulative weight value of that time period is not less than the preset threshold, then that time period is considered a non-candidate time period; the number M is determined based on the upgrade duration of the wearable device and the duration of the time period; if M consecutive time periods are all candidate time periods, then the M time periods are considered idle time periods. Specifically, when the upgrade module automatically upgrades the wearable device based on the idle time period, it is used to: if an upgrade package for the wearable device exists, and if there is no application activity, no sleep activity, and no screen operation activity at the current idle time period, then automatically upgrade the wearable device based on the upgrade package at the current time; if there is application activity, sleep activity, or screen operation activity at the current time, then wait for the next idle time period.

10. An electronic device, characterized in that, include: A processor and a machine-readable storage medium, the machine-readable storage medium storing machine-executable instructions that can be executed by the processor; The processor is configured to execute machine-executable instructions to implement the method of any one of claims 1-7.