Method and system for hosting and executing a component application
A component application runtime environment is provided for executing component applications on a device comprising a native runtime environment for executing native applications. The component application runtime environment comprises the following services and subsystems. A control centre represents the component application runtime environment as a native application and provides features offered by the device to the component applications. A base services layer provides basic device services to the component applications. A messaging layer transmits messages to and from the component applications. An application layer provides user interfaces for executing the component application.
1 . A device capable of executing component applications, the device comprising a native runtime environment for executing native applications and a component application runtime environment for executing the component applications, the component application runtime environment comprising:
a. a control centre for representing the component application runtime environment as a native application and for providing features offered by the device to the component applications;
b. a base services layer for providing basic device services to the component applications;
c. a messaging layer for transmitting messages to and from the component applications; and
d. an application layer for providing user interfaces for executing the component application.
2 . The device of claim 1 further comprising a services layer for providing maintenance and lifecycle services for the component applications.
3 . The device of claim 1 , wherein the application layer further includes an access subsystem for facilitating access of native applications by the component application.
4 . The device of claim 3 , wherein the access subsystem comprises a plurality of plug-ins identifying accessible native applications.
5 . The device of claim 3 , wherein the access subsystem generates a native application handler for each native application that is accessed, the native application handler capable of communicating with a corresponding native application using native commands.
6 . The device of claim 5 , wherein the access subsystem provides data access to the native application, thereby providing the ability to share data between a component application and a native application.
7 . The device of claim 6 , wherein the access subsystem further converts data between data component format and a native application format for exchanging data.
8 . The device of claim 5 , wherein the access subsystem provides execution access to the native application, thereby providing the component application with the ability to share functionality with the native application.
9 . The device of claim 1 , wherein the base services layer further includes a communication subsystem for transmitting and receiving message between the device and a gateway server.
10 . The device of claim 9 , wherein the message layer includes a messaging subsystem having a plurality of registered listeners, the registered listeners comprising one or more services and subsystems provided by the component application runtime environment for being notified of a specific incoming message.
11 . The device of claim 10 , wherein the specific incoming message is automatically forwarded from the messaging subsystem to its registered listener.
12 . The device of claim 9 , wherein the communication subsystem has a plurality of registered listeners, the registered listeners comprising one or more services and subsystems provided by the component application runtime environment for being notified of a specific incoming message.
13 . The device of claim 12 , wherein the specific incoming message is automatically forwarded from the communication subsystem to its registered listener.
14 . The device of claim 1 , wherein the application layer further includes a lifecycle subsystem for managing component application information installed on the device.
15 . A component application runtime environment for executing component applications on a device, the device comprising a native runtime environment for executing native applications, the component application runtime environment comprising:
a. a control centre for representing the component application runtime environment as a native application and for providing features offered by the device to the component applications;
b. a base services layer for providing basic device services to the component applications;
c. a messaging layer for transmitting messages to and from the component applications; and
d. an application layer for providing user interfaces for executing the component application.
16 . A method for executing a component application in a component application runtime environment executing on a host device, the method comprising the steps of:
a. receiving a request for a target component application;
b. loading corresponding component application metadata into the component application runtime environment;
c. processing any message pending for the target component application;
d. running any available start-up scripts for the target component application; and
e. presenting a main screen component on the device screen.
17 . The method of claim 16 , further comprising the steps of:
a. receiving an incoming message at a communication subsystem;
b. processing the incoming message at the communication subsystem; and
c. forwarding the processed message to a service or subsystem that has registered as a message listener for the received message.
18 . The method of claim 17 , further comprising the step of at least one of decrypting, decompressing and authenticating the message.
19 . The method of claim 17 , wherein, if the message has no registered listeners, the message is stored for later access.
20 . The method of claim 17 , further comprising the step of providing an alert in response to the message.
21 . The method of claim 17 , further comprising the step of executing at least one of a predefined script and a screen refresh.
22 . The method of claim 21 , further comprising the step of updating metadata corresponding with the message.