IP Library Granted Patent US 9,699,028
Granted Patent B2
US 9,699,028 · App. 14/250,236 · Granted Jul 4, 2017

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 9,699,028
App. No.
14/250,236
Granted
Jul 4, 2017
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 (81)

1. A method for updating a client, comprising:

determining whether the client is to be updated;

in the event that the client is to be updated, determining update packages for the client, comprising:

determining which packages to update based on a version tree comparison, comprising:

determining whether a version of a parent node is newer than a version of a child node, wherein an application and functions related to the application are arranged into a tree, each function having a version; and

in the event that the version of the parent node is newer than the version of the child node, updating a function corresponding to the child node;

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, comprising:

determining a number of times the user has used each function offered by the client within a designated time range based on a 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 selective update packages, from among the determined update packages, on which the user's preferred functions depend to serve as preferred packages, comprising:

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

in the event that the update package is required for the preferred function to operate normally, adding the update package to the preferred packages; and

releasing the preferred packages to the client to be updated.

2. 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 the event 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.

3. The method as described in claim 1 , wherein the determining of the selective update packages, from among the determined update packages for the client, on which the preferred packages depend, to serve as dependent packages comprises:

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.

4. The method as described in claim 1 , wherein the update package packages is required for a plurality of preferred functions to operate normally.

5. The method as described in claim 1 , wherein in the event that the version of the parent node is the same as the version of the child node, omitting updating the function corresponding to the child node.

6. A system for updating a client, comprising:

at least one processor configured to:

determine whether the client is to be updated;

in the event that the client is to be updated, determine update packages for the client, comprising to:

determine which packages to update based on a version tree comparison, comprising to:

determine whether a version of a parent node is newer than a version of a child node, wherein an application and functions related to the application are arranged into a tree, each function having a version; and

in the event that the version of the parent node is newer than the version of the child node, update a function corresponding to the child node;

determine 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, comprising to:

determine a number of times the user has used each function offered by the client within a designated time range based on a 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 selective 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 an update package of the update packages is required for a preferred function of the preferred functions to operate normally; and

in the event that the update package is required for the preferred function to operate normally, add the update package to the preferred packages; 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.

7. The system as described in claim 6 , 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 the event 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 6 , wherein the determining of the selective update packages, from among the determined update packages for the client, on which the preferred packages depend, to serve as dependent packages comprises to:

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 for updating a client, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for: determining whether the client is to be updated;

in the event that the client is to be updated, determining update packages for the client, comprising:

determining which packages to update based on a version tree comparison, comprising:

determining whether a version of a parent node is newer than a version of a child node, wherein an application and functions related to the application are arranged into a tree, each function having a version; and

in the event that the version of the parent node is newer than the version of the child node, updating a function corresponding to the child node;

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, comprising:

determining a number of times the user has used each function offered by the client within a designated time range based on a 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 selective update packages, from among the determined update packages, on which the user's preferred functions depend to serve as preferred packages, comprising:

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

in the event that the update package is required for the preferred function to operate normally, adding the update package to the preferred packages; and

releasing the preferred packages to the client to be updated.

10. 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 the event 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.

11. The computer program product as described in claim 9 , wherein the determining of the selective update packages, from among the determined update packages for the client, on which the preferred packages depend, to serve as dependent packages comprises:

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 Feb 4, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 051716/0273 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2014
From: FENG, ZHAOLIN; LIU, ZHONGSHENG
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 032651/0045 →
Priority Claims (1)
CN 2013 1 0141479 · Apr 22, 2013 · national
Continuity (1)
Related Publication 20140317174A1 · Oct 23, 2014