IP Library Granted Patent US 10,225,145
Granted Patent B2
US 10,225,145 · App. 15/608,804 · Granted Mar 5, 2019

Method and device for updating client

Inventors: Zhaolin Feng (Hangzhou, CN); Zhongsheng Liu (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
H04L41/082G06F8/65H04L67/42
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,225,145
App. No.
15/608,804
Granted
Mar 5, 2019
Kind
B2
Abstract

Embodiments of the present application relate to a method for updating a client, a device for updating a client, and a computer program product for updating a client. The method includes determining whether the client is to be updated, in the event that the client is to be updated, determining update packages for the client, determining a user's preferred functions from among functions offered by the client based on saved record of operations of the user corresponding to the client, determining update packages, from among the determined update packages, on which the user's preferred functions depend to serve as preferred packages, and releasing the preferred packages to the client to be updated.

Claims (92)

1. A method, comprising:

determining that a client is to be updated;

in response to the determination that the client is to be updated, determining update packages for the client;

determining a user's preferred functions from among functions offered by the client based at least in part on record of operations of the user corresponding to the client, comprising:

determining a number of times the user has used each function offered by the client within a designated time range based on the saved record of operations of the user corresponding to the client; and

successively selecting a designated number of functions, in sequence from the highest to the lowest number of times used, to serve as the preferred functions of the user, comprising:

determining the designated number based on network environment information from the client and a preset mapping of network environment information to designated numbers;

determining update packages, from among the determined update packages, on which the user's preferred functions depend, to serve as preferred packages, comprising:

determining whether a first update package of the update packages is related to a major vulnerability repair update package, wherein the major vulnerability repair update package relates to a normal operation of the client;

in response to a determination that the first update package of the update packages is related to the major vulnerability repair update package, assigning a first weight to the first update package;

determining whether a second update package of the update packages is required for a preferred function among the preferred functions to operate normally;

in response to a determination that the second update package is required for the preferred function to operate normally, assigning a second weight to the second update package; and

adding the first update package and the second update package to the preferred packages based at least in part on the first weight and the second weight; and

releasing the preferred packages to the client to be updated.

2. The method as described in claim 1 , further comprising:

prior to the determining of the user's preferred functions from among the functions offered by the client:

receiving the network environment information from the client.

3. The method as described in claim 1 , wherein the releasing of the determined preferred packages to the client to be updated comprises:

adding package identifiers of the determined preferred packages to an update table;

assigning a unique table identifier to the update table;

releasing the table identifier to the client;

adding a released tag to the package identifiers of the preferred packages in the update table which have already been released to the client;

determining whether a table identifier transmitted by the client has been received; and

in response to a determination that the table identifier transmitted by the client has been received:

searching the update table corresponding to the table identifier transmitted by the client; and

releasing packages corresponding to package identifiers to which the released identifier has not been added to the client to be updated.

4. The method as described in claim 1 , further comprising:

determining update packages, from among the determined update packages for the client, on which the preferred packages depend, to serve as dependent packages;

determining update packages, from among the determined update packages for the client, having importance weights greater than a predetermined threshold value to serve as mandatory update packages; and

releasing the dependent packages and the mandatory update packages to the client to be updated.

5. A system, comprising:

at least one processor configured to:

determine that a client is to be updated;

in response to the determination that the client is to be updated, determine update packages for the client;

determine a user's preferred functions from among functions offered by the client based at least in part on record of operations of the user corresponding to the client, comprising to:

determine a number of times the user has used each function offered by the client within a designated time range based on the saved record of operations of the user corresponding to the client; and

successively select a designated number of functions, in sequence from the highest to the lowest number of times used, to serve as the preferred functions of the user, comprising to:

determine the designated number based on network environment information from the client and a preset mapping of network environment information to designated numbers;

determine update packages, from among the determined update packages, on which the user's preferred functions depend, to serve as preferred packages, comprising to:

determine whether a first update package of the update packages is related to a major vulnerability repair update package, wherein the major vulnerability repair update package relates to a normal operation of the client;

in response to a determination that the first update package of the update packages is related to the major vulnerability repair update package, assign a first weight to the first update package;

determine whether a second update package of the update packages is required for a preferred function among the preferred functions to operate normally;

in response to a determination that the second update package is required for the preferred function to operate normally, assign a second weight to the second update package; and

add the first update package and the second update package to the preferred packages based at least in part on the first weight and the second weight; and

release the preferred packages to the client to be updated; and

a memory coupled to the at least one processor and configured to provide the at least one processor with instructions.

6. The system as described in claim 5 , wherein the at least one processor is further configured to:

prior to the determining of the user's preferred functions from among the functions offered by the client:

receive the network environment information from the client.

7. The system as described in claim 5 , wherein the releasing of the determined preferred packages to the client to be updated comprises:

add package identifiers of the determined preferred packages to an update table;

assign a unique table identifier to the update table;

release the table identifier to the client;

add a released tag to the package identifiers of the preferred packages in the update table which have already been released to the client;

determine whether a table identifier transmitted by the client has been received; and

in response to a determination that the table identifier transmitted by the client has been received:

search the update table corresponding to the table identifier transmitted by the client; and

release packages corresponding to package identifiers to which the released identifier has not been added to the client to be updated.

8. The system as described in claim 5 , wherein the at least one processor is further configured to:

determine update packages, from among the determined update packages for the client, on which the preferred packages depend, to serve as dependent packages;

determine update packages, from among the determined update packages for the client, having importance weights greater than a predetermined threshold value to serve as mandatory update packages; and

release the dependent packages and the mandatory update packages to the client to be updated.

9. A computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

determining that a client is to be updated;

in response to the determination that the client is to be updated, determining update packages for the client;

determining a user's preferred functions from among functions offered by the client based at least in part on record of operations of the user corresponding to the client, comprising:

determining a number of times the user has used each function offered by the client within a designated time range based on the saved record of operations of the user corresponding to the client; and

successively selecting a designated number of functions, in sequence from the highest to the lowest number of times used, to serve as the preferred functions of the user, comprising:

determining the designated number based on network environment information from the client and a preset mapping of network environment information to designated numbers;

determining update packages, from among the determined update packages, on which the user's preferred functions depend, to serve as preferred packages, comprising:

determining whether a first update package of the update packages is related to a major vulnerability repair update package, wherein the major vulnerability repair update package relates to a normal operation of the client;

in response to a determination that the first update package of the update packages is related to the major vulnerability repair update package, assigning a first weight to the first update package;

determining whether a second update package of the update packages is required for a preferred function among the preferred functions to operate normally;

in response to a determination that the second update package is required for the preferred function to operate normally, assigning a second weight to the second update package; and

adding the first update package and the second update package to the preferred packages based at least in part on the first weight and the second weight; and

releasing the preferred packages to the client to be updated.

10. The computer program product as described in claim 9 , further comprising:

prior to the determining of the user's preferred functions from among the functions offered by the client:

receiving the network environment information from the client.

11. The computer program product as described in claim 9 , wherein the releasing of the determined preferred packages to the client to be updated comprises:

adding package identifiers of the determined preferred packages to an update table;

assigning a unique table identifier to the update table;

releasing the table identifier to the client;

adding a released tag to the package identifiers of the preferred packages in the update table which have already been released to the client;

determining whether a table identifier transmitted by the client has been received; and

in response to a determination that the table identifier transmitted by the client has been received:

searching the update table corresponding to the table identifier transmitted by the client; and

releasing packages corresponding to package identifiers to which the released identifier has not been added to the client to be updated.

12. The computer program product as described in claim 9 , further comprising:

determining update packages, from among the determined update packages for the client, on which the preferred packages depend, to serve as dependent packages;

determining update packages, from among the determined update packages for the client, having importance weights greater than a predetermined threshold value to serve as mandatory update packages; and

releasing the dependent packages and the mandatory update packages to the client to be updated.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 054233/0693 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053667/0148 →
Priority Claims (1)
CN 2013 1 0141479 · Apr 22, 2013 · national
Continuity (2)
Continuation 14250236 · Apr 10, 2014
Related Publication 20170264482A1 · Sep 14, 2017