US2017257442A1PendingUtilityA1

Federated Application Services

Assignee: FACEBOOK INCPriority: Jan 9, 2015Filed: May 19, 2017Published: Sep 7, 2017
Est. expiryJan 9, 2035(~8.4 yrs left)· nominal 20-yr term from priority
H04L 67/303H04L 67/26H04L 67/16H04L 67/55H04L 67/51
46
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In one embodiment, a method includes receiving a request from an application for access to a service. The application is one of a number of applications that each includes software for accessing the service. The method includes selecting one of the applications to use to access the service, and providing the requesting application access to the service through the selected application's software for accessing the service.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
 receive, from one of a plurality of applications of a client device, a request for access to a service, each of the plurality of applications comprising software for accessing the service;   select one of the plurality of applications to provide access to the service; and   provide the requesting application access to the service through the selected application's software for accessing the service.   
     
     
         2 . The media of  claim 1 , wherein the service comprises a push service. 
     
     
         3 . The media of  claim 1 , wherein one or more of the plurality of applications further comprise the software that is operable when executed to:
 receive a request from an application for access to a service, the application comprising one of a plurality of applications that each comprises software for accessing the service;   select one of the plurality of applications to use to access the service; and   provide the requesting application access to the service through the application determined to be used access the service.   
     
     
         4 . The media of  claim 1 , wherein the software that is operable when executed to select one of the plurality of applications to use to access the service comprises software that is further operable when executed to determine, based on one or more criteria, one of the plurality of application to use to access the service. 
     
     
         5 . The media of  claim 4 , wherein the criteria comprises information identifying a protocol version of the software for accessing the service. 
     
     
         6 . The media of  claim 4 , wherein the criteria comprises an attribute of the one of the plurality of applications. 
     
     
         7 . The media of  claim 6 , wherein the attribute comprises one or more permissions to access data on a client device on which the one of the plurality of applications resides. 
     
     
         8 . The media of  claim 4 , wherein the criteria comprises information identifying a version of the software for accessing the service. 
     
     
         9 . The media of  claim 4 , wherein:
 the criteria comprise:
 first criterion comprising information identifying a protocol version of the software for accessing the service; 
 second criterion comprising an attribute of the one of the plurality of applications; and 
 third criterion comprising information identifying a version of the software for accessing the service; and 
   the first criterion takes precedence over the second criterion, and the second criterion takes precedence over the third criterion.   
     
     
         10 . The media of  claim 1 , wherein the software that is operable when executed to provide the requesting application access to the service comprises software that is further operable when executed to:
 determine whether the application to be used to access the service is running at least in the background on a client device; and   when the application is not running at least in the background on the client device, cause at least the portion of the application comprising the software for accessing the service to be executed by the client device.   
     
     
         11 . The media of  claim 10 , wherein the software that is operable when executed to cause at least the portion of the application comprising the software for accessing the service to be executed by the client device comprises software that is further operable when executed to cause only the portion of the application comprising the software for accessing the service to be executed by the client device. 
     
     
         12 . The media of  claim 1 , wherein the software that is operable when executed to select one of the plurality of applications to use to access the service comprises software that is further operable when executed to:
 submit a request to access the service to a selection service for selecting one of the plurality of applications to use to access the service; and   receive from the selection service an identification of the selected application.   
     
     
         13 . The method of  claim 12 , wherein each application further comprises an instance of the selection service; and
 the software that is operable when executed to submit a request to access the service to a selection service comprises software that is further operable when executed to:
 select one of the instances of the selection service; and 
 submit the request to the selected instance of the selection service. 
   
     
     
         14 . The method of  claim 13 , wherein the software that is operable when executed to select one of the instances of the selection service comprises software that is further operable when executed to select, based on one or more criteria, the instance of the selection service, the criteria comprising one or more of:
 first criterion comprising information identifying a protocol version of the instance of the selection service;   second criterion comprising an attribute of the application comprising the instance of the selection service; and   third criterion comprising information identifying a version of the instance of the selection service.   
     
     
         15 . The media of  claim 1 , wherein the software that is operable when executed to receive a request from an application for access to a service comprises software that is further operable when executed to receive a notification that the application is running on a client device. 
     
     
         16 . The media of  claim 1 , wherein the software that is operable when executed to receive a request from an application for access to a service comprises software that is further operable when executed to receive a notification that one of the plurality of applications was installed on a client device. 
     
     
         17 . The media of  claim 1 , wherein the software that is operable when executed to receive a request from an application for access to a service comprises software that is further operable when executed to receive a notification that an update for one of the plurality of applications was installed on a client device. 
     
     
         18 . A method comprising:
 by a computing device, receiving, from one of a plurality of applications of a client device, a request for access to a service, each of the plurality of applications comprising software for accessing the service;   by a computing device, selecting one of the plurality of applications to use to access the service; and   by a computing device, providing the requesting application access to the service through the selected application's software for accessing the service.   
     
     
         19 . The method of  claim 18 , wherein, selecting one of the plurality of applications to use to access the service comprises determining, based on one or more criteria, one of the plurality of application to use to access the service, the criteria comprising:
 first criterion comprising information identifying a protocol version of the software for accessing the service;   second criterion comprising an attribute of the one of the plurality of applications; and   third criterion comprising information identifying a version of the software for accessing the service, wherein the first criterion takes precedence over the second criterion, and the second criterion takes precedence over the third criterion.   
     
     
         20 . A system comprising:
 one or more processors; and a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to:
 receive, from one of a plurality of applications of a client device, a request for access to a service, each of the plurality of applications comprising software for accessing the service; 
 select one of the plurality of applications to provide access to the service; and 
 provide the requesting application access to the service through the selected application's software for accessing the service.

Join the waitlist — get patent alerts

Track US2017257442A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.