IP Library Granted Patent US 10,157,047
Granted Patent B2
US 10,157,047 · App. 14/887,037 · Granted Dec 18, 2018

Methods and systems for communicating application prototype information

Inventor: Brandon Walkin (San Francisco, CA)
Assignee: FACEBOOK, INC.
G06F8/38G06F8/34G06F9/4443G06F9/451G06T1/0007G06T13/80H04W4/003H04W4/60G06T2200/24
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,157,047
App. No.
14/887,037
Granted
Dec 18, 2018
Kind
B2
Abstract

A method at an electronic device communicatively coupled to a mobile device includes: receiving user inputs defining a prototype of an application for the mobile device; sending one or more images for the prototype to the mobile device for display in a user interface of the application; sending initial display parameters for the one or more images to the mobile device; receiving user-interaction data from the mobile device corresponding to interaction of a user with the mobile device while the mobile device is displaying a respective image of the one or more images in accordance with the initial display parameters for the respective image; determining an updated display parameter for the respective image, in accordance with the user-interaction data; and sending an indication of the updated display parameter to the mobile device, wherein the mobile device is to display the respective image in accordance with the updated display parameter.

Claims (63)

1. A method, comprising:

at an electronic device having one or more processors and memory storing instructions for execution by the one or more processors, the electronic device being communicatively coupled with a mobile device having a display:

receiving user inputs defining a prototype of an application for the mobile device;

sending one or more images for the prototype of the application to the mobile device for display in a user interface of the application;

sending initial values of display parameters for each of the one or more images to the mobile device, including an initial value of a first display parameter for a first image, wherein the first display parameter is selected from the group consisting of: an anchor point for an image; an x-dimensional position value, a y-dimensional position value, a z-dimensional position value, an x-dimensional rotation value, a y-dimensional rotation value, a z-dimensional rotation value, a width, a height, an opacity, a fill color, and a scale;

receiving user-interaction data from the mobile device corresponding to interaction of a user with the mobile device while the mobile device is displaying the first image of the one or more images in accordance with the initial value of the first display parameter for the first image;

determining an updated value of the first display parameter for the first image, in accordance with the user-interaction data; and

sending the updated value of the first display parameter to the mobile device, wherein the mobile device is to display the first image in accordance with the updated value of the first display parameter.

2. The method of claim 1 , wherein the electronic device and the mobile device are communicatively coupled through a direct wired connection.

3. The method of claim 2 , wherein the direct wired connection comprises a universal serial bus (USB).

4. The method of claim 1 , wherein:

the display of the mobile device is a touch-sensitive display; and

the user-interaction data corresponds to a gesture detected on the touch-sensitive display.

5. The method of claim 1 , further comprising, at the electronic device:

before sending the one or more images and the initial values of display parameters to the mobile device, performing a handshake with the mobile device to identify the mobile device.

6. The method of claim 1 , wherein:

the one or more images comprise a plurality of images; and

respective images of the plurality of images correspond to respective layers of the user interface.

7. The method of claim 6 , wherein:

sending the initial values of display parameters comprises sending a layer tree to the mobile device, wherein the layer tree specifies the initial values of display parameters for each image of the plurality of images using a respective identifier for each image of the plurality of images; and

sending the one or more images comprises, for each image of the plurality of images, sending a respective image file tagged with the respective identifier for the image.

8. The method of claim 7 , further comprising generating a respective hash value for each image of the plurality of images using a hashing function, wherein the respective identifier for each image of the plurality of images is the respective hash value.

9. The method of claim 8 , further comprising using the hash values of the plurality of images to synchronize images between the electronic device and the mobile device.

10. The method of claim 7 , wherein sending the layer tree is performed before sending the one or more images.

11. The method of claim 7 , further comprising sending a message to the mobile device to delete a layer, wherein the message specifies the identifier for the image corresponding to the layer.

12. The method of claim 1 , further comprising:

determining that the user-interaction data corresponds to a scroll operation for a respective image of the one or more images;

repeatedly updating y-dimensional position values in accordance with the scroll operation; and

repeatedly sending the updated y-dimensional position values to the mobile device in accordance with the scroll operation.

13. The method of claim 12 , further comprising:

after sending an updated y-dimensional position value, waiting for a confirmation of receipt from the mobile device; and

sending a successive updated y-dimensional position value after receiving the confirmation of receipt.

14. The method of claim 1 , wherein:

the instructions comprise instructions for a user-interface-composition utility; and

receiving the user inputs comprises, in the user-interface-composition utility:

receiving a user input selecting a respective image patch for each image of the one or more images;

receiving a user input selecting a respective layer patch of each image of the one or more images; and

for each image of the one or more images, receiving a respective user input coupling a respective image output of the respective image patch to a respective image input of the respective layer patch.

15. The method of claim 14 , wherein receiving the user inputs further comprises:

receiving a user input selecting an animation patch; and

receiving user inputs coupling the animation patch between the image output of a respective image patch and a display-parameter input of a respective layer patch;

wherein the animation patch corresponds to a predefined animation.

16. The method of claim 14 , wherein receiving the user inputs further comprises:

receiving a user input selecting an interaction patch, the interaction patch corresponding to one or more predefined user interactions with the mobile device;

receiving a user input selecting a transition patch;

receiving a user input coupling the interaction patch to the transition patch, the transition patch to generate output values corresponding to a user interaction with the mobile device; and

receiving a user input coupling the transition patch with a layer patch, the transition patch to provide the output values to a display-parameter input of the layer patch.

17. An electronic device, comprising:

one or more processors; and

memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions for:

receiving user inputs defining a prototype of an application for the mobile device;

sending one or more images for the prototype of the application to the mobile device for display in a user interface of the application;

sending initial values of display parameters for each of the one or more images to the mobile device, including an initial value of a first display parameter for a first image, wherein the first display parameter is selected from the group consisting of: an anchor point for an image; an x-dimensional position value, a y-dimensional position value, a z-dimensional position value, an x-dimensional rotation value, a y-dimensional rotation value, a z-dimensional rotation value, a width, a height, an opacity, a fill color, and a scale;

receiving user-interaction data from the mobile device corresponding to interaction of a user with the mobile device while the mobile device is displaying the first image of the one or more images in accordance with the initial value of the first display parameter for the first image;

determining an updated value of the first display parameter for the first image, in accordance with the user-interaction data; and

sending the updated value of the first display parameter to the mobile device, wherein the mobile device is to display the first image in accordance with the updated value of the first display parameter.

18. A non-transitory computer-readable storage medium storing one or more programs for execution by one or more processors of an electronic device, the one or more programs including instructions for:

receiving user inputs defining a prototype of an application for the mobile device;

sending one or more images for the prototype of the application to the mobile device for display in a user interface of the application;

sending initial values of display parameters for each of the one or more images to the mobile device, including an initial value of a first display parameter for a first image, wherein the first display parameter is selected from the group consisting of: an anchor point for an image; an x-dimensional position value, a y-dimensional position value, a z-dimensional position value, an x-dimensional rotation value, a y-dimensional rotation value, a z-dimensional rotation value, a width, a height, an opacity, a fill color, and a scale;

receiving user-interaction data from the mobile device corresponding to interaction of a user with the mobile device while the mobile device is displaying the first image of the one or more images in accordance with the initial value of the first display parameter for the first image;

determining an updated value of the first display parameter for the first image, in accordance with the user-interaction data; and

sending the updated value of the first display parameter to the mobile device, wherein the mobile device is to display the first image in accordance with the updated value of the first display parameter.

Assignments (2)
CHANGE OF NAME Recorded Dec 16, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058520/0535 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2016
From: WALKIN, BRANDON
To: FACEBOOK, INC.
Reel/Frame 037504/0431 →
Continuity (1)
Related Publication 20170109017A1 · Apr 20, 2017