Message processing engine
First Claim
1. A computer-implemented method, comprising:
- receiving, at a computing device, a message identifying an application that is executable on the computing device, the message including update information to update at least one of a runtime state or a feature of the application, the update information described using an interpreted programming language, the application including a web view component that is embedded in the application to interpret the interpreted programming language;
determining an execution status of the application on the computing device;
if the execution status indicates that the application is active, such that the web view component of the application is executing, employing the web view component to update the application based on the update information; and
if the execution status indicates that the application is inactive, such that the application is asleep or not executing, employing an interpreter engine to update the application based on the update information, the interpreter engine being executable separately from the application and operative to interpret the interpreted programming language, the interpreter engine being executable within a smaller portion of memory on the computing device than the web view component, the interpreter engine consuming less processing capacity of the computing device than the web view component, and the interpreter engine including a smaller feature set than the web view component, the employing of the interpreter engine being to mitigate performance degradation incurred on the computing device by employing the web view component to update the application.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described for updating applications installed on devices. The applications may include native applications having a web view component to handle interpreted language instructions. The applications may also include web applications executable within a browser. A message may be sent to a computing device, the message including update information specifying one or more updates to the state or the features of an application. The update information may be described using interpreted language instructions. To handle the updates to an application in instances when the application is inactive, a stand-alone interpreter engine may be employed instead of the web view component or instead of the interpreter engine included in a browser. Use of the stand-alone interpreter engine may mitigate possible performance effects or intrusive user interface elements from launching the web view component or the browser-based interpreter engine to perform update operations.
-
Citations
18 Claims
-
1. A computer-implemented method, comprising:
-
receiving, at a computing device, a message identifying an application that is executable on the computing device, the message including update information to update at least one of a runtime state or a feature of the application, the update information described using an interpreted programming language, the application including a web view component that is embedded in the application to interpret the interpreted programming language; determining an execution status of the application on the computing device; if the execution status indicates that the application is active, such that the web view component of the application is executing, employing the web view component to update the application based on the update information; and if the execution status indicates that the application is inactive, such that the application is asleep or not executing, employing an interpreter engine to update the application based on the update information, the interpreter engine being executable separately from the application and operative to interpret the interpreted programming language, the interpreter engine being executable within a smaller portion of memory on the computing device than the web view component, the interpreter engine consuming less processing capacity of the computing device than the web view component, and the interpreter engine including a smaller feature set than the web view component, the employing of the interpreter engine being to mitigate performance degradation incurred on the computing device by employing the web view component to update the application. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
-
at least one memory storing computer-executable instructions, including; an application; a first interpreter engine that is executable with the application and that is operative to interpret an interpreted programming language; and a second interpreter engine that is executable separately from the application and that is operative to interpret the interpreted programming language, the second interpreter engine being executable within a smaller portion of the at least one memory than the first interpreter engine; and at least one processor in communication with the at least one memory, the at least one processor configured to access the at least one memory and execute the computer-executable instructions to; receive a message that identifies the application, the message including update information to update at least one of a state or a feature of the application, the update information described at least partly using the interpreted programming language; determine an execution status of the application indicates that the application is inactive, such that the application is asleep or not executing; employ the second interpreter engine to update the application based on the update information; receive a request to execute the application; determine that the second interpreter engine is being employed to update the application; and deny the request to execute the application. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. One or more non-transitory computer-readable media storing instructions which, when executed by at least one processor, instruct the at least one processor to perform actions comprising:
-
receiving, at a computing device, a message identifying an application that is executable on the computing device, the message including update information to update the application, the update information described at least partly using an interpreted programming language, the computing device including; a first interpreter engine that is executable with the application and that is operative to interpret the interpreted programming language; and a second interpreter engine that is executable separately from the application and that is operative to interpret the interpreted programming language, the second interpreter engine having fewer features than the first interpreter engine; determining an execution status of the application on the computing device, the execution status indicating that the application is inactive; employing the second interpreter engine to update the application based on the update information; receiving a request to execute the application; determining that the second interpreter engine is being employed to update the application; and denying the request to execute the application. - View Dependent Claims (15, 16, 17, 18)
-
Specification