US 11,733,988 B2
Application deployment for applications offered by multiple deployment sources
Jeremy Tae Yoo, Issaquah, WA (US); Jose Julian Argil Torres, Sammamish, WA (US); David Moreno, Seattle, WA (US); and Yeison David Garcia Gomez, Vancouver (CA)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed by MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
Filed on Jan. 20, 2021, as Appl. No. 17/153,506.
Prior Publication US 2022/0229645 A1, Jul. 21, 2022
Int. Cl. H04L 29/08 (2006.01); G06F 8/61 (2018.01); G06F 9/451 (2018.01); G06F 3/04845 (2022.01); G06F 9/445 (2018.01); H04L 67/10 (2022.01)
CPC G06F 8/61 (2013.01) [G06F 3/04845 (2013.01); G06F 9/445 (2013.01); G06F 9/451 (2018.02); H04L 67/10 (2013.01)] 15 Claims
OG exemplary drawing
 
1. A device comprising:
a processor; and
a memory in communication with the processor, the memory comprising executable instructions that, when executed by the processor, cause the device to perform functions of:
storing an application, including one of more settings and one or more user interface elements associated with the application, from a non-preferred application store of a plurality of application stores, wherein the application is associated with an asset identifier indicating the application store the application is deployed from;
subsequent to the storing, receiving, by a deployment engine, a request for activating the application on the device;
upon receiving the request, automatically determining and activating the application, wherein the determining and activating further comprises:
determining, by the deployment engine in operation with an operating system, whether the application is available from a preferred application store of the plurality of application stores, wherein determining whether the application is available from a preferred application store comprises, the deployment engine in operation with the operating system performing:
examining one or more parameters associated with the device to determine whether the device is associated with the preferred application store; and
accessing the preferred application store to determine whether the application is offered by the preferred application store;
examining the asset identifier associated with the application to determine whether the application is associated with the preferred application store;
upon determining that the application is not associated with the preferred application store, calling a function that provides for switching the application from the non-preferred application store to the preferred application store;
based on the function, downloading, by the deployment engine in operation with the operating system, the application from the preferred application store; and
upon downloading the application from the preferred application store, automatically activating the application, wherein automatically activating the application further comprises:
executing the application downloaded from the preferred application store;
determining that more than one instance of the application is available on the device; and
upon determining more than one copy of the application is available on the device, automatically removing, by the deployment engine in operation with the operating system, the one or more user interface elements associated with the application that is associated with the non-preferred application store.