IP Library Granted Patent US 10,133,722
Granted Patent B2
US 10,133,722 · App. 15/139,289 · Granted Nov 20, 2018

Updating page templates presenting content from a digital magazine in a native application

Inventors: Emil Sjolander (London, GB); Noah Gilmore (Berkeley, CA)
Assignee: Flipboard, Inc.
G06F17/248G06F17/212H04L67/06H04L67/306
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 10,133,722
App. No.
15/139,289
Granted
Nov 20, 2018
Kind
B2
Abstract

An application associated with a digital magazine server and executing on a client device uses one or more dynamic page templates specifying the layout and formatting of content from the digital magazine server to generate pages of content for presentation to a user. To modify presentation of pages of content, the application receives dynamic page templates from the digital magazine server that replace or modify dynamic page templates previously stored on the client device executing the application. The application may request dynamic page templates from the digital magazine server when certain conditions are satisfied in some embodiments. Alternatively, the digital magazine server determines when to communicate dynamic page templates to the client device executing the application.

Claims (41)

1. A method comprising:

generating, by native code of an application executing on a client device, a first user interface based on a first dynamic template, the first dynamic template specifying a first set of text formatting information, the first user interface including one or more text elements formatted according to the first set of text formatting information;

determining a number of times the first dynamic template has been used by the application;

communicating, from the application to a digital magazine server providing content for presentation by the application, a status of the first dynamic template in response to the number of times the first dynamic template has been used by the application equaling or exceeding a threshold number of times;

receiving a second dynamic template from the digital magazine server, the second dynamic page template specifying a second set of text formatting information different from the first set of text formatting information and the second dynamic page template associated with a time later than a time included in the status of the first dynamic template;

generating, by the native code of the application, a second user interface based on the second dynamic page template, the second user interface including the one or more text elements formatted according to the second set of text formatting information; and

presenting the second user interface using a display device of the client device.

2. The method of claim 1 , wherein the status of the first dynamic template comprises a timestamp indicating a time when the first dynamic template was received from the digital magazine server.

3. The method of claim 2 , wherein the status of the first dynamic template is communicated in response to a difference between a current time and the time the first dynamic page template was received equaling or exceeding a threshold amount.

4. The method of claim 1 , further comprising:

determining a length of time the first dynamic template has been used by the application,

wherein the status of the first dynamic template is communicated in response to the length of time equaling or exceeding a threshold.

5. The method of claim 1 , wherein communicating the status of the first dynamic template is in response to generating the first user interface.

6. The method of claim 1 , further comprising:

removing the first dynamic template stored in a memory of the client device; and

storing the second dynamic template in the memory of the client device.

7. The method of claim 1 , wherein the text formatting information comprises a font size.

8. The method of claim 1 , wherein the text formatting information comprises a font style.

9. The method of claim 1 , wherein the text formatting information comprises a font type.

10. The method of claim 1 , wherein the text formatting information comprises an alignment of one or more text elements.

11. The method of claim 1 , wherein the text formatting information comprises placement of a text element overlaid on an image element.

12. The method of claim 1 , wherein the second dynamic template is received in response to a determination that a status of the second dynamic template is more current than the status of the first dynamic template.

13. A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:

generate, by native code of an application executing on a client device, a first user interface based on a first dynamic template, the first dynamic template specifying a first set of text formatting information, the first user interface including one or more text elements formatted according to the first set of text formatting information;

determine a number of times the first dynamic template has been used by the application;

communicate, from the application to a digital magazine server providing content for presentation by the application, a status of the first dynamic template in response to the number of times the first dynamic template has been used by the application equaling or exceeding a threshold number of times;

receive a second dynamic template from the digital magazine server, the second dynamic page template specifying a second set of text formatting information different from the first set of text formatting information and the second dynamic page template associated with a time later than a time included in the status of the first dynamic template;

store the received one or more dynamic page templates in a memory of the client device;

receive, at the client device, content from the digital magazine server for presentation by the application;

select a dynamic page template from the received one or more dynamic page templates;

generate, by the native code of the application, a second user interface based on the second dynamic page template, the second user interface including the one or more text elements formatted according to the second set of text formatting information; and

present the second user interface using a display device of the client device.

14. The computer program product of claim 13 , wherein the status of the first dynamic template comprises a timestamp indicating a time when the first dynamic template was received from the digital magazine server.

15. The computer program product of claim 14 , wherein the status of the first dynamic template is communicated response to a difference between a current time and the time the first dynamic page template was received equaling or exceeding a threshold amount.

16. The computer program product of claim 13 , wherein the instructions further cause the processor to:

determine a length of time the first dynamic template has been used by the application,

wherein the status of the first dynamic template is communicated in response to the length of time equaling or exceeding a threshold.

17. The computer program product of claim 13 , wherein communicating the status of the first dynamic template in response to generating the first user interface.

18. The computer program product of claim 13 , wherein the instructions further cause the processor to:

remove the first dynamic template stored in a memory of the client device; and

storing the second dynamic template in the memory of the client device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2018
From: SJOLANDER, EMIL; GILMORE, NOAH
To: FLIPBOARD, INC.
Reel/Frame 045838/0429 →
Continuity (1)
Related Publication 20170308518A1 · Oct 26, 2017