IP Library Granted Patent US 9,996,230
Granted Patent B2
US 9,996,230 · App. 14/687,073 · Granted Jun 12, 2018

Using sections for customization of applications across platforms

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,996,230
App. No.
14/687,073
Granted
Jun 12, 2018
Kind
B2
Abstract

A client-based application includes sections that are used to define user interface displays for the system. The sections are customizable by a backend system so customizations are accommodated by modified versions of the mobile application.

Claims (76)

1. A computing system comprising:

an application programming interface configured to:

receive, by the computing system, a call from a client application associated with a client computing device that is separate from the computing system, the call being associated with a user interface display, and including section identifying metadata;

a section accessing system configured to:

based on the section identifying metadata received in the call, identify a plurality of different sections that are each predefined on the user interface display;

a control identifying component configured to:

access section definition metadata corresponding to each section of the identified plurality of different sections; and

based on the section definition metadata, identify user interface control metadata indicative of a user interface control on each section of the identified plurality of different sections; and

a data identifying component configured to:

based on the section definition metadata, identify data binding metadata that corresponds to each section of the identified plurality of different sections and indicates data bound to each of the user interface controls,

wherein the application programming interface is configured to send, by the computing system, the control metadata and the data binding metadata to the client computing device.

2. The computing system of claim 1 and further comprising:

a context identifying component configured to:

access context information in the call; and

identify the sections based on the context information.

3. The computing system of claim 2 and further comprising:

a custom logic component configured to:

determine that custom logic is to be run for a particular one of the identified sections prior to returning the call; and

based on the determination, run the custom logic prior to returning the call.

4. The computing system of claim 3 wherein the application programming interface is configured to return the call with edit metadata identifying which of the plurality of identified sections are editable sections.

5. The computing system of claim 4 and further comprising:

a save processing component configured to:

receive, from the client application through the application programming interface, a save call including edited data corresponding to a given editable section; and

save the edited data for the given editable section.

6. The computing system of claim 5 wherein the save processing component is configured to:

return, to the client computing device through the application programming interface, updated metadata that is updated based on the edited data.

7. The computing system of claim 6 and further comprising:

a section definition generator configured to:

based on an indication of a section definition input, generate section definition metadata defining a new section; and

store the section definition metadata for the new section in a section store.

8. The computing system of claim 6 and further comprising:

a section definition modifier configured to:

based on an indication of a section modification input, modify section definition metadata for a given section; and

store the modified section definition metadata for the given section in the section store.

9. A computing system, comprising:

a processor; and

memory storing instructions executable by the processor, wherein the instructions, when executed, configure the computing system to:

receive an indication of a user interface display associated with a client application on the computing system, the user interface display comprising a plurality of predefined sections;

generate a call to a server computing system that is remote from the computing system, the call being indicative of section metadata for each of the plurality of predefined sections on the user interface display;

receive the section metadata from the server computing system; and

based on the received section metadata, generate a representation of the user interface display with the predefined sections.

10. The computing system of claim 9 wherein the instructions, when executed, configure the computing system to:

call the server computing system through an application programming interface exposed by the server computing system; and

receive a set of section metadata for each of a plurality of different user interface displays.

11. The computing system of claim 9 wherein the instructions, when executed, configure the computing system to:

identify a section to be displayed on the user interface display; and

control the server connection component to call the server computing system for the section metadata for the identified section.

12. The computing system of claim 11 wherein the instructions, when executed, configure the computing system to:

identify the section to be displayed by determining a section identifier identifying the section to be displayed, an entity type for which the user interface display is to be displayed, and a set of identifying data that identifies the data bound to the section to be displayed.

13. The computing system of claim 11 wherein the instructions, when executed, configure the computing system to:

identify an application context of the client application running on the computing system; and

call the server computing system based on the application context.

14. The computing system of claim 13 wherein the instructions, when executed, configure the computing system to:

identify the section to be displayed by determining a device type identifier that identifies a device type of a device on which the computing system is deployed and a user identity identifying the user of the device.

15. The computing system of claim 14 wherein the instructions, when executed, configure the computing system to:

call the server computing system with the section identifier, the entity type, the identifying data, the application context, the device type and the user identity.

16. The computing system of claim 13 wherein the instructions, when executed, configure the computing system to:

parse the section metadata to identify rendering information; and

render the section on the user interface display based on the rendering information.

17. A computer implemented method, comprising:

receiving, by a computing system, a call from a client application associated with a client computing device that is separate from the computing system, the call

being associated with a user interface display, and

including section identifying metadata;

based on the section identifying metadata received in the call, identifying a plurality of different sections that are each predefined on the user interface display;

identifying user interface control metadata indicative of a user interface control on each section of the identified plurality of different sections;

identifying data binding metadata that corresponds to each section of the identified plurality of different sections and indicates data bound to each of the user interface controls; and

returning, by the computing system to the client computing device, section rendering metadata comprising the control metadata and the data binding metadata.

18. The computer implemented method of claim 17 , wherein the client application comprises a first client application, and the method further comprises:

receiving, by the computing system, a second call from a second client application, the call being associated with a second user interface display that has at least a particular one of the plurality of different predefined sections; and

returning, to the second client application, second section rendering metadata that is different than the section rendering metadata returned to the first client application.

19. The computer implemented method of claim 17 , wherein the client application comprises a first client application, and further comprising:

receiving, by the computing system, a second call from a second client application, the call being associated with a second user interface display that has at least a particular one of the plurality of different predefined sections; and

returning, to the second client application, second section rendering metadata for the particular section that comprises a same set of section rendering metadata as the section rendering metadata returned to the first client application.

20. The computer implemented method of claim 17 and further comprising:

receiving, by the computing system, a call from the first client application, deployed on a second client device; and

returning a same set of section rendering metadata to the first client application on the second client device as is returned to the first client application deployed on the first client device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2015
From: ARGUTIN, ALEXANDER; MORTENSEN, JORN; KRISHNAN, SUDARSANAN; GUERRERO GOMEZ, JANETH; RUNDE, DAVID J; DROLLINGER, ROBERT A
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 035413/0576 →