Methods and apparatuses for dynamically generating mobile application layouts using client- independent configuration
Abstract
The methods and apparatuses disclosed herein generally relate to optimizing the creation and loading of application interface layouts by providing a platform for generating configuration files for mobile applications. A mobile configuration file can allow a developer to update an application layout, and for the application to render updated layouts, without any need to alter the underlying code of the application after it has been installed on the a client device. A mobile workbench receives drag-and-drop layout definition input from a developer, and creates a mobile configuration file based on the developer's input. The mobile workbench can then dynamically update the mobile configuration file as the developer updates the application layout. The developer and/or the mobile workbench can send the updated application layout to mobile applications running on client devices, such that the client devices need not redownload the mobile application to render the updated application layout.
Claims
exact text as granted — not AI-modified1 . (canceled)
2 . A method of rendering a user interface of an application executing on a mobile device, comprising:
receiving, from a server, a mobile configuration file including a plurality of layout data structures corresponding to a plurality of tabs to be rendered on the user interface, each layout data structure including a layout identifier; determining a number of tabs of the plurality of tabs to be rendered on the user interface of the application based on a number of the layout identifiers in the plurality of layout data structures; for each tab of the number of tabs, rendering:
that tab on the user interface based on an indication of position of that tab in a corresponding layout data structure of the plurality of layout data structures; and
a layout of that tab on the user interface based on layout data for that tab.
3 . The method of claim 2 , wherein the rendering includes sequentially rendering the number of tabs, one tab at a time.
4 . The method of claim 2 , further comprising receiving, from a user of the application, a selection of a tab of the plurality of tabs for viewing via the user interface, wherein the rendering the layout of that tab is responsive to the selection of that tab.
5 . The method of claim 2 , further comprising generating a nested tree data structure from the mobile configuration file, wherein the determining further includes traversing the nested tree structure to determine the number of tabs for the plurality of tabs.
6 . The method of claim 5 , wherein the rendering the layout of that tab further includes finding the layout data for that tab by traversing the nest tree data structure.
7 . The method of claim 6 , wherein the finding the layout data for that tab further includes:
receiving, from a user of the application, a selection of that tab for viewing; transmitting, to the server, an indication of the selection of that tab; receiving, from the server, an action Uniform Resource Locator (URL) identifying, in the nested tree data structure, a node corresponding to the layout data for that tab; and finding the layout data for that tab based on the action URL.
8 . The method of claim 5 , wherein the generating the nested tree data structure includes generating, via a mobile software development kit (SDK) executing on the mobile device, the nested tree data structure from the mobile configuration file.
9 . The method of claim 2 , the rendering the layout data for that tab further comprising:
extracting cell configuration data from the mobile configuration file for that tab; rendering one or more cells for that tab; and rendering each portion of the layout data within the one or more cells for that tab based on a location of that portion indicated in the cell configuration data.
10 . A method of dynamically rendering, on a user interface of a mobile device, a merchant catalog of a merchant application executing on the mobile device, comprising:
receiving, from a server, a mobile configuration file including a plurality of layout data structures corresponding to a plurality of tabs to be rendered on the user interface, each layout data structure including a layout identifier; generating, via a mobile software development kit (SDK) executing on the mobile device, a nested tree data structure from the mobile configuration file and the plurality of layout data structures; determining a number of tabs for a plurality of tabs to be rendered on the user interface of the application based on a number of the layout identifiers in the nested tree data structure; for each tab of the number of tabs, rendering:
that tab on the user interface based on an indication of position of that tab in the nested tree data structure; and <a layout of that tab on the user interface based on layout data for that tab in the nested tree data structure,
wherein layout data for at least one of the tabs includes product information associated with a product listed in the merchant catalog.
11 . The method of claim 10 , wherein the rendering includes sequentially rendering the number of tabs, one tab at a time.
12 . The method of claim 10 , further comprising receiving, from a user of the application, a selection of a tab of the plurality of tabs for viewing via the user interface, wherein the rendering the layout of that tab is responsive to the selection of that tab.
13 . The method of claim 10 , wherein the rendering the layout of that tab further includes finding the layout data for that tab by traversing the nest tree data structure.
14 . The method of claim 13 , wherein the finding the layout data for that tab further includes:
receiving, from a user of the application, a selection of that tab for viewing; transmitting, to the server, an indication of the selection of that tab; receiving, from the server, an action Uniform Resource Locator (URL) identifying, in the nested tree data structure, a node corresponding to the layout data for that tab, wherein the layout data for that tab includes the product information; and finding the layout data for that tab based on the action URL.
15 . The method of claim 10 , the rendering the layout data for that tab further comprising:
extracting cell configuration data from the nested data structure for that tab; rendering one or more cells for that tab; and rendering each portion of the layout data within the one or more cells for that tab based on a location of that portion of the layout data indicated in the cell configuration data, wherein that potion of the layout data includes one or more of a product price, a product image, a product description, an indication of product availability, a product review, or a product rating.
16 . The method of claim 10 , wherein each layout data structure of the plurality of layout data structures includes:
a merchant identifier for a merchant associated with the merchant application; the layout identifier for that layout data structure; a specification of a uniform resource locator (URL) for an icon image to be rendered on the tab associated with that layout data structure; a specification of the position for the tab associated with that layout data structure, relative to other tabs of the plurality of tabs; a mobile configuration identifier associated with the mobile configuration file; and a specification of a label for the tab associated with that layout data structure.
17 . The method of claim 10 , further comprising:
receiving, from a user of the merchant application, a selection of a product associated with the product information displayed to the user via the user interface; retrieving, from the server, via a deep link associated with the selected product, product detail information; and refreshing a display of the merchant application on the user interface to render a product detail page that includes the product detail information.
18 . A method of rendering a user interface of an application executing on a mobile device, comprising:
receiving, from a server, a mobile configuration file including a plurality of layout data structures corresponding to a plurality of tabs to be rendered on the user interface, each layout data structure including a layout identifier; determining a number of tabs for a plurality of tabs to be rendered on the user interface of the application based on a number of the layout identifiers in the plurality of layout data structures; for each tab of the number of tabs, rendering that tab on the user interface based on an indication of position of that tab in its corresponding layout data structure of the plurality of layout data structures; and for each tab of the number of tabs, in response to receiving a selection of that tab from a user of the user application:
determining a layout of that tab on the user interface based on layout data for that tab; and
rendering that tab.
19 . The method of claim 18 , further comprising generating a nested tree data structure from the mobile configuration file, wherein the determining the number of tabs further includes traversing the nested tree structure to determine the number of tabs for the plurality of tabs.
20 . The method of claim 19 , wherein the rendering the layout of that tab further includes finding, only in response to receiving a selection of that tab from a user of the user application, the layout data for that tab by traversing the nest tree data structure.
21 . The method of claim 18 , the determining the layout for that tab further including:
extracting cell configuration data from the mobile configuration file for that tab; and determining a location and a size of one or more cells for that tab, the rendering that tab further including rendering each portion of the layout data within the one or more cells for that tab based on a location of that portion indicated in the cell configuration data.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.