Patent ID: 8751493

Claim:
A storage server operatively coupled to a communication network, the storage server comprising: a software application store including software application descriptions, each software application description having app ID, application title, and supported file types, the software application descriptions being associated with either the storage service provider or a third-party developer; a user data store, including: files associated with users, respective files within the user data store having a file identifier, a file type identifier, and data which is binary encoded in accordance with a file type, a list of app IDs identifying user installed software applications from the software application store for a user; and file access user preferences specifying default applications to open files, including app IDs of particular user installed software applications; and a processor configured to: receive a file identifier for a specific requested file at the storage service over the communication network from a user operating a computing device; obtain the file type identifier from the user data store for the file associated with the received file identifier; query the software application store with the obtained file type identifier to determine a list of app IDs for software applications that support the obtained file type; determine an application to open the specific requested file in response to matching an app ID contained in the file access user preferences with the selected list of app IDs for software applications that support the file type; and open the specific requested file from the user data store utilizing the determined application to open the specific requested file.