Mobile applications
First Claim
1. A mobile application system, comprising:
- a mobile application running on a mobile browser on a mobile device, and a mobile application server remote from the mobile device;
a server cache, on the mobile application server, wherein the server cache includes first mobile application data defined in a first data model, and wherein the first mobile application data is organized in first data nodes in the first data model;
a mobile application cache, on the mobile browser, wherein the mobile application cache includes second mobile application data defined in a second data model, and wherein the second mobile application data is organized in second data nodes in the second data model, wherein each second data node is associated with a synchronization state indicative of synchronization of the second data node with the corresponding first data node of the server cache, and wherein the second data model references the second mobile application data stored within the mobile application cache such that the mobile application can run while not connected to the mobile application server;
a controller program file that includes one or more action scripts, wherein each action script is associated with a template from a set of templates, said template used to create a user interface display at the mobile browser;
wherein the mobile device running the mobile application is in occasional communication with the mobile application server, and wherein upon receiving an input at the mobile application running on the mobile device, the mobile applicationinvokes a particular action script based on the input,displays, based on the particular action script, one of the set of templates, wherein the one of the set of templates is used to create the user interface display at the mobile browser,determines the synchronization state of each second data node, and based on that determination synchronizes the mobile application data of the mobile application cache with the mobile application data of the server cache, anduses the synchronized mobile application data of the mobile application cache to populate the user interface display at the mobile browser.
2 Assignments
0 Petitions
Accused Products
Abstract
Providing a framework for developing, deploying and managing sophisticated mobile solutions, with a simple Web-like programming model that integrates with existing enterprise components. Mobile applications may consist of a data model definition, user interface templates, a client side controller, which includes scripts that define actions, and, on the server side, a collection of conduits, which describe how to mediate between the data model and the enterprise. In one embodiment, the occasionally-connected application server assumes that data used by mobile applications is persistently stored and managed by external systems. The occasionally-connected data model can be a METAdata description of the mobile application'"'"'s anticipated usage of this data, and be optimized to enable the efficient traversal and synchronization of this data between occasionally connected devices and external systems.
-
Citations
18 Claims
-
1. A mobile application system, comprising:
-
a mobile application running on a mobile browser on a mobile device, and a mobile application server remote from the mobile device; a server cache, on the mobile application server, wherein the server cache includes first mobile application data defined in a first data model, and wherein the first mobile application data is organized in first data nodes in the first data model; a mobile application cache, on the mobile browser, wherein the mobile application cache includes second mobile application data defined in a second data model, and wherein the second mobile application data is organized in second data nodes in the second data model, wherein each second data node is associated with a synchronization state indicative of synchronization of the second data node with the corresponding first data node of the server cache, and wherein the second data model references the second mobile application data stored within the mobile application cache such that the mobile application can run while not connected to the mobile application server; a controller program file that includes one or more action scripts, wherein each action script is associated with a template from a set of templates, said template used to create a user interface display at the mobile browser; wherein the mobile device running the mobile application is in occasional communication with the mobile application server, and wherein upon receiving an input at the mobile application running on the mobile device, the mobile application invokes a particular action script based on the input, displays, based on the particular action script, one of the set of templates, wherein the one of the set of templates is used to create the user interface display at the mobile browser, determines the synchronization state of each second data node, and based on that determination synchronizes the mobile application data of the mobile application cache with the mobile application data of the server cache, and uses the synchronized mobile application data of the mobile application cache to populate the user interface display at the mobile browser. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method for providing a mobile application adapted to run on a mobile browser at a mobile device, the method comprising:
-
providing a mobile application running on a mobile browser on a mobile device, and a mobile application server remote from the mobile device; providing a server cache, on the mobile application server, wherein the server cache includes first mobile application data defined in a first data model, and wherein the first mobile application data is organized in first data nodes in the first data model; providing a mobile application cache, on the mobile device wherein the mobile application cache includes second mobile application data defined in a second data model, and wherein the second mobile application data is organized in second data nodes in the second data model, wherein each second data node is associated with a synchronization state indicative of synchronization of the second data node with the corresponding first data node of the server cache, and wherein the second data model references the second mobile application data stored within the mobile application cache such that the mobile application can run while not connected to the mobile application server; providing a controller program file that includes one or more action scripts, wherein each action script is associated with a template from a set of templates, said template used to create a user interface display at the mobile browser; communicating, by the mobile device running the mobile application, with the mobile application server, wherein upon receiving an input at the mobile application running on the mobile device, the mobile application invokes a particular action script based on the input, displays, based on the particular action script, one of the set of templates, wherein the one of the set of templates is used to create the user interface display at the mobile browser, determines the synchronization state of each second data node of the mobile application cache, and based on that determination synchronizes the mobile application data of the mobile application cache with the mobile application data of the server cache, and uses the synchronized mobile application data of the mobile application cache to populate the user interface display at the mobile browser. - View Dependent Claims (16, 17)
-
-
18. A non-transitory computer-readable storage medium carrying one or more sequences of instructions for providing a mobile application adapted to run on a mobile browser at a mobile device, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:
-
providing a mobile application running on a mobile browser on a mobile device, and a mobile application server remote from the mobile device; providing a server cache, on the mobile application server, wherein the server cache includes first mobile application data defined in a first data model, and wherein the first mobile application data is organized in first data nodes in the first data model; providing a mobile application cache, on the mobile device wherein the mobile application cache includes second mobile application data defined in a second data model, and wherein the second mobile application data is organized in second data nodes in the second data model, wherein each second data node is associated with a synchronization state indicative of synchronization of the second data node with the corresponding first data node of the server cache, and wherein the second data model references the second mobile application data stored within the mobile application cache such that the mobile application can run while not connected to the mobile application server; providing a controller program file that includes one or more action scripts, wherein each action script is associated with a template from a set of templates, said template used to create a user interface display at the mobile browser; communicating, by the mobile device running the mobile application, with the mobile application server, wherein upon receiving an input at the mobile application running on the mobile device, the mobile application invokes a particular action script based on the input, displays, based on the particular action script, one of the set of templates, wherein the one of the set of templates is used to create the user interface display at the mobile browser, determines the synchronization state of each second data node, and based on that determination synchronizes the mobile application data of the mobile application cache with the mobile application data of the server cache, and uses the mobile application data of the mobile application cache to populate the user interface display at the mobile browser.
-
Specification