public abstract class GoogleApi extends Object
implements HasApiKey<O extends Api.ApiOptions>

Base class for Google API entry points. API clients based on this class manage the connection between your app and Google Play services (as opposed to GoogleApiClient-based calls).

GoogleApi-based instances enqueue calls until a connection is made to Google Play services, and then execute them in order. The instances are:

  • "Cheap" to create
  • Thread-safe
  • Automatically deduplicated
  • Automatically timed-out and reconnected when necessary

GoogleApi abstracts the connection to Play services, so callers do not need to implement GoogleApiClient.ConnectionCallbacks.

If the user needs to install or update Google Play services, GoogleApi will prompt the user to do so and enqueue API calls until the issue is resolved. If GoogleApi was initialized with an Activity it will create a foreground prompt, otherwise it will display a system notification. If the user cancels the resolution or some other issue arises, pending API calls will be fail with an ApiException and status code CommonStatusCodes.API_NOT_CONNECTED.

If GoogleApiAvailability.isGooglePlayServicesAvailable(Context) returns true, GoogleApi instances will not show any UI to resolve connection failures.

Inherited Method Summary