Method and apparatus for optionally running mobile applications locally or virtually
First Claim
1. A device, comprising:
- a processing system including a processor; and
a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, the operations comprising;
retrieving metadata for a remote application corresponding to a local application, wherein processing for the remote application executes at least in part on a remote server communicatively coupled to a mobile device via a data connection, wherein the metadata includes memory requirements for a size of program code and a size of program data, anticipated utilization for a mobile processor of the mobile device and a rate of data transmission over the data connection;
determining an operating condition of the mobile device, wherein the operating condition includes available memory of the mobile device, available utilization of the mobile processor, and a percentage of battery charge of the mobile device;
determining a state of the data connection between the mobile device and the remote server, wherein the state of the data connection includes signal strength, latency and error rate;
calculating an expected rate of battery discharge based on the metadata and the state of the data connection; and
selecting one of the local application or, alternatively, the remote application corresponding to the local application for execution based on the state of the data connection, the operating condition and the expected rate of battery discharge.
1 Assignment
0 Petitions
Accused Products
Abstract
Aspects of the subject disclosure may include, for example, a system and method, for determining whether to run a local application or a remote application, including retrieving, by a processor of a mobile device, metadata for a remote application that executes on the mobile device, determining power requirements from the metadata for a data connection with a remote server that provides services to support execution of the remote application, calculating if the power requirements for the data connection exceeds a remaining charge of a battery of the mobile device, and executing the remote application responsive to the power requirements for the data connection being less than the remaining charge of the battery. Other embodiments are disclosed.
13 Citations
20 Claims
-
1. A device, comprising:
-
a processing system including a processor; and a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, the operations comprising; retrieving metadata for a remote application corresponding to a local application, wherein processing for the remote application executes at least in part on a remote server communicatively coupled to a mobile device via a data connection, wherein the metadata includes memory requirements for a size of program code and a size of program data, anticipated utilization for a mobile processor of the mobile device and a rate of data transmission over the data connection; determining an operating condition of the mobile device, wherein the operating condition includes available memory of the mobile device, available utilization of the mobile processor, and a percentage of battery charge of the mobile device; determining a state of the data connection between the mobile device and the remote server, wherein the state of the data connection includes signal strength, latency and error rate; calculating an expected rate of battery discharge based on the metadata and the state of the data connection; and selecting one of the local application or, alternatively, the remote application corresponding to the local application for execution based on the state of the data connection, the operating condition and the expected rate of battery discharge. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory, machine-readable storage medium, comprising executable instructions that, when executed by a processing system including a processor of a machine comprising memory, facilitate performance of operations, the operations comprising:
-
receiving a request to execute a local application to obtain a requested local application; determining, responsive to the request to execute the local application, whether a remote application corresponding to the local application is available; responsive to a remote application being available, determining whether a data connection with a remote server is present; responsive to a data connection being present, determining whether latency of the data connection exceeds a maximum latency value for the remote application; responsive to the latency being less than the maximum latency value, determining whether memory requirements for the remote application exceeds an amount of free memory in the machine; responsive to the memory requirements being less than the amount of free memory, determining whether processing requirements for the remote application exceeds a maximum available utilization value; and responsive to the processing requirements being less than the maximum available utilization value, executing the remote application in lieu of the requested local application. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A method, comprising:
-
retrieving, by a processing system that includes a processor of a mobile device, metadata for a remote application that corresponds to a local application that executes on the mobile device; determining, by the processing system, power requirements from the metadata for a data connection with a remote server that provides services to support execution of the remote application; calculating, by the processing system, if the power requirements for the data connection exceeds a remaining charge of a battery of the mobile device; and executing, by the processing system, the remote application, in lieu of the local application that executes on the mobile device, responsive to the power requirements for the data connection being less than the remaining charge of the battery. - View Dependent Claims (18, 19, 20)
-
Specification