Applications on demand
The disclosure provides an approach for on-demand application delivery. Embodiments include determining, by an application delivery component on a computing device, a user logon event. In response to the user logon event, embodiments include receiving, from an application management server separate from the computing device, shortcut information for a set of applications associated with the user and displaying, on the computing device, simulated shortcuts for the set of applications based on the shortcut information. Embodiments include receiving, at the computing device, user input selecting a simulated shortcut of the simulated shortcuts that corresponds to an application of the set of applications. In response to the user input, embodiments include obtaining an application package of the application from the application management server, loading the application on the computing device as a virtual disk based on the application package, and launching the application on the computing device using the virtual disk.
1 . A method of on-demand application delivery, the method comprising:
determining, by an application delivery component on a computing device, a user logon event;
in response to the user logon event:
receiving, by the application delivery component, from an application management server that is separate from the computing device, metadata comprising shortcut information for a set of applications associated with the user; and
displaying, on the computing device, simulated shortcuts for the set of applications based on the shortcut information, wherein the simulated shortcuts indicate identifiers of the set of applications and point to the application delivery component;
receiving, at the computing device, user input selecting a simulated shortcut of the simulated shortcuts in an operating system shortcut location, wherein the simulated shortcut corresponds to an application of the set of applications; and
in response to the user input:
obtaining, by the application delivery component, an application package of the application from the application management server;
loading, by the application delivery component, the application on the computing device by mounting a virtual disk based on the application package, wherein loading the application causes an executable file of the application stored on the mounted virtual disk to be made accessible to an operating system of the computing device;
after the executable file becomes accessible on the mounted virtual disk, deleting, by the application delivery component, the simulated shortcut from the operating system shortcut location;
creating, by the application delivery component, an actual shortcut in the operating system shortcut location from which the simulated shortcut was deleted, wherein the actual shortcut references a file path of the executable file stored on the mounted virtual disk; and
launching, by the application delivery component, the application on the computing device using the virtual disk.
2 . The method of claim 1 , wherein the metadata was captured by the application management server prior to the user logon event, and wherein the metadata was stored in a file accessible by the application management server.
3 . The method of claim 1 , wherein the shortcut information comprises icons and the identifiers, and wherein the simulated shortcuts comprise the icons.
4 . The method of claim 1 , wherein the metadata further comprises file type association information for the set of applications, and wherein the method further comprises:
receiving additional user input to open a file corresponding to a file type; and
in response to the additional user input:
determining, by the application delivery component, based on the file type association information, a given application of the set of applications that is associated with the file type;
obtaining, by the application delivery component, a given application package of the given application from the application management server;
loading, by the application delivery component, the given application on the computing device as an additional virtual disk based on the given application package; and
launching, by the application delivery component, the given application on the computing device using the additional virtual disk.
5 . The method of claim 1 , wherein an operating system of the computing device redirects read and write operations related to the application to the mounted virtual disk.
6 . The method of claim 5 , wherein the virtual disk mounted on the computing device comprises a file system separate from one or more other file systems associated with the operating system.
7 . The method of claim 1 , wherein the application delivery component is a file system driver installed on the computing device.
8 . A system for on-demand application delivery, the system comprising:
at least one memory; and
at least one processor coupled to the at least one memory, the at least one processor and the at least one memory configured to:
determine, by an application delivery component on a computing device, a user logon event;
in response to the user logon event:
receive, by the application delivery component, from an application management server that is separate from the computing device, metadata comprising shortcut information for a set of applications associated with the user; and
display, on the computing device, simulated shortcuts for the set of applications based on the shortcut information, wherein the simulated shortcuts indicate identifiers of the set of applications and point to the application delivery component;
receive, at the computing device, user input selecting a simulated shortcut of the simulated shortcuts in an operating system shortcut location, wherein the simulated shortcut corresponds to an application of the set of applications; and
in response to the user input:
obtain, by the application delivery component, an application package of the application from the application management server;
load, by the application delivery component, the application on the computing device by mounting a virtual disk based on the application package, wherein loading the application causes an executable file of the application stored on the mounted virtual disk to be made accessible to an operating system of the computing device;
after the executable file becomes accessible on the mounted virtual disk, delete, by the application delivery component, the simulated shortcut from the operating system shortcut location;
create, by the application delivery component, an actual shortcut in the operating system shortcut location from which the simulated shortcut was deleted, wherein the actual shortcut references a file path of the executable file stored on the mounted virtual disk; and
launch, by the application delivery component, the application on the computing device using the virtual disk.
9 . The system of claim 8 , wherein the metadata was captured by the application management server prior to the user logon event, and wherein the metadata was stored in a file accessible by the application management server.
10 . The system of claim 8 , wherein the shortcut information comprises icons and the identifiers, and wherein the simulated shortcuts comprise the icons.
11 . The system of claim 8 , wherein the metadata further comprises file type association information for the set of applications, and wherein the at least one processor and the at least one memory are further configured to:
receive additional user input to open a file corresponding to a file type; and
in response to the additional user input:
determine, by the application delivery component, based on the file type association information, a given application of the set of applications that is associated with the file type;
obtain, by the application delivery component, a given application package of the given application from the application management server;
load, by the application delivery component, the given application on the computing device as an additional virtual disk based on the given application package; and
launch, by the application delivery component, the given application on the computing device using the additional virtual disk.
12 . The system of claim 8 , wherein an operating system of the computing device redirects read and write operations related to the application to the mounted virtual disk.
13 . The system of claim 12 , wherein the virtual disk mounted on the computing device comprises a file system separate from one or more other file systems associated with the operating system.
14 . The system of claim 8 , wherein the application delivery component is a file system driver installed on the computing device.
15 . A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to:
determine, by an application delivery component on a computing device, a user logon event;
in response to the user logon event:
receive, by the application delivery component, from an application management server that is separate from the computing device, metadata comprising shortcut information for a set of applications associated with the user; and
display, on the computing device, simulated shortcuts for the set of applications based on the shortcut information, wherein the simulated shortcuts indicate identifiers of the set of applications and point to the application delivery component;
receive, at the computing device, user input selecting a simulated shortcut of the simulated shortcuts in an operating system shortcut location, wherein the simulated shortcut corresponds to an application of the set of applications; and
in response to the user input:
obtain, by the application delivery component, an application package of the application from the application management server;
load, by the application delivery component, the application on the computing device by mounting a virtual disk based on the application package, wherein loading the application causes an executable file of the application stored on the mounted virtual disk to be made accessible to an operating system of the computing device;
after the executable file becomes accessible on the mounted virtual disk, delete, by the application delivery component, the simulated shortcut from the operating system shortcut location;
create, by the application delivery component, an actual shortcut in the operating system shortcut location from which the simulated shortcut was deleted, wherein the actual shortcut references a file path of the executable file stored on the mounted virtual disk; and
launch, by the application delivery component, the application on the computing device using the virtual disk.
16 . The non-transitory computer-readable medium of claim 15 , wherein the metadata was captured by the application management server prior to the user logon event, and wherein the metadata was stored in a file accessible by the application management server.
17 . The non-transitory computer-readable medium of claim 15 , wherein the shortcut information comprises icons and the identifiers, and wherein the simulated shortcuts comprise the icons.