IP Library Granted Patent US 10,176,192
Granted Patent B2
US 10,176,192 · App. 15/069,397 · Granted Jan 8, 2019

System and method for detecting and integrating with native applications enabled for web-based storage

Inventors: Michael Jeffrey Procopio (Boulder, CO); Tobias Thierer (Glebe, AU); Reuben Kan (Epping, AU); Ivan Young Lee (Boulder, CO); Eric Benson Schoeffler (Boulder, CO); Brian Lewis Cairns (Boulder, CO)
Assignee: Google LLC
G06F17/30203G06F17/30106G06F17/30283G06F21/6218H04L63/0876H04L67/1097H04L67/303H04L67/34G06F17/30067G06F17/30194G06F17/30233
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,176,192
App. No.
15/069,397
Granted
Jan 8, 2019
Kind
B2
Abstract

A cloud storage system provides remote access to a file associated with the cloud storage system. In response to a request to access the file, the cloud storage system identifies applications available to the request generator and capable of accessing the file, which may include both online web-based applications and applications installed on a device with which the user is accessing the file. The cloud storage system determines an application type of an identified application, and provides file access to the identified application based on the application type.

Claims (61)

1. A computer-implemented method of providing access to a file on a cloud storage system, comprising:

receiving a request from a request transmitting device to access a file on the cloud storage system, the request transmitting device being external to a cloud storage engine in the cloud storage system;

identifying a file type of the file;

identifying at least one application capable of accessing the file based on the file type, wherein the at least one application comprises an application installed at the request transmitting device or an online web-based application capable of accessing the file with the identified file type;

determining whether the at least one application is cloud-capable of accessing the file stored on the cloud storage engine in the cloud storage system based on an application type of the at least one application;

providing access to the file to the at least one application responsive to determining that the at least one application is cloud-capable of accessing the file stored on the cloud storage engine in the cloud storage system; and

providing a copy of the file to the request transmitting device for the at least one application to access the file, responsive to determining that the at least one application is not cloud-capable of accessing the file stored on the cloud storage engine in the cloud storage system.

2. The method of claim 1 , further comprising:

identifying the request transmitting device, wherein the request transmitting device is a user associated with the file, a user who generated the request, or a device which transmitted the request.

3. The method of claim 1 , further comprising:

determining whether the at least one identified application is available to the request transmitting device.

4. The method of claim 1 , wherein the at least one identified application is cloud-capable when the at least one identified application is configured to access a cloud storage engine of the cloud storage system.

5. The method of claim 1 , further comprising:

in response to determining that the at least one identified application is not available to the request transmitting device:

providing an option to gain access to the at least one identified application,

in response to receiving a selection of the option, determining an application type of the at least one identified application, wherein the application type indicates whether the at least one identified application is capable of accessing the file through the cloud storage system, and:

providing file access information to the at least one identified application if the at least one identified application is capable of accessing the file through the cloud storage system, or

providing a copy of the file to the at least one identified application if the at least one identified application is not capable of accessing the file through the cloud storage system.

6. The method of claim 1 , further comprising:

querying a device associated with the request transmitting device for a list of applications installed on the device.

7. The method of claim 1 , further comprising:

searching a list of applications associated with the request transmitting device, wherein the list is stored on the cloud storage system.

8. The method of claim 1 , wherein the at least one identified application includes a web-based application associated with the request, or a predetermined default application associated with the file type.

9. The method of claim 1 , wherein the file type is identified by a Multipurpose Internet Mail Extension (MIME) type associated with the file.

10. The method of claim 1 , wherein the application type indicates whether the application is installed on a user device, or whether the application is an online web-based application.

11. A cloud storage system for providing access to a file, the cloud storage system comprising:

a processor;

a file database communicatively coupled to the processor, the file database for storing a plurality of files and metadata associated with each of the plurality of files; and

a user database communicatively coupled to the processor, the user database for storing information associating at least one user with at least one file,

wherein the processor is configured to:

receive a request from a request transmitting device to access a file in the file database, the request transmitting device being external to a cloud storage engine in the cloud storage system;

identify a file type of the file;

identify at least one application capable of accessing the file based on the file type, wherein the at least one application comprises an application installed at the request transmitting device or an online web-based application capable of accessing the file with the identified file type;

determine whether the at least one application is cloud-capable of accessing the file stored in the file database on the cloud storage system based on an application type of the at least one application;

provide access to the file to the at least one application responsive to determining that the at least one application is cloud-capable of accessing the file stored in the file database; and

provide a copy of the file the request transmitting device for the at least one application to access the file, responsive to determining that the at least one application is not cloud-capable of accessing the file stored in the file database.

12. The system of claim 11 , wherein the processor is further configured to:

identify the request transmitting device, wherein the request transmitting device is a user associated with the file, a user who generated the request, or a device which transmitted the request.

13. The system of claim 11 , wherein the processor is further configured to:

determine whether the at least one identified application is available to the request transmitting device.

14. The system of claim 11 , wherein the at least one identified application is cloud-capable when the at least one identified application is configured to access a cloud storage engine of the cloud storage system.

15. The system of claim 11 , wherein the processor is further configured to:

in response to determining that the at least one identified application is not available to the request transmitting device:

provide an option to gain access to the at least one identified application,

in response to receiving a selection of the option, determine an application type of the at least one identified application, wherein the application type indicates whether the at least one identified application is capable of accessing the file through the cloud storage system, and:

provide file access information to the at least one identified application if the at least one identified application is capable of accessing the file through the cloud storage system, or

provide a copy of the file to the at least one identified application if the at least one identified application is not capable of accessing the file through the cloud storage system.

16. The system of claim 11 , wherein the processor is further configured to:

query a device associated with the request transmitting device for a list of applications installed on the device.

17. The system of claim 11 , wherein the processor is further configured to:

search a list of applications associated with the request transmitting device, wherein the list is stored on the cloud storage system.

18. The system of claim 11 , wherein the at least one identified application includes a web-based application associated with the request transmitting device, or a predetermined default application associated with the file type.

19. The system of claim 11 , wherein the file type is identified by a Multipurpose Internet Mail Extension (MIME) type associated with the file.

20. The system of claim 11 , wherein the application type indicates whether the application is installed on a user device, or whether the application is an online web-based application.

21. Non-transitory computer-readable media having recorded thereon instructions, that when executed by one or more computer processors, perform operations comprising:

receiving a request from a request transmitting device to access a file on the cloud storage system, the request transmitting device being external to a cloud storage engine in the cloud storage system;

identifying a file type of the file;

identifying at least one application capable of accessing the file based on the file type, wherein the at least one application comprises an application installed at the request transmitting device or an online web-based application capable of accessing the file with the identified file type;

determining whether the at least one application is cloud-capable of accessing the file stored on the cloud storage engine in the cloud storage system based on an application type of the at least one application;

providing access to the file to the at least one application responsive to determining that the at least one application is cloud-capable of accessing the file stored on the cloud storage engine in the cloud storage system; and

providing a copy of the file to the request transmitting device for the at least one application to access the file, responsive to determining that the at least one application is not cloud-capable of accessing the file stored on the cloud storage engine in the cloud storage system.

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 Mar 14, 2016
From: PROCOPIO, MICHAEL JEFFREY; THIERER, TOBIAS; KAN, REUBEN; LEE, IVAN YOUNG; SCHOEFFLER, ERIC BENSON; CAIRNS, BRIAN LEWIS
To: GOOGLE INC.
Reel/Frame 038081/0987 →
Continuity (4)
Continuation 13787187 · Mar 6, 2013
Provisional Application 61664627 · Jun 26, 2012
Provisional Application 61664651 · Jun 26, 2012
Related Publication 20160196280A1 · Jul 7, 2016