Updating a file using sync directories
US-10853054-B2 · Dec 1, 2020 · US
US11416232B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11416232-B2 |
| Application number | US-201917311657-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 3, 2019 |
| Priority date | Sep 3, 2019 |
| Publication date | Aug 16, 2022 |
| Grant date | Aug 16, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In some examples, a method includes downloading, from an application provider, a patch to be applied to a first application element and a stripped version of the application that does not include one or more application elements to be reused during installation of the application, decompressing the first application element to generate a decompressed version of the first application element, and decompressing the patch to generate a decompressed version of the patch. The method may also include applying the decompressed version of the patch to the decompressed version of the first application element to generate a patched application element, compressing the patched application element to generate a compressed patched application element, and installing the application using the compressed patched application element, the stripped version of the application, and the one or more application elements other than the first application element.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving, by a computing device, a user input to install an application that is not currently installed at the computing device, wherein a plurality of applications are currently installed at the computing device, and wherein each of the plurality of applications includes a respective plurality of application elements; responsive to receiving the user input, sending, by the computing device and to an application provider, a request to install the application; receiving, by the computing device and from the application provider, an indication of one or more application elements from the respective plurality of application elements included in the plurality of applications currently installed at the computing device, wherein the one or more application elements are to be reused during installation of the application, wherein the one or more application elements include a first application element that is to be updated from a current version to a different version required by the application, and wherein the first application element is stored at the computing device in a compressed format; downloading, by the computing device and from the application provider, a patch to be applied to the first application element and a stripped version of the application that does not include the one or more application elements to be reused during installation of the application; decompressing, by the computing device, the first application element to generate a decompressed version of the first application element; decompressing, by the computing device, the patch to generate a decompressed version of the patch; applying, by the computing device, the decompressed version of the patch to the decompressed version of the first application element to generate a patched application element; compressing, by the computing device, the patched application element to generate a compressed patched application element that is the different version of the first application element required by the application; and installing, by the computing device, the application at the computing device using the compressed patched application element, the stripped version of the application, and the one or more application elements other than the first application element. 2. The method of claim 1 , wherein: the application that is not currently installed at the computing device is an application sub-package for a particular application from the plurality of applications already installed at the computing device; the application sub-package is not currently installed at the computing device; the particular application comprises a plurality of application sub-packages; a subset of the plurality of application sub-packages are currently installed at the computing device; each application sub-package from the plurality of application sub-packages of the particular application is separately installable and provides a discrete set of functionality for the particular application; and installing the application comprises installing the application sub-package at the computing device using the compressed patched application element, the stripped version of the application sub-package, and the one or more application elements other than the first application element. 3. The method of claim 2 , wherein receiving the indication of the one or more application elements, downloading the patch and the stripped version of the application sub-package, decompressing the first application element, decompressing the patch, applying the decompressed version of the patch, compressing the patched application element, and installing the application sub-package are performed while the particular application is executing at the computing device. 4. The method of claim 2 , wherein: the user input is received while the particular application is executing at the computing device; and the user input to install the application is a user input that requests previously unused functionality of the particular application. 5. The method of claim 4 , wherein execution of the particular application is managed by an application container executing at the computing device, the method further comprising: responsive to receiving the user input, determining, by the application container, whether an installable application sub-package that provides functionality of the particular application requested by the user input is not installed at the computing device; and responsive to determining that the installable application sub-package is not installed at the computing device, generating, by the application container, the request to install the application sub-package. 6. The method of claim 1 , wherein downloading the patch and the stripped version of the application comprises: initiating, by the computing device, download of the patch to be applied to the first application element; and initiating, by the computing device, download of the stripped version of the application that does not include the one or more application elements to be reused during installation of the application. 7. The method of claim 6 , further comprising: establishing, by the computing device and with the application provider, at least two download streams, wherein initiating download of the patch includes initiating download of the patch using a first download stream from the at least two download streams, and wherein initiating download of the stripped version of the application includes initiating download of the stripped version of the application using a second download stream from the at least two download streams. 8. The method of claim 6 , wherein decompressing the patch, applying the patch, and compressing the patched application element are performed while the stripped version of the application is being downloaded. 9. The method of claim 6 , wherein decompressing the first application element is performed while the patch is being downloaded. 10. The method of claim 1 , further comprising: creating, by the computing device, a respective copy of each application element from the one or more application elements currently stored at the computing device including a copy of the first application element. 11. A computing device comprising: one or more processors; a presence-sensitive display that detects a user input to install an application that is not currently installed at the computing device; a communication unit; and a computer-readable storage medium that stores a plurality of applications, wherein each of the plurality of applications includes a respective plurality of application elements and stores instructions that, when executed by the one or more processors, causes the one or more processors to: responsive to receiving the user input, send, to an application provider via the communication unit, a request to install the application; receive, from the application provider via the communication unit, an indication of one or more application elements from the respective plurality of application elements included in the plurality of applications currently installed at the computing device, wherein the one or more application elements are to be reused during installation of the application, wherein the one or more application elements include a first application element that is to be updated from a current version to a different version required by the application, and wherein the first application element is stored at the computing device in a compressed format; retrieve, from the application provider via the communication unit, a patch to be applied to the first application element and a stripp
Related publications grouped by family.
Answers are generated from the same data shown on this page.