Methods and apparatuses for imparting functionality to a mobile computing device
First Claim
1. A method of imparting functionality to a mobile device, the method comprising:
- receiving a shell application at a mobile device, the shell application received over a network, wherein the shell application accesses native functionality of the mobile device;
loading the shell application into memory of the mobile device;
receiving a first configuration file at the mobile device, the first configuration file received over the network, wherein the first configuration file defines a first mobile application and includes a first plurality of configuration definitions that define a first user interface, a first data source, a first resource, and a first operation to be performed by the mobile device using the first resource;
loading the first configuration file into memory of the mobile device;
initiating operation of the shell application according to the first plurality of definitions in the first configuration file;
receiving a second configuration file at the mobile device, the second configuration file received over the network, wherein the second configuration file is different than the first configuration file, defines a second mobile application different from the first mobile application, and includes a second plurality of configuration definitions that define a second user interface, a second data source, a second resource, and a second operation to be performed by the mobile device using the second resource;
automatically reconfiguring the shell application in response to a predetermined event by replacing the first plurality of configuration definitions stored in memory with the second plurality of configuration definitions; and
initiating operation of the shell application according to the second plurality of configuration definitions.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the present invention comprise a client application (“shell”) that is installed on the mobile device. The shell is developed in such a way as to allow it to read certain configuration files (“configuration files”). As discussed in greater detail below, the configuration files contain all information necessary for the shell to create, present, or display a mobile application “on-the-fly” simply by reading the configuration file. Advantageously, this method allows applications to quickly be updated or reconfigured without recompiling and updating native code. In addition, such applications can easily be shared and interact with other applications developed on this platform. This sharing of configuration files with a shell also allows repurposing of applications and a new delivery mechanism for advertising and promotional content.
-
Citations
14 Claims
-
1. A method of imparting functionality to a mobile device, the method comprising:
-
receiving a shell application at a mobile device, the shell application received over a network, wherein the shell application accesses native functionality of the mobile device; loading the shell application into memory of the mobile device; receiving a first configuration file at the mobile device, the first configuration file received over the network, wherein the first configuration file defines a first mobile application and includes a first plurality of configuration definitions that define a first user interface, a first data source, a first resource, and a first operation to be performed by the mobile device using the first resource; loading the first configuration file into memory of the mobile device; initiating operation of the shell application according to the first plurality of definitions in the first configuration file; receiving a second configuration file at the mobile device, the second configuration file received over the network, wherein the second configuration file is different than the first configuration file, defines a second mobile application different from the first mobile application, and includes a second plurality of configuration definitions that define a second user interface, a second data source, a second resource, and a second operation to be performed by the mobile device using the second resource; automatically reconfiguring the shell application in response to a predetermined event by replacing the first plurality of configuration definitions stored in memory with the second plurality of configuration definitions; and initiating operation of the shell application according to the second plurality of configuration definitions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of supplying additional functionality to a mobile device having resident in storage one or more configuration definitions that impart functionality to the mobile device when operated in combination with a shell application on the mobile device, the method comprising
receiving a first command from a remote computing device at the mobile device at a time when the shell application is active; -
identifying a first configuration definition determined from the first command as active, the first configuration definition defining a first mobile application, wherein defining the first mobile application includes defining a first user interface, a first data source, a first resource, and a first operation to be performed by the mobile device using the first resource; storing information determined from the first command in storage on the mobile device in association with the determined first configuration definition; receiving a second command from the remote computing device; and reconfiguring the shell application in response to the second command by replacing the first configuration definition stored in memory with a second configuration definition different than the first configuration definition, the second configuration definition defining a second mobile application, wherein defining the second mobile application includes defining a second user interface, a second data source, a second resource, and a second operation to be performed by the mobile device using the second resource. - View Dependent Claims (11, 12)
-
-
13. A method of supplying additional functionality to a plurality of mobile devices, each having resident in storage one or more configuration definitions that impart functionality to the mobile device when operated in combination with a shell application on the mobile device, the method comprising:
-
selecting the plurality of devices based on characteristics of each mobile device, a user of each mobile device, current conditions of each device, past or present use of each mobile device, or a combination thereof; sending a first command from a remote computing device to each mobile device at a time when the shell application is active, the first command identifying a first configuration definition defining a first mobile application, wherein defining the first mobile application includes defining a first user interface, a first data source, a first resource, and a first operation to be performed by the mobile device using the first resource; and sending a second command from the remote computing device to each mobile device, wherein the second command causes each mobile device to reconfigure the shell application in response to the second command by replacing the first configuration definition with a second configuration definition different than the first configuration definition, the second configuration definition defining a second mobile application, wherein defining the second mobile application includes defining a second user interface, a second data source, a second resource, and a second operation to be performed by the mobile device using the second resource.
-
-
14. A method of supplying additional functionality to a mobile device having resident in storage one or more configuration definitions that impart functionality to the mobile device when operated in combination with a shell application on the mobile device, the method comprising:
-
using the shell application to determine that an update to a first configuration definition is available, the first configuration definition defining a first mobile application, wherein defining the first mobile application includes defining a first user interface, a first data source, a first resource, and a first operation to be performed by the mobile device using the first resource; using the shell application to receive the update, the update including a second configuration definition different than the first configuration definition, the second configuration definition defining a second mobile application, wherein defining the second mobile application includes defining a second user interface, a second data source, a second resource, and a second operation to be performed by the mobile device using the second resource; storing the update in storage on the mobile device in association with the first configuration definition; and automatically reconfiguring the shell application in response to the storing the update by replacing the first configuration definition with the second configuration definition.
-
Specification