“Go home” feature for roaming applications
AssigneeEmpire Technology Development LLC
InventorNathaniel A. Gilder
Life of this patent
Estimating the term…
Abstract
Techniques related to a “go home” feature for a roaming application are generally described where a roaming application can automatically return from a target device to a home device. The home device can manage an execution environment for the roaming application on behalf of an owner of the roaming application. The roaming application may roam from the home device to a target device, execute on the target device, and automatically return from the target device to the home device, in response to a return event. The roaming application implementing the “go home” feature may be indifferent to specific User Interface (UI) features of target devices, allowing roaming applications to access a wider diversity of potential target devices, and also allowing simplification/omission of target device UI.
Claims16
A non-transitory computer readable medium having computer executable instructions configured to automatically initiate a return of a roaming application from a target device to a home device, wherein the home device provides an execution environment for the roaming application on behalf of an owner of the roaming application, wherein the instructions comprise:
- one or more roaming application modules configured to execute on the home device;
- one or more roam manager modules configured to manage a roam of the roaming application from the home device to a target device of at least one target device type, through transfer of one or more of roaming application state information and roaming application executable code to the target device;
- wherein the one or more roaming application modules are configured to execute on the target device of at least one target device type, using one or more of the roaming application executable code and application state information received at the target device from the home device;
- wherein the roam manager modules are configured to manage a return of the roaming application from the target device to the home device, through transfer of one or more of roaming application state information and roaming application executable code to the home device;
- one or more return modules configured to automatically initiate the return of the roaming application from the target device to the home device, through transfer of one or more of roaming application state information and roaming application executable code from the target device to the home device, in response to a return event, the return event comprising one or more of:
- detection of a return signal from the home device;
- and/or
- detection of a failure at the target device;
- and
- at least one module configured to:
- determine whether a communication link between the target device and the home device is available, wherein:
- when the communication link is available, the roam manager modules may proceed to manage the return of the roaming application from the target device to the home device in response to the return event;
- and
- when the communication link is not available, the at least one module is configured to determine whether a communication link between the target device and a server is available;
- and
- automatically initiate a roam by the roaming application from the target device to the server, instead of the return of the roaming application from the target device to the home device, when the communication link between the target device and the home device is not available and the communication link between the target device and the server is available.
A home device configured to provide an execution environment for a roaming application on behalf of an owner of the roaming application, the home device comprising:
- a processor;
- a memory;
- an operating system loadable into the memory and configured to execute on the processor, wherein the operating system is configured to:
- manage an execution environment for the roaming application;
- transfer the roaming application from the home device to a target device in response to a user command received at the home device, the transfer comprising:
- transfer of one or more of roaming application state information and roaming application executable code from the home device to the target device;
- and
- wherein the target device and the home device are separate devices, each comprising its own respective processor and memory, and wherein the target device and the home device communicate via a communication link between the target device and the home device, at least a portion of which communication link is external to the target device and the home device;
- wherein the operating system is configured to initiate return of the roaming application from the target device to the home device, through transfer of one or more of roaming application state information and roaming application executable code from the target device to the home device, by initiating a communication to the target device in response to a return event, the return event comprising one or more of:
- detection of a user initiated command;
- and/or
- an interruption or degradation of signal quality on the communication link between the target device and the home device;
- and
- wherein the roaming application is configured to:
- determine whether the communication link between the target device and the home device is available, wherein:
- when the communication link is available, the roaming application may return from the target device to the home device in response to the return event;
- and
- when the communication link is not available, the roaming application is configured to determine whether a communication link between the target device and a server is available;
- and
- automatically roam from the target device to the server, instead of the home device, when the communication link between the target device and the home device is not available and the communication link between the target device and the server is available.
A target device configured to provide an execution environment for a roaming application, and configured to return the roaming application to a home device associated with an owner of the roaming application, the target device comprising:
- a processor;
- a memory;
- an operating system loadable into the memory and configured to execute on the processor, wherein the operating system is configured to:
- manage an execution environment for the roaming application;
- transfer the roaming application from the target device to the home device, the transfer comprising:
- transfer of one or more of roaming application state information and roaming application executable code to the home device;
- and
- wherein the operating system is configured to initiate return of the roaming application from the target device to the home device, through transfer of one or more of roaming application state information and roaming application executable code from the target device to the home device, in response to a return event, the return event comprising one or more of:
- an automatically initiated return command from the roaming application;
- an interruption or degradation of signal quality on a communication link between the target device and the home device;
- detection of a return signal from the home device;
- and/or
- detection of a failure in the target device;
- and
- wherein the operating system is configured to:
- determine whether the communication link between the target device and the home device is available, wherein:
- when the communication link is available, the roaming application may be returned from the target device to the home device in response to the return event;
- and
- when the communication link is not available, the operating system is configured to determine whether a communication link between the target device and a server is available;
- and
- automatically transfer the roaming application from the target device to the server, instead of the home device, when the communication link between the target device and the home device is not available and the communication link between the target device and the server is available.
Dependencies are inferred from the claim text.