# US 8,752,044 B2 · User experience and dependency management in a mobile device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,752,044 B2
- Document ID: US8752044B2
- Status: Granted
- Kind: B2
- Application number: 11/829,520
- Filed: 2007-07-27
- Published: 2008-01-31
- Granted: 2014-06-10
- Earliest claimed: 2006-07-27
- Assignees: QUALCOMM Incorporated
- Applicants: Giovanni Motta; Sunil Marolia; Brian O'Neill; Marko Slyz
- Inventors: Giovanni Motta; Sunil Marolia; Brian O'Neill; Marko Slyz
- Web page: https://patentgrep.com/patent/US8752044B2

## CPC

- G06Q 30/0267: {Wireless devices}
- G06F 8/61: Installation
- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- G06Q 30/02: Marketing; Price estimation or determination; Fundraising
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method, system, and device supporting installation of updates to software and/or firmware in memory of an electronic device. The updates may be accompanied by advertising, promotional and information content that is dynamically displayed to a user during processing of the update in the electronic device. The update information may be automatically generated based upon a list of all software components or packages already present on the electronic device, and may comprise software components for all dependencies of an application being installed by the update that are not already present on the electronic device.

## Claims

### Claim 1

A method of installing a software and/or firmware application in an electronic device of a user, the method comprising:
enabling a set of user criteria that comprises a cost of transferring a unit of information;
accessing a list of dependencies of the software and/or firmware application to be installed, wherein a dependency comprises a software and/or firmware component used by, but not part of, the software and/or firmware application to be installed;
comparing the list of dependencies to a list of all software and/or firmware components already present in a memory of the electronic device;
producing a dependency graph to determine a number of dependents of the list of dependencies;
automatically retrieving all dependencies and dependents of the list of dependencies not already present in the memory of the electronic device;
determining whether room is available in the memory of the electronic device for the software and/or firmware application, all dependencies, and dependents of the list of dependencies not already present in the memory of the electronic device;
generating update information for installing the software and/or firmware application and all dependencies not already present in the memory of the electronic device;
downloading the update information to the electronic device, via a communication network, if room is available in the memory of the electronic device and the set of user criteria are met; and
processing the downloaded update information by the electronic device.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the electronic device is a mobile device.

### Claim 3 (depends on 2)

The method according to claim 2, wherein the electronic device comprises one of a cellular phone, a personal digital assistant, and a pager.

### Claim 4 (depends on 1)

The method according to claim 1, wherein the communication network is a wireless network.

### Claim 5 (depends on 1)

The method according to claim 1, wherein the list of all software and/or firmware components already present in the memory of the electronic device is maintained by the electronic device.

### Claim 6 (depends on 1)

The method according to claim 1, wherein the list of all software and/or firmware components already present in the memory of the electronic device is maintained by a server remote from the electronic device.

### Claim 7 (depends on 1)

The method according to claim 1, wherein processing of the downloaded update information by the electronic device uses existing contents of the memory of the electronic device to produce the software and/or firmware application and all dependencies not already present in the memory of the electronic device.

### Claim 8

A method of installing a software and/or firmware application in an electronic device of a user, the method comprising:
enabling a set of user criteria that comprises a type of communication path;
accessing a list of dependencies of the software and/or firmware application to be installed, wherein a dependency comprises a software and/or firmware component used by, but not part of, the software and/or firmware application to be installed;
comparing the list of dependencies to a list of all software and/or firmware components already present in a memory of the electronic device;
producing a dependency graph to determine a number of dependents of the list of dependencies;
automatically retrieving all dependencies and dependents of the list of dependencies not already present in the memory of the electronic device;
determining whether room is available in the memory of the electronic device for the software and/or firmware application, all dependencies, and dependents of the list of dependencies not already present in the memory of the electronic device;
generating update information for installing the software and/or firmware application and all dependencies not already present in the memory of the electronic device;
downloading the update information to the electronic device, via a communication network, if room is available in the memory of the electronic device and the set of user criteria are met; and
processing the downloaded update information by the electronic device.

### Claim 9 (depends on 8)

The method according to claim 8, wherein the electronic device is a mobile device.

### Claim 10 (depends on 9)

The method according to claim 9, wherein the electronic device comprises one of a cellular phone, a personal digital assistant, and a pager.

### Claim 11 (depends on 8)

The method according to claim 8, wherein the communication network is a wireless network.

### Claim 12 (depends on 8)

The method according to claim 8, wherein processing of the update information by the electronic device uses existing contents of the memory of the electronic device to produce the software and/or firmware application and all dependencies not already present in the memory of the electronic device.

### Claim 13 (depends on 8)

The method according to claim 8, wherein the list of all software and/or firmware components already present in the memory of the electronic device is maintained by a server remote from the electronic device.

### Claim 14

A method of installing a software and/or firmware application in an electronic device of a user, the method comprising:
enabling a set of user criteria that comprises how often differential updates are performed;
accessing a list of dependencies of the software and/or firmware application to be installed, wherein a dependency comprises a software and/or firmware component used by, but not part of, the software and/or firmware application to be installed;
comparing the list of dependencies to a list of all software and/or firmware components already present in a memory of the electronic device;
producing a dependency graph to determine a number of dependents of the list of dependencies;
automatically retrieving all dependencies and dependents of the list of dependencies not already present in the memory of the electronic device;
determining whether room is available in the memory of the electronic device for the software and/or firmware application, all dependencies, and dependents of the list of dependencies not already present in the memory of the electronic device;
generating update information for installing the software and/or firmware application and all dependencies not already present in the memory of the electronic device;
downloading the update information to the electronic device, via a communication network, if room is available in the memory of the electronic device and the set of user criteria are met; and
processing the downloaded update information b the electronic device.

### Claim 15 (depends on 14)

The method according to claim 14, wherein the communication network is a wireless network.

### Claim 16 (depends on 14)

The method according to claim 14, wherein processing of the downloaded update information by the electronic device uses existing contents of the memory of the electronic device to produce the software and/or firmware application and all dependencies not already present in the memory of the electronic device.

### Claim 17 (depends on 14)

The method according to claim 14, wherein the list of all software and/or firmware components already present in the memory of the electronic device is maintained by a server remote from the electronic device.

### Claim 18 (depends on 14)

The method according to claim 14, wherein the list of all software and/or firmware components already present in the memory of the electronic device is maintained by the electronic device.
