IP Library Granted Patent US 10,078,740
Granted Patent B2
US 10,078,740 · App. 14/884,978 · Granted Sep 18, 2018

Method to fetch functionality across applications

Inventors: Guangqiang Zhang (Sunnyvale, CA); Manuel Frank Martinez (San Francisco, CA); Zhiwei Guan (Palo Alto, CA)
Assignee: Google LLC
G06F21/31G06F3/0481G06F3/16G06F9/4451G06F9/451H04L67/125H04L67/38
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,078,740
App. No.
14/884,978
Granted
Sep 18, 2018
Kind
B2
Abstract

A method and system for fetching functionalities across various user interfaces and providing, for execution, instructions to invoke a function that is not present at a particular user interface are disclosed. The method implemented in the system can include receiving i) data identifying a first function associated with a first user interface, and ii) instructions for invoking the first function in one or more user interfaces; receiving, from a second user interface, a request for invoking the first function; selecting, using a processor, an instruction configured to invoke the first function in the second user interface; transmitting the instruction to the second user interface; and invoking, using the transmitted instruction, the first function in an application associated with the second user interface.

Claims (72)

1. A computer-implemented method comprising:

receiving i) data identifying a first function associated with a first user interface, and ii) instructions for invoking the first function in one or more user interfaces;

receiving, from a second user interface that is different than the first user interface, a request for invoking the first function;

determining, by one or more processors, whether the second user interface is authorized to execute the first function and whether user credentials of a user associated with the second user interface are valid;

in response to determining that the second user interface is authorized to execute the first function and the user credentials of the user associated with the second user interface are valid, selecting, using the one or more processors, an instruction configured to invoke the first function in the second user interface;

transmitting the instruction to the second user interface; and

invoking, using the transmitted instruction, the first function in an application associated with the second user interface.

2. The computer-implemented method of claim 1 , wherein:

receiving the request comprises receiving the user credentials of the user associated with the second user interface; and

the one or more user interfaces comprise applications, devices, and entries to the applications associated with the user.

3. The computer-implemented method of claim 1 , wherein:

the second user interface is associated with a plurality of functions arranged according to a priority order;

the first function has the highest priority in the priority order of the plurality of functions associated with the second user interface; and

the priority order is based on at least one of a frequency of use of the first function by a user, a user customization, a user status, a similarity threshold between the first user interface and the second user interface, and a design choice of the second user interface.

4. The computer-implemented method of claim 1 , wherein receiving the request for invoking the first function comprises receiving a user selection to invoke the first function via the second user interface.

5. The computer-implemented method of claim 1 , further comprising:

transmitting data associated with network connectivity along with the instruction configured to invoke the first function in the second user interface,

wherein invoking the first function in the application associated with the second user interface comprises:

invoking the first function using a first execution based on the data associated with network connectivity indicating a first type of network connection, and

invoking the first function using a second execution based on the data associated with network connectivity indicating a second type of network connection.

6. The computer-implemented method of claim 1 , wherein determining whether the second user interface is authorized to execute the first function and whether user credentials of a user associated with the second user interface are valid comprises:

determining that the user associated with the second user interface is authorized to access the first function.

7. The computer-implemented method of claim 1 , wherein:

the first function includes a function not listed under a list of functions associated with the second user interface before receiving the request for invoking the first function.

8. A non-transitory computer-readable storage medium comprising instructions, which, when executed by one or more computers, cause the one or more computers to perform actions comprising:

receiving i) data identifying a first function associated with a first user interface, and ii) instructions for invoking the first function in one or more user interfaces;

receiving, from a second user interface that is different than the first user interface, a request for invoking the first function;

determining whether the second user interface is authorized to execute the first function and whether user credentials of a user associated with the second user interface are valid;

in response to determining that the second user interface is authorized to execute the first function and the user credentials of the user associated with the second user interface are valid, selecting, using the one or more computers, an instruction configured to invoke the first function in the second user interface;

transmitting the instruction to the second user interface; and

invoking, using the transmitted instruction, the first function in an application associated with the second user interface.

9. The non-transitory computer-readable storage medium of claim 8 , wherein:

receiving the request comprises receiving the user credentials of the user associated with the second user interface; and

the one or more user interfaces comprise applications, devices, and entries to the applications associated with the user.

10. The non-transitory computer-readable storage medium of claim 8 , wherein:

the second user interface is associated with a plurality of functions arranged according to a priority order;

the first function has the highest priority in the priority order of the plurality of functions associated with the second user interface; and

the priority order is based on at least one of a frequency of use of the first function by a user, a user customization, a user status, a similarity threshold between the first user interface and the second user interface, and a design choice of the second user interface.

11. The non-transitory computer-readable storage medium of claim 8 , wherein receiving the request for invoking the first function comprises receiving a user selection to invoke the first function via the second user interface.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the one or more computers are further configured to perform actions comprising:

transmitting data associated with network connectivity along with the instruction configured to invoke the first function in the second user interface, and

wherein invoking the first function in the application associated with the second user interface comprises:

invoking the first function using a first execution based on the data associated with network connectivity indicating a first type of network connection, and

invoking the first function using a second execution based on the data associated with network connectivity indicating a second type of network connection.

13. The non-transitory computer-readable storage medium of claim 8 , wherein determining whether the second user interface is authorized to execute the first function and whether user credentials of a user associated with the second user interface are valid comprises:

determining that the user associated with the second user interface is authorized to access the first function.

14. The non-transitory computer-readable storage medium of claim 8 , wherein:

the first function includes a function not listed under a list of functions associated with the second user interface before receiving the request for invoking the first function.

15. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable and when executed by one or more computers, cause the one or more computers to perform actions comprising:

receiving i) data identifying a first function associated with a first user interface, and ii) instructions for invoking the first function in one or more user interfaces;

receiving, from a second user interface that is different than the first user interface, a request for invoking the first function;

determining whether the second user interface is authorized to execute the first function and whether user credentials of a user associated with the second user interface are valid;

in response to determining that the second user interface is authorized to execute the first function and the user credentials of the user associated with the second user interface are valid, selecting, using the one or more computers, an instruction configured to invoke the first function in the second user interface;

transmitting the instruction to the second user interface; and

invoking, using the transmitted instruction, the first function in an application associated with the second user interface.

16. The system of claim 15 , wherein:

receiving the request comprises receiving the user credentials of the user associated with the second user interface; and

the one or more user interfaces comprise applications, devices, and entries to the applications associated with the user.

17. The system of claim 15 , wherein:

the second user interface is associated with a plurality of functions arranged according to a priority order;

the first function has the highest priority in the priority order of the plurality of functions associated with the second user interface; and

the priority order is based on at least one of a frequency of use of the first function by a user, a user customization, a user status, a similarity threshold between the first user interface and the second user interface, and a design choice of the second user interface.

18. The system of claim 15 , wherein receiving the request for invoking the first function comprises receiving a user selection to invoke the first function via the second user interface.

19. The system of claim 15 , wherein the one or more computers are further configured to perform actions comprising:

transmitting data associated with network connectivity along with the instruction configured to invoke the first function in the second user interface, and

wherein invoking the first function in the application associated with the second user interface comprises:

invoking the first function using a first execution based on the data associated with network connectivity indicating a first type of network connection, and

invoking the first function using a second execution based on the data associated with network connectivity indicating a second type of network connection.

20. The system of claim 15 , wherein:

determining whether the second user interface is authorized to execute the first function and whether user credentials of a user associated with the second user interface are valid comprises determining that the user associated with the second user interface is authorized to access the first function; and

the first function includes a function not listed under a list of functions associated with the second user interface before receiving the request for invoking the first function.

Assignments (2)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044129/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2015
From: ZHANG, GUANGQIANG; MARTINEZ, MANUEL FRANK; GUAN, ZHIWEI
To: GOOGLE INC.
Reel/Frame 036808/0740 →
Continuity (2)
Provisional Application 62086076 · Dec 1, 2014
Related Publication 20160154557A1 · Jun 2, 2016